问题描述:
SmartUpload实现文件上传的代码:
<%@ page contentType="text/html;charset=UTF-8"%><%@ page import="com.soft4j.httpupload4j.SmartUpload"%><%@ page import="com.soft4j.bo.WebFileMgr"%><%
String ret = null;
SmartUpload su = null;
try{
su = new SmartUpload();
su.initialize(pageContext);
su.upload();
ret = WebFileMgr.upload(su,pageContext);//WebFileMgr.java 处理文件上传
if(ret!=null){
out.print("successed");
}
}catch(Exception e){
out.print("faild");
}finally{
su = null;
}
%>
当我想把这段代码写到handle文件中时,如何获得PageContext对象成了问题。
<%@ page contentType="text/html;charset=UTF-8"%><%@ page import="com.soft4j.httpupload4j.SmartUpload"%><%@ page import="com.soft4j.bo.WebFileMgr"%><%
String ret = null;
SmartUpload su = null;
try{
su = new SmartUpload();
su.initialize(pageContext);
su.upload();
ret = WebFileMgr.upload(su,pageContext);//WebFileMgr.java 处理文件上传
if(ret!=null){
out.print("successed");
}
}catch(Exception e){
out.print("faild");
}finally{
su = null;
}
%>
原因:
PageContext是页面上下文对象,只能在页面上获得。
handler是一个控制器,底层可以是一个Servlet,servlet api里没有PageContext, 只能获得请求以上的空间范围对象