运行的时候出现页面直接出现error500, NoSuchMethodError: org.apache.struts.config.ForwardConfig.getContextRelative()错误...org.apache.struts.config.ForwardConfig.getContextRelative()Z
at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:293)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:232)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
at org.apache.struts.tiles.TilesRequestProcessor.processForwardConfig(TilesRequestProcessor.java:293)
at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:232)
at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1913)
at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:462)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:763)
解决方案 »
- div隐藏与展现
- ssh整合之后页面报奇怪的问题,见鬼了
- 一个关于Hibernate的update方法的问题!
- jsp 读文件内容并返回内容给一个字符串而不是直接打印
- ###要在JSP中只显示数据库中的最后一条纪录.应该如何解决?多谢!!###
- 选哪个《java web 编程指南》和《JSP设计》(Hans Bergsten著)
- How deal With JavaBean ? First Use JavaBean Thanks
- 怎么将String型转换成double型
- 办公自动化用什么做比较合适?
- JSP不支持MS SQL Server bigint类型?
- .0 字符
- Connection对象关闭后还能创建Satement对象吗?
然后.....方法没有就报错了.
看有没有getContextRelative方法,如果没有就换一个包
如果有这个方法,可能其他的包里面的类和这个有冲突,需要排查
你不会是直接用类名调用的吧,getContextRelative()不是表态的方法,
要先实例化对象,通过对象才能调用
而有module.研究了很久,原理是服务器调用了ContextRelative这个变量.而在struts1.3.8中没有.但是我在struts.jar中倒是找到了同样的类,而且包含有
这个方法和变量.我找了所有struts,原来在struts1.2.9以后版本就没有办法这个变量,而被module替代了.
我该如何是好?
感觉和以前的代码都没有什么区别啊.为什么服务器突然调用contextrelative这个变量?而且我的struts-config.xml里面的代码和从前并
没有什么差别.谁能解释ContextRelative和module倒是有什么区别,一般写了什么代码会调用ContextRelative呢?我想改一下代码,又不知道哪里调用了.
现在连以前的代码允许都出现这个错误.
还是贴代码吧
Struts 版本:1.3.8 api
http://struts.apache.org/1.3.8/apidocs/index.htmlstruts 版本: 1.2.9 api
http://struts.apache.org/1.2.9/api/index.html
确实是变量.只不过是get set方面而以.不过
这个应该forward这个struts-config.xml有关.
之所以这里会报错,应该是你放了2个不同版本的jar包吧只留下一个版本的jar应该就可以了
出现这个问题应该是
加载类的时候org.apache.struts.action.RequestProcessor加载的是1.2.9的
org.apache.struts.config.ForwardConfig是1.3.8的
----
你的编译器的builtpath中包的顺序不一样,就有可能导致加载的方式也不一样,有可能2个包的位置调换一下,就不报错了,
为了避免这种不确定性,需要消除项目中有冲突的包
in another server is not working. I don't know how to fix it?