struts2常见错误
1.Caught exception while loading file struts-default.xml - [unknown location]
解决办法:
由于lib包冲突造成的,将两个解析xml用的jar从项目里移到tomacat的lib下面就ok了,xml-apis.jar xerces-2.6.2.jar
2.严重: Exception starting filter struts2
Error building results for action login in namespace - action - file:/E:/apache-tomcat-6.0.14/webapps/testStruts2/WEB-INF/classes/struts.xml
57
原因:在web.xml已声明使用模板,并对所有的类进行了监听,但在处理过程中,发现不知道到哪里去找模板的配置文件,即在struts.xml中已使用了模板,但并没有告诉程序应该到哪去解析这些内容,即titles-default.java文件应该声明出来,
原因1:在struts.xml中错误的声明如下:
<package name="aa1" extends="struts-default" >
<action name="login" class="com.sun.demo.LoginAction">
<result type="tiles">showWelcomePage</result>
</action>
</package>
应改为:
<package name="aa1" extends="titles-default" >
<action name="login" class="com.sun.demo.LoginAction">
<result type="tiles">showWelcomePage</result>
</action>
</package>
原因2:titles.xml文件的 错误配置
<tiles-definitions>
<definition name="showWelcomePage" template="template.jsp">
<put-attribute name="menu" >menu_1.jsp</put-attribute>
<put-attribute name="content" >login_form.jsp</put-attribute>
</definition>
正确的配置为:
<tiles-definitions>
<definition name="showWelcomePage" template="template.jsp">
<put-attribute name="menu" value="/menu_1.jsp"></put-attribute>
<put-attribute name="content" value="/login_form.jsp"></put-attribute>
</definition>
页面显示情况如下:
错误配置如下:
<definition name="showWelcomePage" template="template.jsp">
<put-attribute name="menu" value="menu_1.jsp"></put-attribute>
<put-attribute name="content" value="login_form.jsp"></put-attribute>
</definition>
正确配置如下 :
<definition name="showWelcomePage" template="template.jsp">
<put-attribute name="menu" value="/menu_1.jsp"></put-attribute>
<put-attribute name="content" value="/login_form.jsp"></put-attribute>
</definition>
在value属性中,以"/"开头表示地址,如果不以“/”开头,则系统会默认为内容
3.执行增加操作时,直接对对象进行操作,对象中各字段值都正确,但插入数据库后乱码
解决办法(1)统一页面和数据库编码为utf-8
(2)修改hibernate的配置文件,修改url属性为:
jdbc:mysql:/127.0.0.1:3306/shop?useunicode=true&characterEncuoding=utf-8
4.could not create Query
原因:sql语句书写不正确
5.mysql数据库问题
mysql Error 1115号错误,utf编码
解决办法:
安装时编码采用默认的编码,安装成功后,再到安装路径下修改安装语言,修改mysql/my.ini文件。
6.在对对象进行删除操作时,如果对象中的某个字段不允许为空,则必须赋值,否则会提示:字段名not null等信息
7.在进行页面跳转时(从action中到页面,使用了模板),提示I/O异常
解决办法:tiles.xml文件中document题头没有书写正确
8.在进行页面跳转时,已经跳转到了相应的页面,但显示结果页面不正确。
解决办法:检查模板中的各个属性是否正确配置,尤其注意有的属性会忘记配置。
9.对日期类型数据进行操作
(1)配置文件中相对应的字段属性改为date
(2)pojo类中引用java.sql.date
10.Nosuchdefinition titles...
原因:tiles.xml文件中的配置有问题,尤其注意name属性
11.在服务器一启动,就会报“Filter error”等提示信息,项目无法建立
原因
1)struts.xml配置错误
1>package中extends错误
2>action中
12、No result defined for action ***Action and result success
这个错误产生的原因是,在struts.xml中配置没有配置success result。我的理解是action执行完后,必须产生一个result类。这个类可是servlet或是其他,但不能为空。
解决方法:增加result success定义。
<result>***.jsp</result>
13、No result defined for action ***Action and result input
这个错误,在提交数据时经常碰到。定义的struts2 intercept发挥了作用,当POJO类型与输入的类型不同时,intercept类会中止拦截,并返回输入页面。详细的错误可在使用<s:fielderror/>来获取。
解决方法:增加resut input定义。
<result name="input">***.jsp</result>
14、There is no Action mapped for namespace / and action name ***Action
可以直译为没有找到这个action,也就是说在struts.xml中没有定义这个action。这个错误一般是action的名字拼写错误造成的,请仔细检查struts.xml的定义与页面的acrion是否一致。
15、Class ognl.OgnlRuntime can not access a member of class ***Action with modifiers "private"
关键字是"private",action类中的字段为private,这样页面(如jsp)是无法访问到的,这也是struts2面向对象的一大特征。
解决方法:
在action中添加set get方法,这样struts会自访问这个方法。set get方法必须遵循bean的标准写法。
16、Exception starting filter struts2
未定变义struts-default。也package中加入extends="struts-default"
17、笔下之前遇到一个问题:报:Error building results for action admin_* in namespace
同时还报:Caused by: There is no result type defined for type 'redirectAction'
网上说是package元素里要加入extends="struts-default"属性,
但是package元素里有extends="struts-default"属性,之前很费解
最后修改redirectAction为redirect-action解决问题,个人估计是struts2版本的问题
<result name="checkSuccess" type="redirect-action">
总结:仔细看错误原因很重要,对症下药!
struts2常见错误的更多相关文章
- struts2.5框架使用通配符指定方法常见错误
struts2.5框架使用通配符指定方法(常见错误) 在学习struts框架时经常会使用到通配符调用方法,如下: <package name="shop" namespace ...
- 菜鸟调错(六)——Hibernate 4.3.x 注解常见错误及解决方案
编程的过程免不了遇到各种错误,各种问题,而遇到问题,解决问题的这个过程我认为是最让人兴奋的事情.越棘手的问题,解决以后带来的快感也越大.当一个问题你搞了一下午或者一天,甚至几天,当你解决的那一刻你会觉 ...
- 初识JAVA(二)(送给Java和安卓初学者)----常见错误
博主接着上篇的来讲哦,以后的更新中,博主会出一些练习题,有兴趣的可以做做然后吧代码粘贴到下面,大家可以一起研究学习,一起进步,本篇文章主要讲的是: 一.常见错误 二.连接上篇一起的训练 无论是什么方向 ...
- ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock
ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock 通过终端安装程序sudo apt-get install xxx时出错:E: Could not ...
- coreseek常见错误原因及解决方法
coreseek常见错误原因及解决方法 Coreseek 中文全文检索引擎 Coreseek 是一款中文全文检索/搜索软件,以GPLv2许可协议开源发布,基于Sphinx研发并独立发布,专攻中文搜索和 ...
- Android Fragment使用(二) 嵌套Fragments (Nested Fragments) 的使用及常见错误
嵌套Fragment的使用及常见错误 嵌套Fragments (Nested Fragments), 是在Fragment内部又添加Fragment. 使用时, 主要要依靠宿主Fragment的 ge ...
- C语言初学者代码中的常见错误与瑕疵(23)
见:C语言初学者代码中的常见错误与瑕疵(23)
- .Net常见错误
常见错误 #1: 把引用当做值来用,或者反过来 C++ 和其他很多语言的程序员,习惯了给变量赋值的时候,要么赋单纯的值,要么是现有对象的引用.然而,在C# 中,是值还是引用,是由写这个对象的程序员决定 ...
- WCF项目中出现常见错误的解决方法:基础连接已经关闭: 连接被意外关闭
在我们开发WCF项目的时候,常常会碰到一些莫名其妙的错误,有时候如果根据它的错误提示信息,一般很难定位到具体的问题所在,而由于WCF服务的特殊性,调试起来也不是那么方便,因此往往会花费不少时间来进行跟 ...
随机推荐
- snmp4j 之 ArgumentParser
ArgumentParser ArgumentParser命令行解析器 将数组转换成Java对象 根据预定计划选项和参数,以及相应的命令行选项联合每个对象 ArgumentParser argumen ...
- PHP和JS判断变量是否定义
PHP中: 通过isset(变量名)来判断,定义返回true/未定义返回false JS中: 通过typeof来判断.
- C# 使用FileUpload控件上传图片,将文件转换成二进制进行存储与读取
状况描述: 需要上传文件,但是不想要保存到实体路径下,便可以用该功能来实现. 效果图: 点击[Upload]按钮,上传文件到数据库: 点击[Preview],预览文件: 具体实现: 前台: <t ...
- 神奇的版本库—————GIT
表示是第一次接触这个东东,然后疯狂百度了一波资料,然而=-=,完全不敢相信居然百度出了,GIT是全球最大同性交友网站...... 简直有点毁三观呐..好吧,其实按道理来说,这么解释也没有错欸,官方说明 ...
- Java面向对象 集合(下)
Java面向对象 集合(下) 知识概要: (1)Map集合的体系结构 (2)Map集合的方法 (3)HashMap TreeMap (4)集合框架中的常用工具类 ( ...
- 使用IGP和BGP的配合达到降低路由容量目的的实验与总结
概述 1.先说结论,通过eBGP协议,可以显著降低对非核心路由器的路由容量要求,因为核心路由器的数量明显少于非核心路由器,所以,通过此措施即联通网络,又降低设备要求,非常适宜大型网络. 2.因为网络规 ...
- Hadoop(七)HDFS容错机制详解
前言 HDFS(Hadoop Distributed File System)是一个分布式文件系统.它具有高容错性并提供了高吞吐量的数据访问,非常适合大规模数据集上的应用,它提供了一个高度容错性和高吞 ...
- win10 uwp 兴趣线
本文讲的是如何去做一个时间轴样子的东西但我们放的不一定是时间,可能是我们的时间.我把它放在我的CSDN阅读,我的界面做出来很差,但是应该读者能做出很漂亮的. 行间距 我们在ViewModel写一个Ob ...
- 解析 .Net Core 注入 (2) 创建容器
在上一节的学习中,我们已经知道了通过 IServiceCollection 拓展方法创建 IServiceProvider 默认的是一个类型为 ServiceProvider 对象,并且实际提供创建对 ...
- 【转】ARM vs X86 – Key differences explained!
原文:http://www.androidauthority.com/arm-vs-x86-key-differences-explained-568718/ Android supports 3 d ...