黑马程序员技术交流社区

标题: 【上海校区】Struts错误汇总 [打印本页]

作者: 小影姐姐    时间: 2018-4-24 15:55
标题: 【上海校区】Struts错误汇总
Struts错误汇总
1. 前端控制器配置错误
原因:web.xml配置错误
解决方案:检查两个<filter-name>struts</filter-name>名称是否一致
2. Struts.xml配置问题
问题:显示struts.xml配置错误
解决方案:解决提示的第20行是否配置有误
3. Action标签class属性配置错误
问题:找不资源
原因:在action标签中的class属性的路径配置错误
解决方案:检查action类的全路径和struts.xml中的action标签中的class属性中的路径是否一致。
4. Action错误
4.1. 没有配置action错误
问题:找不到action
解决方案:检查struts.xml中action标签配置的name值和请求路径中的是否一致。
4.2. 没有配置actoin错误2
原因:在struts.xml中的action标签中没有配置name=valuestack的名称。
解决方案:查看struts.xml中action标签中的name属性是否有配置或者配错了。
5. 结果集错误
5.1. 结果集错误1
问题:找不到result结果集
解决方案:检查struts.xml中配置的result结果集标签中的name值和action中返回的结果集视图名称是否一致
5.2. 结果集错误2
原因:没有配置success结果集
解决方案:查看struts.xml是否配置success结果集
5.3. 结果集错误3
原因:字段校验错误,没有配置input视图结果集
解决:方案,在struts.xml中配置input视图结果集,并在jsp页面配置错误提示—s:fielderror/
6. 路径错误
原因:没找到jsp页面
解决方案:查找页面是否存在或者路径错误,还有可能是没有配置前端控制器
7. 访问指定方法错误
原因:没有login1方法,或者方法名写错
解决方案:检查指定访问的方法是否存在
8. Struts启动报错
Java.lang.UnsupportedClassVersi:org/apache/nutch/crawl/Crawl3 : Unsupported major.minor version 51.0 at java.lang.ClassLoader.defineClass1(Native Method) at java.lang.ClassLoader.defineClassCond(Unknown Source) at java.lang.ClassLoader.defineClass(Unknown Source) at java.security.SecureClassLoader.defineClass(Unknown Source) at java.NET.URLClassLoader.defineClass(Unknown Source) at java.Net.URLClassLoader.access$000(Unknown Source) at java.net.URLClassLoader$1.run(Unknown Source) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source) at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at java.lang.ClassLoader.loadClass(Unknown Source)Exception in thread "main"
如果在win7下开发项目是使用的jdk版本和项目运行服务器jdk版本不同就会出现上面的问题。
解决方法:我将win7下的jdk重装为jdk1.6,然后将项目的Java** **compiler改为jdk1.6,对项目进行重新编译问题就解决了。
修改项目java compiler的方法:在项目点右键->选择Perperties->在出现的菜单中选择Java Compiler->最上面选中Enable projectSpecific setting->然后将jdk改为jdk1.6->完成。
9. 空指针错误
User对象报空指针
原因:user没有初始化
解决方案:user初始化一下
10. 配置input结果集获取不到错误信息
原因一:页面没有配置s:acti标签
原因二:结果集重定向导致
错误信息是被保存在值栈中的,一旦重定向发送第二次请求,值栈就是第二次请求发送是创建的一个新的值栈了,里面没有之前的数据,因此导致获取不到数据。
11. Struts.xml标签顺序错误
在配置struts.xml中可能会发生标签顺序配置错误,报错如下:
原因:标签的配置顺序错误了
解决方案:鼠标悬停在package标签上,按提示来配置即可。
12. $-国际化文件获取值栈数据错误
页面报错:
控制台报错:
原因:struts.xml中result配置了重定向导致第二次发送请求时国际化文件中无法利用${ProductName}从值栈获取到数据,因此提示解析错误。
解决方案:将重定向去掉即可
13. 文件下载找不到action问题
download在struts中是个关键字,因此在使用struts.xml配置名称的时候最好不要用,比如:
否则报错如下:
14. 无法下载文件
问题:没有返回结果集,并且设置结果集类型为stream
解决方案:确定返回的结果集视图的类型是stream
15. s:hidden标签问题
在写编辑页面时,需要设置一个隐藏标签,该隐藏标签不需要设置value,这是一个通用标签,利用name属性的ognl表达式直接就可以获取数据了
如果如上设置的话会报错如下:提示字段错误
原因是现在的value值其实有两个,一个是从值栈获取的用户ID,比如:8 还有一个是字符串类---userID,因为这个标签的value并不是ognl表达式
解决方案:
1、 将value去掉
2、 强制解析






欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2