CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
可用分押宝游戏火热进行中... 专题改版:Java Web 专题
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Java >  Web 开发

请问为何我配置了ActionMappings和ActionFormBeans在载入页面,还会报这个错误呢?马上给分,祝节日愉快

楼主ervinlj(阳光使者)2004-05-02 16:13:03 在 Java / Web 开发 提问

各位网友,大家好:  
  小弟我初学Struts,碰到一个棘手问题,烦劳各位高人帮我看一下:  
  这是我的Jsp文件inputContent.jsp:  
  <html>  
  <head>  
  <title>  
  A   Simple   Test   Struts   Application  
  </title>  
  </head>  
  <body>  
  <%@   taglib   uri="WEB-INF/app.tld"   prefix="app"   %>  
  <%@   taglib   uri="WEB-INF/struts-bean.tld"   prefix="bean"   %>  
  <%@   taglib   uri="WEB-INF/struts-html.tld"   prefix="html"   %>  
  <%@   taglib   uri="WEB-INF/struts-logic.tld"   prefix="logic"   %>  
  <h1>  
  A   Simple   Test   Struts   Application  
  </h1>  
  <html:messages   id="mymessage"   />  
  <app:department   />  
  <app:skill   />  
  <html:form   action="empaction.do">  
  。。。  
  </html:form>  
  </body>  
  </html>  
   
  web.xml文件如下:  
  <?xml   version="1.0"   encoding="ISO-8859-1"   ?>  
  <!DOCTYPE   web-app   PUBLIC   "-//Sun   Microsystems,   Inc.//DTD   Web   Application   2.2//EN"  
          "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">  
  <web-app>  
  <description>  
  The   Web.xml   configuration   of   Struts   Test   Sample   Application  
  </description>  
  <servlet>  
  <servlet-name>action</servlet-name>  
  <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>  
  <load-on-startup>2</load-on-startup>  
  </servlet>  
  <servlet-mapping>  
  <servlet-name>action</servlet-name>  
  <url-pattern>*.do</url-pattern>  
  </servlet-mapping>  
  </web-app>  
   
  struts-config.xml文件如下:  
  <?xml   version="1.0"   encoding="ISO-8859-1"   ?>  
  <!DOCTYPE   struts-config   PUBLIC  
                      "-//Apache   Software   Foundation//DTD   Struts   Configuration   1.2//EN"  
                      "http://jakarta.apache.org/struts/dtds/struts-config_1_2.dtd">  
  <struts-config>  
  <form-beans>  
  <form-bean   name="empForm"   type="com.example.EmpForm"   />  
  </form-beans>  
  <action-mappings>  
  <action   path="/empaction"  
                  type="com.example.EmpAction"  
                  name="EmpForm"  
                  scope="request"  
                  input="/inputContent.jsp">  
  <forward   name="success"   path="/outputContent.jsp">  
  </action>  
  </action-mappings>  
  </struts-config>  
  出的错误如下:  
  description   The   server   encountered   an   internal   error   ()   that   prevented   it   from   fulfilling   this    
   
  request.  
  exception    
  org.apache.jasper.JasperException:   Cannot   find   ActionMappings   or   ActionFormBeans   collection  
  我的ActionFormBean--EmpForm和Action--EmpAction是完全能编译通过的,可是在载入Jsp页面inputContent.jsp却会出现以上的错误,请各位高人看看,为什么没能找到ActionMappings和ActionFormBeans???  
  web.xml文件和struts-config.xml文件放的位置也应该都是正确的,都在我应用程序的WEB-INF目录下,这应该没有问题的呀!!!谢谢各位,马上给分的哈!!!  
  我用的是Struts1.2 问题点数:40、回复次数:12Top

1 楼ervinlj(阳光使者)回复于 2004-05-02 17:50:02 得分 0

出现的完全错误信息如下:  
  HTTP   Status   500   -    
   
  --------------------------------------------------------------------------------  
   
  type   Exception   report  
   
  message    
   
  description   The   server   encountered   an   internal   error   ()   that   prevented   it   from   fulfilling   this   request.  
   
  exception    
   
  org.apache.jasper.JasperException:   Cannot   find   ActionMappings   or   ActionFormBeans   collection  
  at   org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:254)  
  at   org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)  
  at   org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)  
  at   javax.servlet.http.HttpServlet.service(HttpServlet.java:853)  
  at   org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)  
  at   org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)  
  at   org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)  
  at   org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)  
  at   org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)  
  at   org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)  
  at   org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)  
  at   org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)  
  at   org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)  
  at   org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)  
  at   org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)  
  at   org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)  
  at   org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)  
  at   org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)  
  at   org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)  
  at   org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)  
  at   org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)  
  at   org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)  
  at   org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)  
  at   org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)  
  at   org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)  
  at   org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)  
  at   java.lang.Thread.run(Thread.java:479)  
   
   
  root   cause    
   
  javax.servlet.ServletException:   Cannot   find   ActionMappings   or   ActionFormBeans   collection  
  at   org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:533)  
  at   org.apache.jsp.inputContent_jsp._jspService(inputContent_jsp.java:97)  
  at   org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)  
  at   javax.servlet.http.HttpServlet.service(HttpServlet.java:853)  
  at   org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:210)  
  at   org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)  
  at   org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)  
  at   javax.servlet.http.HttpServlet.service(HttpServlet.java:853)  
  at   org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)  
  at   org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)  
  at   org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:256)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)  
  at   org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)  
  at   org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)  
  at   org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)  
  at   org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)  
  at   org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)  
  at   org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)  
  at   org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)  
  at   org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:171)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)  
  at   org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)  
  at   org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)  
  at   org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)  
  at   org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)  
  at   org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)  
  at   org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)  
  at   org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)  
  at   org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)  
  at   org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:594)  
  at   org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:392)  
  at   org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:565)  
  at   org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:619)  
  at   java.lang.Thread.run(Thread.java:479)  
   
   
   
  --------------------------------------------------------------------------------  
   
  Apache   Tomcat/4.1.24  
  快点帮我看看如何来解决这个问题呢?Top

