<?xml version="1.0" encoding="ISO-8859-1" ?>
<!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
          "http://struts.apache.org/dtds/struts-config_1_3.dtd">
<struts-config>
<form-beans>
<form-bean name="calForm" type="com.calculator.CalCulatorCationForm" />
</form-beans>
<action-mappings>
<action path="/acl"
type="com.calculator.CalActionForm"
name="calForm"
scope="request">
<forward name="calculator_success" path="/calculator_success"></forward>
<forward name="calculator_error"   path="/calculator_error"></forward>
</action>
</action-mappings>
</struts-config>
----------------------------------------------------------------------------------------------------------
package com.calculator;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;public class CalActionForm extends Action {
public ActionForward execute(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
CalCulatorCationForm cccf=(CalCulatorCationForm)form;
int value =cccf.getValue();
int value2=cccf.getValue2();
String flang=cccf.getFlang();
int result=0;
try{
if("+".equals(flang)){
result=value+value2;
}else if("-".equals(flang)){
result=value-value2; 
}else if("*".equals(flang)){
result=value*value2;
}else if("/".equals(flang)){
result=value/value2;
}
Integer Integer_result=new Integer(result);
request.setAttribute("result",Integer_result);
return mapping.findForward("calculator_success");
} catch(Exception e){
  e.printStackTrace();
}
return mapping.findForward("calculator_error");
}
}
----------------------------------------------------------------------------------------------------------
<%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<%@ page import="com.calculator.*" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=GB18030">
<title>Insert title here</title>
</head>
<body>
<%
CalCulatorCationForm cccf=(CalCulatorCationForm)request.getAttribute("calForm");
%>
comput error;
<%cccf.getValue(); %><%cccf.getFlang(); %><%cccf.getValue2(); %>
</body>
</html>----------------------------------------------------------------------------------------------------------
<?xml version="1.0" encoding="ISO-8859-1"?>
  <!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
  <display-name>Struts Blank Application</display-name>
  <servlet>
    <servlet-name>action</servlet-name>
    <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    <init-param>
      <param-name>config</param-name>
      <param-value>/WEB-INF/struts-config.xml</param-value>
    </init-param>
    <load-on-startup>2</load-on-startup>
 </servlet>  <servlet-mapping>
    <servlet-name>action</servlet-name>
    <url-pattern>*.do</url-pattern>
  </servlet-mapping>  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list></web-app>
----------------------------------------------------------------------------------------------------------package com.calculator;import org.apache.struts.action.ActionForm;public class CalCulatorCationForm extends ActionForm {
public String getFlang() {
return flang;
}
public void setFlang(String flang) {
this.flang = flang;
}
public int getValue() {
return value;
}
public void setValue(int value) {
this.value = value;
}
public int getValue2() {
return value2;
}
public void setValue2(int value2) {
this.value2 = value2;
}
private String flang;
private int value;
private int value2;

}----------------------------------------------------------------------------------------------------------

