struts开发中通过Action处理以后总是不能在struts-config.xml中找到转发地址,而是报错org.apache.struts.action.RequestProcessor
★★★★★★★★★★★★★★enterAddUserAction.java★★★★★★★★★★★★★
package action;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;import javax.naming.Context;
import javax.naming.InitialContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;import org.apache.struts.action.Action;
import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;public class enterAddUserAction extends Action{
public ActionForward execute(ActionMapping arg0, ActionForm arg1,
HttpServletRequest request, HttpServletResponse reponse) throws Exception {
ActionErrors errors=new ActionErrors();
   //------构造查询的SQL语句------
String sqlStr1="select count(*) as recordCount1 from Department";
   String sqlStr2="select * from Department";
   String sqlStr3="select count(*) as recordCount2 from [Role]";
   String sqlStr4="select * from [Role]";
   //------查询出数据,将查询结果数据集写入到request中------
   try{
  
String url="jdbc:sqlserver://localhost:1433;DatabaseName=test"; 
String userName="sa"; 
String password="123"; 
        Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); 
Connection conn = DriverManager.getConnection(url,userName,password);

//------查询数据------
//------装载部门数据------
   Statement sql1=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
   ResultSet rs1=sql1.executeQuery(sqlStr1);
   if(rs1.next()){
   Object[][] rsArray1=new Object[rs1.getInt("recordCount1")][2];
   Statement sql2=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
   ResultSet rs2=sql2.executeQuery(sqlStr2);
   int i=0;
   while(rs2.next()){
   rsArray1[i][0]=rs2.getString("DepartID");
   rsArray1[i][1]=rs2.getString("DepartName");
   i++;
   }
   request.setAttribute("rsArray1",rsArray1);
   }
   //------装载角色数据------
   Statement sql3=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
   ResultSet rs3=sql3.executeQuery(sqlStr3);
   if(rs3.next()){
   Object[][] rsArray2=new Object[rs3.getInt("recordCount2")][2];
   Statement sql4=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE, ResultSet.CONCUR_READ_ONLY);
   ResultSet rs4=sql4.executeQuery(sqlStr4);
   int i=0;
   while(rs4.next()){
   rsArray2[i][0]=rs4.getString("RoleID");
   rsArray2[i][1]=rs4.getString("RoleName");
   i++;
   }
   request.setAttribute("rsArray2",rsArray2);
   }
   //------关闭数据库连接------
   if(conn!=null)
   conn.close();
}catch(Exception e){
e.printStackTrace();
errors.add("DBOPError",new ActionMessage("DBOPError"));
saveErrors(request,errors);
}
return arg0.findForward("enterAddUserJSP");
}
}
以下是相关XML文件的部分截取
★★★★★★★★★★★★★★struts-config.xml★★★★★★★★★★★★★
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">
<global-forwards>
<forward name="enterAddUserJSP" path="/user/addUser1.jsp"/>
</global-forwards><action-mappings>
<action path="/enterAddUser" 
type="action.enterAddUserAction">
</action>
</action-mappings>每次调试到了return arg0.findForward("enterAddUserJSP");
这里,再按F6就出现一个RequestProcessor.class文件,就不知道怎么做了。请高人指点一下。谢谢。

解决方案 »

  1.   

    org.apache.catalina.core.ApplicationDispatcher invoke
    严重: Servlet.service() for servlet jsp threw exception
    org.apache.jasper.JasperException: /user/addUser1.jsp equal symbol expected
    at org.apache.jasper.compiler.DefaultErrorHandler.jspError(DefaultErrorHandler.java:40)
    at org.apache.jasper.compiler.ErrorDispatcher.dispatch(ErrorDispatcher.java:407)
    at org.apache.jasper.compiler.ErrorDispatcher.jspError(ErrorDispatcher.java:88)
    at org.apache.jasper.compiler.Parser.parseAttribute(Parser.java:195)
    at org.apache.jasper.compiler.Parser.parseAttributes(Parser.java:150)
    at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:1234)
    at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1449)
    at org.apache.jasper.compiler.Parser.parseBody(Parser.java:1657)
    at org.apache.jasper.compiler.Parser.parseOptionalBody(Parser.java:1004)
    at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:1272)
    at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1449)
    at org.apache.jasper.compiler.Parser.parseBody(Parser.java:1657)
    at org.apache.jasper.compiler.Parser.parseOptionalBody(Parser.java:1004)
    at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:1272)
    at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1449)
    at org.apache.jasper.compiler.Parser.parseBody(Parser.java:1657)
    at org.apache.jasper.compiler.Parser.parseOptionalBody(Parser.java:1004)
    at org.apache.jasper.compiler.Parser.parseCustomTag(Parser.java:1272)
    at org.apache.jasper.compiler.Parser.parseElements(Parser.java:1449)
    at org.apache.jasper.compiler.Parser.parse(Parser.java:133)
    at org.apache.jasper.compiler.ParserController.doParse(ParserController.java:216)
    at org.apache.jasper.compiler.ParserController.parse(ParserController.java:103)
    at org.apache.jasper.compiler.Compiler.generateJava(Compiler.java:167)
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:306)
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:286)
    at org.apache.jasper.compiler.Compiler.compile(Compiler.java:273)
    at org.apache.jasper.JspCompilationContext.compile(JspCompilationContext.java:566)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:317)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
    at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
    at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
    at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:852)
    at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:584)
    at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1508)
    at java.lang.Thread.run(Unknown Source)
      

  2.   

    <action path="/enterAddUser"  
    type="action.enterAddUserAction"> 
    <forward name="enterAddUserJSP" path="/user/addUser1.jsp"/> 
    </action> 
    试试,就是把fowward放到Action中
      

  3.   

    他那时全局跳转,你检查一下你的跳转关键字是不是"enterAddUserJSP".
      

  4.   

    又是报错:
    Servlet.service() for servlet jsp threw exception
    org.apache.jasper.JasperException: No getter method available for property role for bean under name org.apache.struts.taglib.html.BEAN
    at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:541)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
    at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
    at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
    at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:852)
    at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:584)
    at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1508)
    at java.lang.Thread.run(Unknown Source)
    2008-5-27 20:02:28 org.apache.catalina.core.StandardWrapperValve invoke
    严重: Servlet.service() for servlet action threw exception
    org.apache.jasper.JasperException: No getter method available for property role for bean under name org.apache.struts.taglib.html.BEAN
    at org.apache.jasper.servlet.JspServletWrapper.handleJspException(JspServletWrapper.java:541)
    at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:417)
    at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:320)
    at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:266)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:654)
    at org.apache.catalina.core.ApplicationDispatcher.processRequest(ApplicationDispatcher.java:445)
    at org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispatcher.java:379)
    at org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatcher.java:292)
    at org.apache.struts.action.RequestProcessor.doForward(RequestProcessor.java:1085)
    at org.apache.struts.action.RequestProcessor.processForwardConfig(RequestProcessor.java:398)
    at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:241)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1196)
    at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:740)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
    at org.apache.coyote.http11.Http11AprProcessor.process(Http11AprProcessor.java:852)
    at org.apache.coyote.http11.Http11AprProtocol$Http11ConnectionHandler.process(Http11AprProtocol.java:584)
    at org.apache.tomcat.util.net.AprEndpoint$Worker.run(AprEndpoint.java:1508)
    at java.lang.Thread.run(Unknown Source)
      

  5.   

    你看错误提示第二行
    说你bean中有些变量没有getter/setter方法
      

  6.   

    这样写程序,还不如直接写在jsp页面中呢
      

  7.   

    对,你说得很正确,是一个getXXXX()方法写错了