`
dickwin
  • 浏览: 3800 次
  • 性别: Icon_minigender_1
  • 来自: Shenzhen
社区版块
存档分类
最新评论

Struts&Debug Information

阅读更多
Struts 调试中常见的错误
以下所说的struts-config.xml和ApplicationResources.properties等文件名是缺省时使用的,如果你使用了多模块,或指定了不同的资源文件名称,这些名字要做相应的修改。
1、“No bean found under attribute key XXX”在struts-config.xml里定义了一个ActionForm,但type属性指定的类不存在,type属性的值应该是Form类的全名。或者是,在Action的定义中,name或attribute属性指定的ActionForm不存在。
2、“Cannot find bean&XXX in any scope”在Action里一般会request.setAttribute()一些对象,然后在转向的jsp文件里(用tag或request.getAttribute()方法)得到这些对象并显示出来。这个异常是说jsp要得到一个对象,但前面的Action里并没有将对象设置到request(也可以是session、servletContext)里。可能是名字错了,请检查jsp里的tag的一般是name属性,或getAttribute()方法的参数值;或者是Action逻辑有问题没有执行setAttribute()方法就先转向了。还有另外一个可能,纯粹是jsp文件的问题,例如<logic:iterate>会指定一个id值,然后在循环里<bean:write>使用这个值作为name的值,如果这两个值不同,也会出现此异常。(都是一个道理,request里没有对应的对象。)
3、“Missing message for key "XXX"”缺少所需的资源,检查ApplicationResources.properties文件里是否有jsp文件里需要的资源,例如:
<bean:message&key="msg.name.prompt"/>
这行代码会找msg.name.prompt资源,如果AppliationResources.properties里没有这个资源就会出现本异常。在使用多模块时,要注意在模块的struts-config-xxx.xml里指定要使用的资源文件名称,否则当然什幺资源也找不到,这也是一个很容易犯的错误。
4、“No getter method for property&XXX of bean teacher”这条异常信息说得很明白,jsp里要取一个bean的属性出来,但这个bean并没有这个属性。你应该检查jsp中某个标签的property属性的值。例如下面代码中的cade应该改为code才对:
<bean:write&name="teacher"&property="cade"&filter="true"/>
注意在Form里的比如 是EmpNo 而在Form 的set,get方法的时候是 empNo 此处可能出错﹐注意为上﹔
5、“Cannot find ActionMappings or ActionFormBeans collection”待解决﹐检查配置文件,从Sturts-config-xml到web.xml看是否对应﹔
6、“Cannot retrieve mapping for action XXX”在.jsp的<form>标签里指定action='/XXX',但这个Action并未在struts-config.xml里设置过。
7、HTTP Status 404 - /xxx/xxx.jspForward的path属性指向的jsp页面不存在,请检查路径和模块,对于同一模块中的Action转向,path中不应包含模块名;模块间转向,记住使用contextRelative="true"。
8、没有任何异常信息,显示空白页面可能是Action里使用的forward与struts-config.xml里定义的forward名称不匹配。
9、“The element type "XXX" must be terminated by the matching end-tag "XXX".”这个是struts-config.xml文件的格式错误,仔细检查它是否是良构的xml文件,关于xml文件的格式这里就不赘述了。
10、“Servlet.init() for servlet action threw exception”一般出现这种异常在后面会显示一个关于ActionServlet的异常堆栈信息,其中指出了异常具体出现在代码的哪一行。我曾经遇到的一次提示如下:
java.lang.NullPointerException&&&&at&org.apache.struts.action.ActionServlet.parseModuleConfigFile(ActionServlet.java:1003)&&&&at&org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:955)
为解决问题,先下载struts的源码包,然后在ActionServlet.java的第1003行插入断点,并对各变量进行监视。很丢人,我竟然把struts-config.xml文件弄丢了,因此出现了上面的异常,应该是和CVS同步时不小心删除的。
11、“Resources not defined for Validator”这个是利用Validator插件做验证时可能出现的异常,这时你要检查validation.xml文件,看里面使用的资源是否确实有定义,form的名称是否正确,等等。
分享到:
评论

相关推荐

    struts&Spring&Hibernate框架小例子

    这个"struts&Spring&Hibernate框架小例子"旨在展示这三个框架如何协同工作,实现MVC(Model-View-Controller)设计模式,以及依赖注入和持久化管理。 Struts是MVC框架的代表,负责处理HTTP请求,控制应用程序流程,...

    Struts & Hibernate入门实例

    Struts和Hibernate是Java开发领域中的两个重要框架,它们分别专注于Web应用的MVC(Model-View-Controller)架构和对象关系映射(ORM)。在这个"Struts & Hibernate入门实例"中,我们将深入理解这两个框架的基本概念...

    Struts & JSF 教学ppt

    Struts和JavaServer Faces(JSF)是两种广泛使用的Java Web开发框架,它们在构建企业级应用程序中扮演着重要角色。下面将详细讲解这两个框架的核心概念、特点以及它们在实际应用中的价值。 **Struts框架** Struts是...

    在tarena培训 struts&jsp上

    在Tarena的培训课程中,"Struts&JSP"可能涵盖了以下几个关键知识点: 1. **MVC模式**:讲解了MVC模式的基本原理,即模型(Model)处理业务逻辑,视图(View)负责显示数据,控制器(Controller)处理用户请求并协调模型和...

    《J2EE框架技术+–+Struts&JSF》教学大纲

    ### J2EE框架技术——Struts&JSF教学大纲解析 #### 一、课程目标与对象 本课程旨在深入理解并掌握J2EE框架技术中关键的Struts和JSF框架,具体目标包括: 1. **理解Struts框架**:熟悉Struts框架的基本概念、架构...

    mongodb&spring&struts&springdatamongodb整合,带所有jar,需要的拿走

    MongoDB、Spring、Struts和Spring Data MongoDB是Java开发中常用的四大组件,它们分别在数据库存储、应用框架、MVC模式实现以及数据访问层提供强大的支持。本项目整合了这四个技术,使得开发者可以在Java Web应用...

    北大青鸟第二学年4.0 Y2所有资料 三

    北大青鸟第二学年4.0 Y2所有资料 三 <br>我已经把第二学年所有的课件打包在一起了,一共有5部分,这是第 三部分 <br>大家下载时要记得评分,这样你们就不要资源分了 <br>Struts&& JSF <br>Oracle <br>...

    SSH_Struts&Hibernate;&spring;工程下载

    SSH工程之Struts-hibernate-spring的整合。通过页面的访问的驱动获取数据库中的内容,并进行判断

    struts1&struts2

    Struts1和Struts2是两个著名的MVC框架,它们都是Apache软件基金会的Apache Struts项目的一部分,用于构建基于Java的Web应用程序。然而,两者在设计和实现上有显著的差异。 1. **架构模式的区别** - **Struts1.x** ...

    struts1&&struts2-PPT

    Struts是Java Web开发中的一个流行框架,分为Struts1和Struts2两个主要版本,它们都致力于简化MVC(模型-视图-控制器)架构的实现,提高开发效率和应用的可维护性。让我们深入了解一下这两个框架的核心概念、工作...

    Struts&JSF

    里面集成了所有java方面的讲解.轻松学会java

    struts2&&freemarker

    Struts2 和 Freemarker 是两种在Java Web开发中广泛应用的技术。Struts2 是一个基于MVC(Model-View-Controller)设计模式的开源框架,它主要用于构建和维护可重用的、易于测试的Web应用程序。而Freemarker则是一种...

    Struts2&&Velocity

    Struts2 和 Velocity 是两个在Java Web开发中广泛使用的开源框架。Struts2是一个MVC(Model-View-Controller)框架,它提供了处理用户请求、业务逻辑和视图展示的能力,而Velocity则是一个模板引擎,专注于视图层的...

    maven&struts2&jetty&tomcat

    该包适用于maven新手入门,因为作者本身也是一员maven新手,里面包括了maven的下载包,插件包,插件的配置,环境变量的设置,maven项目建立的详解及运行,里面集成了jetty,tomcat,struts2,当然还包括了直接运行jar包...

    struts1&2.pdf strutsAPI

    Struts是Java Web开发中的一个流行框架,分为Struts 1和Struts 2两个主要版本。这个压缩包包含了关于这两个版本的教程和API文档,对于深入理解和使用Struts非常有帮助。 首先,我们来看看Struts 1。Struts 1是...

    Struts1&Struts2登录系统(完全版)

    这是我培训精心给学员设计制作的,拿来跟大家分享了!其中用了Tomcat连接池,可能得你自己配置一下了。另外希望大家能重点看看Struts1和Struts2的区别,有问题可与我联系:285178672(QQ)。

    struts api & document

    Struts API与文档是Java开发中的重要组成部分,尤其对于基于MVC(模型-视图-控制器)架构的应用程序设计。Struts是一个开源框架,最初由Apache软件基金会开发,旨在简化Java Web应用程序的创建过程,特别是在处理...

Global site tag (gtag.js) - Google Analytics