解决方案 »

  1.   

    2010-1-14 19:21:29 org.apache.catalina.core.AprLifecycleListener init
    信息: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: C:\Program Files\Java\jdk1.6.0_06\bin;G:\TomCat\Tomcat 6.0\bin
    2010-1-14 19:21:30 org.apache.coyote.http11.Http11Protocol init
    信息: Initializing Coyote HTTP/1.1 on http-9999
    2010-1-14 19:21:30 org.apache.catalina.startup.Catalina load
    信息: Initialization processed in 3745 ms
    2010-1-14 19:21:30 org.apache.catalina.core.StandardService start
    信息: Starting service Catalina
    2010-1-14 19:21:30 org.apache.catalina.core.StandardEngine start
    信息: Starting Servlet Engine: Apache Tomcat/6.0.18
    2010-1-14 19:21:45 org.apache.struts.action.ActionServlet initChain
    信息: Loading chain catalog from jar:file:/G:/TomCat/Tomcat%206.0/webapps/calculator/WEB-INF/lib/struts-core-1.3.9.jar!/org/apache/struts/chain/chain-config.xml
    2010-1-14 19:22:05 org.apache.coyote.http11.Http11Protocol start
    信息: Starting Coyote HTTP/1.1 on http-9999
    2010-1-14 19:22:07 org.apache.jk.common.ChannelSocket init
    信息: JK: ajp13 listening on /0.0.0.0:8009
    2010-1-14 19:22:08 org.apache.jk.server.JkMain start
    信息: Jk running ID=0 time=0/1171  config=null
    2010-1-14 19:22:08 org.apache.catalina.startup.Catalina start
    信息: Server startup in 37853 ms
    2010-1-14 19:28:51 org.apache.struts.chain.ComposableRequestProcessor init
    信息: Initializing composable request processor for module prefix ''
    2010-1-14 19:28:52 org.apache.struts.chain.commands.AbstractExceptionHandler execute
    警告: Unhandled exception
    org.apache.struts.chain.commands.InvalidPathException: No action config found for the specified url.
    at org.apache.struts.chain.commands.AbstractSelectAction.execute(AbstractSelectAction.java:71)
    at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    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:191)
    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:286)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    at java.lang.Thread.run(Thread.java:619)
    2010-1-14 19:28:52 org.apache.struts.chain.commands.ExceptionCatcher postprocess
    警告: Exception from exceptionCommand 'servlet-exception'
    org.apache.struts.chain.commands.InvalidPathException: No action config found for the specified url.
    at org.apache.struts.chain.commands.AbstractSelectAction.execute(AbstractSelectAction.java:71)
    at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    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:191)
    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:286)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    at java.lang.Thread.run(Thread.java:619)
    2010-1-14 19:28:52 org.apache.catalina.core.StandardWrapperValve invoke
    严重: Servlet.service() for servlet action threw exception
    org.apache.struts.chain.commands.InvalidPathException: No action config found for the specified url.
    at org.apache.struts.chain.commands.AbstractSelectAction.execute(AbstractSelectAction.java:71)
    at org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:51)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
    at org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
    at org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:283)
    at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
    at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
    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:191)
    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:286)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:845)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:583)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:447)
    at java.lang.Thread.run(Thread.java:619)
      

  2.   

    如果是你新搭建的框架则很有可能是缺少 common-XXX 的jar 包。

      

  3.   

    你的form表单的action是这个  acl  吗?
      

  4.   


    还有这里
    <%=cccf.getValue() %> 
    <%=cccf.getFlang() %> 
    <%=cccf.getValue2() %> 
      

  5.   

    <%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
    <%
    String path = request.getContextPath();
    String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
    %>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <base href="<%=basePath%>"> <title>Leon's calcuator</title>
    <meta http-equiv="pragma" content="no-cache">
    <meta http-equiv="cache-control" content="no-cache">
    <meta http-equiv="expires" content="0">
    <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
    <meta http-equiv="description" content="This is my page">
    </head> <div align="center" > Welcome to use calcuator  </div><br>
    <div align="right"> all power is leon </div><br>
    <body bgcolor=#ffffcc>
    <form action="cal.do" method="post">

    <input type="text" name="value">
    <select name="flang">
    <option value="+">+</option>
    <option value="-">-</option>
    <option value="*">*</option>
    <option value="/">/</option>
    </select>
    <input type="text" name="value2">
    <input type="submit"  values=" 提交 ">
    </form>

    </body>
    </html>
      

  6.   

     common-XXX 的jar 包。肯定不少
    ------------------------------------
    <%=cccf.getValue() %> 
    <%=cccf.getFlang() %> 
    <%=cccf.getValue2() %> 
     这个代码去取值的
      

  7.   

    <action path="/acl" 
    type="com.calculator.CalActionForm" 
    name="calForm" 
    scope="request"> type="com.calculator.CalActionForm" 
    这个包名没错吧,你的ActionForm跟Action放在一个包下面吗
      

  8.   

    <action path="/acl" 
    type="com.calculator.CalActionForm" 
    name="calForm" 
    scope="request"> type="com.calculator.CalActionForm" 
    这个包名没错吧,你的ActionForm跟Action放在一个包下面吗
      

  9.   

    这个可惜不能发截图 com.calculator 这个是包名
    CalActionForm calCulatorCationForm 都 在其下
      

  10.   

    我昨晚上又调了  能显示出来了 但是只能显示出一个 = 号 ,别的什么也没有                       com.calculator.calCulatorCationForm 
    package com.calculator;import org.apache.struts.action.ActionForm;public class calCulatorCationForm extends ActionForm { public String getFlang() {
    return flang;
    }
    public void setFlang(String flang) {
    this.flang = flang;
    }
    public int getValue() {
    return value;
    }
    public void setValue(int value) {
    this.value = value;
    }
    public int getValue2() {
    return value2;
    }
    public void setValue2(int value2) {
    this.value2 = value2;
    }
    private String flang;
    private int value;
    private int value2;

    }
    -------------------------------------------------------------------------------------
                               com.calculator.alActionFormpackage com.calculator;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import org.apache.struts.action.Action;
    import org.apache.struts.action.ActionForm;
    import org.apache.struts.action.ActionForward;
    import org.apache.struts.action.ActionMapping;public class calActionForm extends Action {
    public ActionForward execute(ActionMapping mapping, ActionForm form,
    HttpServletRequest request, HttpServletResponse response)
    throws Exception {
    calCulatorCationForm cccf=(calCulatorCationForm)form;
    int value =cccf.getValue();
    int value2=cccf.getValue2();
    String flang=cccf.getFlang();
    int result=0;
    try{
    if("+".equals(flang)){
    result=value+value2;
    }else if("-".equals(flang)){
    result=value-value2; 
    }else if("*".equals(flang)){
    result=value*value2;
    }else if("/".equals(flang)){
    result=value/value2;
    }
    Integer Integer_result=new Integer(result);
    request.setAttribute("Integer_result",Integer_result);
    return mapping.findForward("calculator_success");
    } catch(Exception e){
      e.printStackTrace();
    }
    return mapping.findForward("calculator_error");
    }
    }
    -------------------------------------------------------------------------------------
                            struts-config.xml<?xml version="1.0" encoding="ISO-8859-1" ?>
    <!DOCTYPE struts-config PUBLIC
              "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
              "http://struts.apache.org/dtds/struts-config_1_3.dtd">
    <struts-config>
    <form-beans>
    <form-bean name="calForm" type="com.calculator.calCulatorCationForm" />
    </form-beans>
    <action-mappings>
    <action path="/cal"
    type="com.calculator.calActionForm"
    name="calForm"
    scope="request"
    >
    <forward name="calculator_success" path="/calculator_success.jsp"></forward>
    <forward name="calculator_error"   path="/calculator_error.jps"></forward>
    </action>
    </action-mappings>
    </struts-config>
    -------------------------------------------------------------------------------------
                       calculator_success.jsp<%@ page language="java" contentType="text/html; charset=GB18030"
        pageEncoding="GB18030"%>
    <%@ page import="com.calculator.*" %>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=GB18030">
    <title>Insert title here</title>
    </head>
    <body>
    <%
    calCulatorCationForm cccf=(calCulatorCationForm)request.getAttribute("calForm");
    %>

    <%cccf.getValue(); %> <%cccf.getFlang(); %> <%cccf.getValue2(); %>=
     <%request.getAttribute("Integer_result"); %>
    </body>
    </html>
    -------------------------------------------------------------------------------------
            web.xml<?xml version="1.0" encoding="ISO-8859-1"?>
      <!DOCTYPE web-app PUBLIC
    "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
    "http://java.sun.com/dtd/web-app_2_3.dtd">
    <web-app>
      <display-name>Struts Blank Application</display-name>
      <servlet>
        <servlet-name>action</servlet-name>
        <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
        <init-param>
          <param-name>config</param-name>
          <param-value>/WEB-INF/struts-config.xml</param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
     </servlet>  <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>
      </servlet-mapping>  <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
      </welcome-file-list></web-app>-------------------------------------------------------------------------------------