小弟在用Smartupload上传图片时出现了这个问题,我的上传代码是在servlet层操作的,我的想法是想将图片上传到指定的文件夹,然后将路径存入数据库。希望各位大虾可以帮助小弟,小弟现在在做实训项目,所以很急,在此小弟拜求了
type Exception reportmessagedescription The server encountered an internal error () that prevented it from fulfilling this request.exceptionjavax.servlet.ServletException: Error instantiating servlet class com.OlineBookStores.servlet.BookAction
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
java.lang.Thread.run(Unknown Source)root causejava.lang.NoClassDefFoundError: com/jspsmart/upload/SmartUploadException
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
java.lang.Thread.run(Unknown Source)note The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs.
我的上传代码是
//图书封面
SmartUpload su=new SmartUpload();
final int MAXFILESIZE=100000; //上传文件大小限制
String errMsg=null; //错误信息
boolean err=false; //错误标志
String fileName = "";
String fileType =""; String url="OlineBookStores/upload/"; //应保证在根目录中有此目录的存在
su.initialize(this.getServletConfig(),request,response);//初始化
try
{
final String upFileType="jpg|JPG|GIF|gif|bmp|BMP"; //上传文件类型
// String image=request.getParameter("bookImage");
su.upload();
int count = su.getSize();
if(count>MAXFILESIZE)
{
out.print ("<script>alert('上传失败!文件大小:"+count/1024+"K超出了限定的范围(最大"+ MAXFILESIZE/1024+"K)');this.history.go(-1);</script>");
}
else
{
com.jspsmart.upload.File myFile = su.getFiles().getFile(0);
if (!myFile.isMissing()) {
String myFileName=myFile.getFileName();//得到文件名
fileType=myFile.getFileExt();//得到文件扩展名
fileType=fileType.toLowerCase(); //将扩展名转换成小写
if (upFileType.indexOf(fileType)==-1){
err=true;
errMsg="文件"+myFileName+"上传失败!只允许上传以下格式的文件:"+upFileType;
}
}
if(err==false)
{
Calendar calendar = Calendar.getInstance();
String filename = String.valueOf(calendar.getTimeInMillis());
String saveurl=request.getRequestDispatcher("/")+url;
saveurl+=filename+"."+fileType; //保存路径
myFile.saveAs(saveurl,su.SAVE_PHYSICAL);
// getBookInfor.setBookImages(saveurl);
}
}
}
catch(SmartUploadException e)
{
System.out.println(e); }
type Exception reportmessagedescription The server encountered an internal error () that prevented it from fulfilling this request.exceptionjavax.servlet.ServletException: Error instantiating servlet class com.OlineBookStores.servlet.BookAction
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
java.lang.Thread.run(Unknown Source)root causejava.lang.NoClassDefFoundError: com/jspsmart/upload/SmartUploadException
java.lang.Class.getDeclaredConstructors0(Native Method)
java.lang.Class.privateGetDeclaredConstructors(Unknown Source)
java.lang.Class.getConstructor0(Unknown Source)
java.lang.Class.newInstance0(Unknown Source)
java.lang.Class.newInstance(Unknown Source)
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:104)
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:216)
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
java.lang.Thread.run(Unknown Source)note The full stack trace of the root cause is available in the Apache Tomcat/6.0.10 logs.
我的上传代码是
//图书封面
SmartUpload su=new SmartUpload();
final int MAXFILESIZE=100000; //上传文件大小限制
String errMsg=null; //错误信息
boolean err=false; //错误标志
String fileName = "";
String fileType =""; String url="OlineBookStores/upload/"; //应保证在根目录中有此目录的存在
su.initialize(this.getServletConfig(),request,response);//初始化
try
{
final String upFileType="jpg|JPG|GIF|gif|bmp|BMP"; //上传文件类型
// String image=request.getParameter("bookImage");
su.upload();
int count = su.getSize();
if(count>MAXFILESIZE)
{
out.print ("<script>alert('上传失败!文件大小:"+count/1024+"K超出了限定的范围(最大"+ MAXFILESIZE/1024+"K)');this.history.go(-1);</script>");
}
else
{
com.jspsmart.upload.File myFile = su.getFiles().getFile(0);
if (!myFile.isMissing()) {
String myFileName=myFile.getFileName();//得到文件名
fileType=myFile.getFileExt();//得到文件扩展名
fileType=fileType.toLowerCase(); //将扩展名转换成小写
if (upFileType.indexOf(fileType)==-1){
err=true;
errMsg="文件"+myFileName+"上传失败!只允许上传以下格式的文件:"+upFileType;
}
}
if(err==false)
{
Calendar calendar = Calendar.getInstance();
String filename = String.valueOf(calendar.getTimeInMillis());
String saveurl=request.getRequestDispatcher("/")+url;
saveurl+=filename+"."+fileType; //保存路径
myFile.saveAs(saveurl,su.SAVE_PHYSICAL);
// getBookInfor.setBookImages(saveurl);
}
}
}
catch(SmartUploadException e)
{
System.out.println(e); }
解决方案 »
- SSH框架下自动启动定时任务
- SSH开发项目 业务工作流资料库讨论
- 麻烦各位编程高手帮忙看一下,谢谢了
- 我是個菜裊幫個忙 看看是什么原因
- 关于Webwork中Ognl栈的读取问题
- 想找个支付系统,有这样的吗?
- spring 事务一致性问题
- 谁看过hibernate的源码?请问它是怎么把一个对象存入数据库的?
- jquery里.ajax({ .......... dataType: "json" }) 里面dataType: "json"的问题
- Springboot 加载不到数据库驱动
- Java都能操作播放哪些声音文件?wav、midi、mp3。。。
- FreeMarker Template.process 不输出的做法
你有没有把jspsmartupload.jar包添加到工程里