总结SSH阶段常见异常系列之三struts2

来源:互联网 发布:cf刷军衔软件 编辑:程序博客网 时间:2024/05/16 17:00

总结SSH阶段常见异常系列之三struts2(10条)

异常一

异常描述: valueStack.set(“list”,list);放到值栈中的对象在页面中取不到
异常信息: 无
异常原因: 页面中获取值栈对象的语句不规范

解决方案: 规范为

异常二

异常描述: 使用拦截器实现未登录无法操作内容的功能.
异常信息: 无
异常原因: 自定义拦截器中写错方法return login.jsp;
解决方案: 放行的是login方法不是放行到页面return actionSupport.LOGIN;

异常三

异常描述: 使用ognl获取随机数的时候,控制台可以打印出结果,但是报错。

异常信息: ognl.ExpressionSyntaxException: Malformed OGNL expression: @random() [ognl.ParseException: Encountered ” “(” “( “” at line 1, column 8.
Was expecting one of:
“.” …
“@” …
]
at ognl.Ognl.parseExpression(Ognl.java:112)
at ognl.Ognl.getValue(Ognl.java:596)
at ognl.Ognl.getValue(Ognl.java:566)
at cn.itcast.web.test.OgnlDemo.Demo1(OgnlDemo.java:20)
异常原因: 支持类静态的方法调用和值访问,表达式的格式:
@[类全名(包括包路径)]@[方法名 | 值名]

解决方案: 在使用的random()前加上包名@java.lang.Math@random()

异常四

异常描述: ClassNotFoundException:找不到类异常
找不到StrutsPrepareAndExecuteFilter这个类
异常信息: java.lang.ClassNotFoundException: org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
异常原因: 在web.xml配置文件里配置该类但没有添加jar包
解决方案: 把struts依赖jar包导入到lib下

异常五

异常描述: ConfigurationException:配置异常
找不到Action Hello3Action这个类。
异常信息: Caused by: com.opensymphony.xwork2.config.ConfigurationException: Action class [cn.itcast.web.action.Hello3Action] not found
异常原因: Hello3Action这个包名错误
解决方案: 复制Hello3Action全路径放到struts.xml配置文件 class里 .

异常六

异常描述: result name为success 映射里的type 为rede没有被定义。
异常信息: There is no result type defined for type ‘rede’ mapped with name ‘success’. Did you mean ‘rede’?
异常原因: 在result 标签里 type=”rede” 这是没有被定义的
解决方案: 把type=”rede”去掉

异常七

异常描述: 转发初始化失败:不能加载配置,获得相应的动作,文件在/E:/java/apache-tomcat-7.0.52/webapps/day39_struts/WEB-INF/classes/struts.xml,造成的原因是action没有在struts.xml配置文件中找到
异常信息: Dispatcher initialization failed
Unable to load configuration. - action - file:/E:/java/apache-tomcat-7.0.52/webapps/day39_struts/WEB-INF/classes/struts.xml….
Caused by: Action class [web.action.CustomerStruts.java] not found - action - file:/E:/java/apache-tomcat-7.0.52/webapps/day39_struts/WEB-INF/classes/struts.xml
异常原因: 在编写struts.xml配置文件中给定的访问路径class是一个完成的路径资源名称,后缀还有.java,这个是不对的
解决方案: 需要将.java后缀名去掉,程序才能正常访问

异常八

异常描述: 异常开始在过滤器 stuts2中,不能去加载配置-不知道的位置,造成的原因是不能去加载配置,不知道位置
异常信息: Exception starting filter struts2
Unable to load configuration. - [unknown location]
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:493)
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:74)……
Caused by: Unable to load configuration. - [unknown location] at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:70)
异常原因: 在进行struts.xml文件的配置过程中,把该配置文件放到了,com.itcast.web包下,导致程序不能正常加载配置文件
解决方案: 将strust.xml重新放到src目录下,让程序自动加载配置文件,问题可以解决

异常九

异常描述: 映射文件查找不到异常:映射文件找不到:在/domain/bibernate.hbm.xml 中
异常信息: org.hibernate.boot.MappingNotFoundException: Mapping (RESOURCE) not found : /domain/bibernate.hbm.xml : origin(/domain/bibernate.hbm.xml)
异常原因: 整合struts2 没有引入hibernate.cfg.xml主配置文件,导致程序不能处理加载运行
解决方案: 重新引入hibernate.cfg.xml主配置文件

异常十

异常描述: 不能加载struts的核心配置文件struts.xml.该异常发生在:/E:/workspaces/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/TestDemo39/WEB-INF/classes/struts.xm;
异常信息: Exception starting filter struts2
Unable to load configuration. - action - file:/E:/workspaces/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/TestDemo39/WEB-INF/classes/struts.xml:17:66
at org.apache.struts2.dispatcher.Dispatcher.init(Dispatcher.java:493)
at org.apache.struts2.dispatcher.ng.InitOperations.initDispatcher(InitOperations.java:74)
at org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter.init(StrutsPrepareAndExecuteFilter.java:57)
at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:279)
at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:260)
at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:105)
at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4809)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5485)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
Caused by: Unable to load configuration. - action - file:/E:/workspaces/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/TestDemo39/WEB-INF/classes/struts.xml:17:66
at com.opensymphony.xwork2.config.ConfigurationManager.getConfiguration(ConfigurationManager.java:70)
at org.apache.struts2.dispatcher.Dispatcher.getContainer(Dispatcher.java:967)
异常原因: Eclipse环境异常,代码没有异常,由于eclipse不能自动编译,不能及时生成新的字节码。
解决方案: 选择eclipse的project–clean—选择项目,在重新启动tomcat 即可。

0 0