2 楼crazycy(崔毅,blog:http://www.blogjava.net/crazycy/)回复于 2004-05-02 19:43:00 得分 0

请把你的struts-config.xml中  
  action标签的name属性值换为form-bean的name属性值  
  即:  
  <struts-config>  
  <form-beans>  
  <form-bean   name="empForm"   type="com.example.EmpForm"   />  
  </form-beans>  
  <action-mappings>  
  <action   path="/empaction"  
                  type="com.example.EmpAction"  
                  name="empForm"  
                  scope="request"  
                  input="/inputContent.jsp">  
  <forward   name="success"   path="/outputContent.jsp">  
  </action>  
  </action-mappings>  
  </struts-config>  
  Top

3 楼crazycy(崔毅,blog:http://www.blogjava.net/crazycy/)回复于 2004-05-02 19:44:20 得分 20

我也是初学者    
  刚刚解决了这个问题  
  很高兴能与你一起交流   我的QQ:33682690Top

4 楼ervinlj(阳光使者)回复于 2004-05-02 22:36:22 得分 0

我尝试过了,还是出现了这个问题,问题中<action>的name属性为EmpForm只是我的一个打字错误,看来问题还不是出现在这里,请各位高人再帮我看看!!!谢谢!!!Top

5 楼ervinlj(阳光使者)回复于 2004-05-03 10:19:34 得分 0

我将web.xml文件中加入config参数改成这样:  
  <?xml   version="1.0"   encoding="ISO-8859-1"   ?>  
  <!DOCTYPE   web-app   PUBLIC   "-//Sun   Microsystems,   Inc.//DTD   Web   Application   2.2//EN"  
          "http://java.sun.com/j2ee/dtds/web-app_2_2.dtd">  
  <web-app>  
  <description>  
  The   Web.xml   configuration   of   Struts   Test   Sample   Application  
  </description>  
  <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>  
  </web-app>  
  还是没有成功,到底是什么原因啊???  
  Top

6 楼ervinlj(阳光使者)回复于 2004-05-03 11:07:02 得分 0

各位高人快来救我啊!!!40分全给啊!!!Top

7 楼crazycy(崔毅,blog:http://www.blogjava.net/crazycy/)回复于 2004-05-03 12:48:41 得分 20

配置应该没问题的  
  <html:form   action="empaction.do">  
  。。。  
  </html:form>  
  这里的<html:form   action="empaction.do">有method="post"这句?  
  若有,嘿嘿,也跟着一起学习Top

8 楼ervinlj(阳光使者)回复于 2004-05-03 13:29:31 得分 0

没有啊,没有method=post这句话呀!!!Top

9 楼ervinlj(阳光使者)回复于 2004-05-03 15:39:51 得分 0

upup再upTop

10 楼ervinlj(阳光使者)回复于 2004-05-03 22:28:44 得分 0

见鬼,这个问题就没有高人能帮我解决的吗?Top

11 楼pengfeitian(飞天寻欢)回复于 2004-05-04 17:58:42 得分 0

zging!!!Top

12 楼bitiwang()回复于 2004-05-05 17:37:00 得分 0

我也是初学者,我已经对struts恐惧了,太难调试了!准备放弃!!!!  
  struts最大缺点莫过于此。Top

相关问题

  • 页面载入效果
  • ASP页面载入很慢!
  • 为什么WebBrowser1.Navigate重复载入同一页面时载入的是旧页面,不会更新页面数据??
  • 如何在载入页面时,根据条件判断后对当前载入页面进行刷新
  • 怎么在页面完全载入后弹出个对话框?
  • 如何控制框架中页面载入的先后顺序
  • 页面中applet载入完成的事件是什么?
  • (TreeView相关问题)开启页面时代码载入问题。
  • 如何做一个页面载入等待?
  • 主页面载入太慢,谁能指点?

关键词

  • .net

得分解答快速导航

  • 帖主:ervinlj
  • crazycy
  • crazycy

相关链接

  • CSDN Java频道
  • Java类图书
  • Java类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
世纪乐知(北京)网络技术有限公司 版权所有, 京 ICP 证 020026 号
北京创新乐知广告有限公司 提供技术支持
Copyright © 2000-2007, CSDN.NET, All Rights Reserved
GongshangLogo