关于将jspsmartupload在struts中用于上传时出的问题(高人请入,本问题白送高手分)(弄了一个通宵,涕血请教)
我想使用jspsmartupload控件进行图文上传,但是在编译时总是出错
AddBookInformationAction.java:34: getPageContext(javax.servlet.Servlet,javax.servlet.ServletRequest,javax.servlet.ServletResponse,java.lang.String,boolean,int,boolean) in javax.servlet.jsp.JspFactory cannot be applied to (Liberary.AddBookInformationAction,javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse,<nulltype>,boolean,int,boolean)
PageContext pageContext = _jspxFactory.getPageContext(this,request,response,null,true,8192,true);
总是说AddBookInformationAction 对象(对应this)不能放到这里,但为什么,AddBookInformationAction 应该也是一个Servlet对象呀,符合函数定义中的参数说明呀,请高手帮我看看,
package Liberary;
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpSession;
import javax.servlet.http.HttpServletResponse;
import com.jspsmart.upload.*;
import javax.sql.DataSource;
import java.sql.*;
import org.apache.struts.action.*;
import org.apache.struts.action.ActionMessage;
import org.apache.struts.action.ActionMessages;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.util.MessageResources;
import javax.servlet.jsp.PageContext;
import javax.servlet.jsp.JspFactory;
public final class AddBookInformationAction extends Action
{
public boolean getBookInformation(OperateDataBase dto,HttpServletRequest request,HttpServletResponse response)
{
javax.servlet.jsp.JspFactory _jspxFactory = JspFactory.getDefaultFactory();
PageContext pageContext = _jspxFactory.getPageContext(this,request,response,null,true,8192,true);
//……
}
public ActionForward execute(ActionMapping mapping,
ActionForm form,
HttpServletRequest request,
HttpServletResponse response)
throws Exception {
ActionErrors errors = new ActionErrors();
DataSource dataSource;
Connection cnn=null;
boolean tag=false;
dataSource = getDataSource(request);
cnn = dataSource.getConnection();
OperateDataBase dto=new OperateDataBase(cnn);
tag=getBookInformation(dto,request,response);
if(!tag)
{
ActionError error=new ActionError("error.missing.user");
errors.add(ActionErrors.GLOBAL_ERROR,error);
saveErrors(request, errors);
return new ActionForward(mapping.getInput());
}
return mapping.findForward("MainPage");
}
}
问题点数:50、回复次数:4Top
1 楼bwsabc(javavaj)回复于 2005-04-02 09:27:26 得分 0
Action不是servlet.你看看struts的文档.Top
2 楼007remember(绿原)回复于 2005-04-02 10:17:44 得分 0
路过
学习ing
帮您顶Top
3 楼regretwang1999()回复于 2005-04-02 10:41:29 得分 0
那我如何解决这个问题,有人会吗Top
4 楼LDH202(玲海)回复于 2005-04-02 10:47:47 得分 50
您的MVC没学好,Action只负责页面逻辑跳转,
你怎么用Action来进行业务处理呢(接收上传内容)
请另外编写一个Servlet来完成该业务逻辑,
而这个Action只负责page.forward();Top




