急救 关于SmartUpload上传图片的问题

ke0825 2009-04-06 10:07:52
我用了一个SmartUpload组件上传图片 抛出了如下异常信息 各位大哥帮小弟解决下啊
javax.servlet.ServletException: java.lang.NullPointerException
org.apache.struts.action.RequestProcessor.processException(RequestProcessor.java:535)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:433)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)

root cause

java.lang.NullPointerException
com.jspsmart.upload.SmartUpload.initialize(SmartUpload.java:153)
com.ditian.sjjy.struts.action.PresumeAction.execute(PresumeAction.java:95)
org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:431)
org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:236)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:432)
javax.servlet.http.HttpServlet.service(HttpServlet.java:710)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
/****************************************************************/
jsp页面如下
<form name="resume" method="post" action="presume.do" onsubmit="return formcheck();" >
上传个人照片:<input type="file" name="photo" id="photo"/><br>
验证码:<input type="text" name="check" id="check"/> <img id="randImage" src="jspPage/image.jsp" />
<a href="javascript:loadimage();">看不清点我</a>
<br>
<input type="submit" value="保存" name="ok" >
</form>

/*******************************************************/
PresumeAction 上传代码如下
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response) throws UnsupportedEncodingException {
PresumeForm presumeForm = (PresumeForm) form;// TODO Auto-generated method stub
SmartUpload sUpload=new SmartUpload();
String filedir="upload/";
long maxsize=50*1024;//50kb
try {
sUpload.initialize((PageContext) PageContext);
sUpload.setMaxFileSize(maxsize);


} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
sUpload.upload();
sUpload.save(filedir,SmartUpload.SAVE_VIRTUAL);

} catch (ServletException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (SmartUploadException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
// if(checkString.equals(randString))
// {
//
////
// return mapping.findForward("ok");
// }
// else
// {
// request.setAttribute("msg", "验证码错误");
// return mapping.findForward("fail");
// }

return null;
...全文
154 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
西部流云 2009-04-07
  • 打赏
  • 举报
回复
同上,这个地方你改成sUpload.initialize(PageContext); 试试看。
great1681 2009-04-07
  • 打赏
  • 举报
回复
javax.servlet.ServletException: java.lang.NullPointerException
这个异常是空指针异常,
问题应该出在这里:
sUpload.initialize((PageContext) PageContext);
说明你的PageContext是空的,
其实pageContext是在jsp页面中才使用的参数,
在action中,楼主试试这个参数,
sUpload.initialize(this.getServlet().getServletConfig(),request,response);
donghusoft 2009-04-06
  • 打赏
  • 举报
回复
这个异常是说你的初始化是空的:sUpload.initialize((PageContext) PageContext);
Pagecontext是空的,你这个应该用ssh做的上传图片,就不能使用uploadfile.jar这个上传组件来做了啊,


具体的实现方法你可以在网上查一下
zhenghuiqiang 2009-04-06
  • 打赏
  • 举报
回复

这个异常是说你的初始化是空的:sUpload.initialize((PageContext) PageContext);
Pagecontext是空的

jspsmart实现文件上传下载及jspSmartUpload.jar下载
http://www.ddscj.cn/favorite.do?method=disFavCon&fid=131&type=1&keyword=
guolimin1118 2009-04-06
  • 打赏
  • 举报
回复
struts 中有个可以直接上传的类
可以用他试下

81,094

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