由于struts框架对request对象做了封装,原来处理上传图片的upload_json.jsp文件无法使用了,于是对kindeditor中处理上传图片的upload_json.jsp文件进行重写,通过多次测试后,成功实现了图片的上传。
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page import="java.util.*,java.io.*"%>
<%@ page import="java.text.SimpleDateFormat"%>
<%@ page import="org.apache.commons.fileupload.*"%>
<%@ page import="org.apache.commons.fileupload.disk.*"%>
<%@ page import="org.apache.commons.fileupload.servlet.*"%>
<%@ page import="com.opensymphony.xwork2.ActionContext"%>
<%@ page import="org.apache.struts2.dispatcher.multipart.MultiPartRequestWrapper"%>
<%@ page import="org.json.simple.*"%>
<%
//文件保存目录路径 img_upload是服务器存储上传图片的目录名
String savePath = request.getSession().getServletContext().getRealPath("/")+ "img_upload/";
//文件保存目录URL
String saveUrl = request.getContextPath() + "/img_upload/";
//定义允许上传的文件扩展名
String[] fileTypes = new String[] { "gif", "jpg", "jpeg", "png","bmp" };
//允许最大上传文件大小
long maxSize = 1024000;
//Struts2 请求 包装过滤器
MultiPartRequestWrapper wrapper = (MultiPartRequestWrapper) request;
//获得上传的文件名
String fileName = wrapper.getFileNames("imgFile")[0];
//获得文件过滤器
File file = wrapper.getFiles("imgFile")[0];
//得到上传文件的扩展名
String fileExt = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase();
//检查扩展名
if (!Arrays.<String> asList(fileTypes).contains(fileExt)) {
out.println(getError("上传文件扩展名是不允许的扩展名。"));
return;
}
//检查文件大小
if (file.length() > maxSize) {
out.println(getError("上传文件大小超过限制。"));
return;
}
//检查目录
File uploadDir = new File(savePath);
if (!uploadDir.isDirectory()) {
out.println(getError("上传目录不存在。"));
return;
}
//检查目录写入权限
if (!uploadDir.canWrite()) {
out.println(getError("上传目录没有写入权限。"));
return;
}
//重构上传图片的名称
SimpleDateFormat df = new SimpleDateFormat("yyyyMMddHHmmss");
String newImgName = df.format(new Date()) + "_"+ new Random().nextInt(1000) + "." + fileExt;
//设置 KE 中的图片文件地址
String newFileName = request.getScheme() + "://"+ request.getServerName() + ":" + request.getServerPort()
+ saveUrl + newImgName;
byte[] buffer = new byte[1024];
//获取文件输出流
FileOutputStream fos = new FileOutputStream(savePath + newImgName);
//获取内存中当前文件输入流
InputStream in = new FileInputStream(file);
try {
int num = 0;
while ((num = in.read(buffer)) > 0) {
fos.write(buffer, 0, num);
}
} catch (Exception e) {
e.printStackTrace(System.err);
} finally {
in.close();
fos.close();
}
//发送给 KE
JSONObject obj = new JSONObject();
obj.put("error", 0);
obj.put("url", saveUrl + newImgName);
out.println(obj.toJSONString());
%>
<%!private String getError(String message) {
JSONObject obj = new JSONObject();
obj.put("error", 1);
obj.put("message", message);
return obj.toJSONString();
}
%>
波比源码 » kindeditor与Struts2框架整合无法上传图片的问题
order levaquin 250mg without prescription levofloxacin 250mg generic
buy ampicillin 500mg online cheap ampicillin 500mg cost erythromycin 250mg uk
generic lamotrigine purchase lamictal generic retin for sale online
cost accutane 20mg amoxil 250mg pills azithromycin 500mg generic
indomethacin ca trimox brand order trimox 250mg without prescription
cialis 20mg kaufen ohne rezept tadalafil 20mg kaufen sildenafil 50mg ohne rezept
accutane online order accutane 10mg ivermectina 6 mg
ramipril pills cheap astelin 10 ml azelastine online buy
terazosin 5mg for sale azulfidine 500 mg generic azulfidine 500 mg oral
oral benicar order generic olmesartan diamox 250 mg cost
molnunat 200 mg oral prevacid brand buy generic lansoprazole 15mg
zoloft 100mg cost order sertraline sale buy viagra 50mg sale
tadalafil for women buy prozac 40mg generic viagra for sale
cheap cialis generic betamethasone 20gm for sale buy anafranil 50mg for sale
buy sporanox 100mg for sale buy tindamax 500mg pill order tinidazole 300mg generic
cheap glucophage 1000mg lipitor 10mg without prescription generic cialis 5mg
norvasc 5mg usa purchase amlodipine sale tadalafil 5mg generic
buy sildenafil 100mg pills buy sildenafil 50mg order lisinopril 5mg online
oral omeprazole 10mg real money spins online gambling addiction
metoprolol pill buy tenormin pills levitra 10mg sale
writing paper online online casino slots no download poker online free
order levitra 20mg purchase levitra generic methylprednisolone 8mg over the counter
tadalafil online order order tadalafil 5mg generic order sildenafil 100mg pill
buy baclofen generic zanaflex cheap order toradol
buy sumatriptan 50mg pills order avodart pills brand dutasteride
buy ranitidine 150mg online mobic 7.5mg ca order celecoxib 100mg generic
order generic zocor zocor 10mg tablet order propecia
ceftin 250mg us bimatoprost online methocarbamol 500mg canada
sildalis usa estradiol 2mg usa buy lamotrigine 200mg sale
buy deltasone 20mg generic amoxil 1000mg uk buy amoxil 1000mg for sale
prednisone 20mg for sale prazosin drug buy generic vermox 100mg
buy sildenafil pill nolvadex 10mg pill buy budesonide online cheap
tretinoin gel cost oral tadalis 20mg avana drug
buy acetazolamide 250mg pill isosorbide buy online buy azathioprine 25mg for sale
order carvedilol for sale elavil without prescription order generic elavil 10mg
buy fosamax pill fosamax us ibuprofen 600mg without prescription
dapoxetine brand buy avanafil 100mg pill order motilium without prescription
Good info. Lucky me I reach on your website by accident, I bookmarked it. Metropol Halı Karaca Halı Öztekin ve Selçuklu Halı Cami Halısı ve Cami Halıları Türkiye’nin En Büyük Cami Halısı Fabrikasıyız…
purchase pamelor pills purchase panadol generic paroxetine medication
cheap pepcid 40mg tacrolimus price brand mirtazapine
doxycycline uk methylprednisolone 8mg for sale medrol over the counter
buy tadalafil 20mg for sale plavix pills order trimox 250mg without prescription
order generic cialis Buy cialis overnight delivery viagra for sale
purchase tadalafil without prescription levitra dosage buying ed pills online
metformin order glycomet medication nolvadex over the counter
prednisone 20mg brand amoxicillin online buy buy amoxil online cheap
buy generic isotretinoin order accutane generic ampicillin 500mg pill
ivermectin 3mg for sale order stromectol generic cheap deltasone
cost ondansetron ondansetron 4mg cheap trimethoprim uk
isotretinoin us order amoxicillin 1000mg generic purchase azithromycin without prescription
provigil 200mg uk lopressor 100mg cost order lopressor 50mg generic
cost avodart avodart online xenical uk
buy azathioprine generic oral telmisartan naprosyn over the counter
ditropan over the counter tacrolimus order online oxcarbazepine oral
order cefdinir 300mg pills cost pantoprazole 40mg cheap pantoprazole 40mg
buy simvastatin generic sildenafil otc sildalis for sale online
avlosulfon 100 mg for sale purchase asacol sale buy tenormin pills
uroxatral 10mg cost trazodone over the counter order diltiazem 180mg online
levofloxacin sale actigall uk purchase bupropion without prescription
coumadin 2mg pill buy zyloprim 300mg generic purchase zyloprim generic
zyrtec 5mg uk buy strattera 10mg online buy sertraline generic
cenforce 100mg uk chloroquine 250mg us buy glucophage cheap
ivermectin cost in usa deltasone for sale online accutane 20mg pill
cheap gabapentin doxycycline 100mg for sale monodox online order
buy ventolin inhalator without prescription cost ventolin inhalator purchase levothroid online
prednisolone 40mg price furosemide where to buy buy generic lasix for sale
prinivil generic purchase prilosec generic buy metoprolol 100mg pills
ranitidine buy online buy mobic 15mg pills cheap celecoxib 200mg
cefadroxil 250mg for sale finasteride over the counter proscar cost
buy generic flagyl 400mg sulfamethoxazole tablet buy keflex 125mg
order cleocin generic brand cleocin 300mg buy pills for erectile dysfunction
cost careprost order robaxin pills buy trazodone generic
oral sildenafil 100mg purchase aurogra pill sildenafil 20 mg
accutane pill order zithromax 500mg online azithromycin order online
tadalafil 10mg pill tadalafil 20mg usa brand cialis 20mg
buy azipro generic buy prednisolone without a prescription neurontin 600mg price
order lasix 40mg generic buy cheap generic lasix order generic ventolin inhalator
buy generic levitra vardenafil 20mg price hydroxychloroquine us
olmesartan uk brand benicar 20mg depakote 250mg generic
buy temovate medication order clobetasol for sale buy amiodarone 200mg pill
digoxin canada buy telmisartan for sale molnupiravir over the counter
purchase singulair pills buy avlosulfon cheap buy generic avlosulfon
amlodipine 5mg cost amlodipine 5mg pill order omeprazole 10mg sale
bactrim 960mg cost order generic cleocin 150mg generic cleocin 300mg
erythromycin 500mg cost fildena 50mg uk tamoxifen 10mg canada
order budesonide generic order generic cefuroxime 500mg bimatoprost generic
order generic aurogra 50mg buy estradiol without prescription generic estrace
retin gel brand order avanafil 100mg for sale buy avana 100mg without prescription
propecia order real viagra pharmacy prescription viagra 100mg
buy generic cialis 5mg tadalafil 20mg buy erectile dysfunction medication
order antivert 25mg for sale buy meclizine 25mg pill minocin cheap
cost imuran 50mg order generic telmisartan micardis 20mg usa
cheap ed pills order viagra 100mg generic sildenafil women
best ed drug tadalafil us tadalafil 10mg usa
hytrin 5mg over the counter how to get terazosin without a prescription order cialis online
buy albenza medication buy provera generic medroxyprogesterone 5mg pill
order ditropan 5mg pills order endep 10mg online oral alendronate
buy macrodantin 100mg online cheap ibuprofen 400mg drug nortriptyline 25 mg us
order fluvoxamine 100mg pills fluvoxamine oral cheap duloxetine 20mg
buy glipizide 10mg online glucotrol 5mg us buy betamethasone generic
buy oxcarbazepine generic order ursodiol generic buy generic ursodiol 150mg
cost decadron buy starlix cheap buy starlix 120mg for sale
seroquel over the counter escitalopram oral order escitalopram 20mg online
combivir order online lamivudine cheap buy accupril 10 mg online
zebeta 5mg over the counter pill bisoprolol 10mg terramycin medication