Struts中使用ForwardAction的问题(急死了,在线等了。。。。。。)

c03130223 2009-04-04 04:39:21
配置:
<action path="/test"
type="org.apache.struts.actions.ForwardAction"
parameter="/test2.jsp">
</action>

test.jsp 中就一句话:<a href="test.do">test2</a>
test2.jsp中也一句话: test2

想通过ForwardAction从test.jsp转向test2.jsp以保持struts的MVC风格,
就这样还报错:
java.lang.NoSuchMethodError: org.apache.struts.config.ForwardConfig.setContextRelative(Z)V
org.apache.struts.actions.ForwardAction.execute(ForwardAction.java:103)
org.apache.struts.chain.commands.servlet.ExecuteAction.execute(ExecuteAction.java:53)
org.apache.struts.chain.commands.AbstractExecuteAction.execute(AbstractExecuteAction.java:64)
org.apache.struts.chain.commands.ActionCommandBase.execute(ActionCommandBase.java:48)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.commons.chain.generic.LookupCommand.execute(LookupCommand.java:304)
org.apache.commons.chain.impl.ChainBase.execute(ChainBase.java:190)
org.apache.struts.chain.ComposableRequestProcessor.process(ComposableRequestProcessor.java:280)
org.apache.struts.action.ActionServlet.process(ActionServlet.java:1858)
org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:446)
javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
...全文
140 14 打赏 收藏 转发到动态 举报
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
c03130223 2009-04-06
  • 打赏
  • 举报
回复
但是2楼说的用DispatchAction定义一空方法来转向,
确实是一个很好的方法
支持~~~
c03130223 2009-04-05
  • 打赏
  • 举报
回复
问题已经解决,是我将包引入重了,我用MyEclipse引入一次,又人为的加入了struts包

移除人为加的struts包后,就OK了。。。

不过还是谢谢各位的点拨O(∩_∩)O~
Study_Work_2009 2009-04-05
  • 打赏
  • 举报
回复
去掉parameter="/test2.jsp"去看看
Eric_Yu_Nupt 2009-04-05
  • 打赏
  • 举报
回复
楼主需要将STRUTS再看一边。同意8楼
c03130223 2009-04-04
  • 打赏
  • 举报
回复
哦,你没懂我的意思,
ForwardAction类是系统的,我怎么改它,要改我还不如自己写一个Action
lzhlkl 2009-04-04
  • 打赏
  • 举报
回复
<action path="/test" type="org.apache.struts.actions.ForwardAction">
<forward name="unameError" path="/user_info.jsp"></forward>
</action>

将返回值改为mapping.findForward("unameError");就OK了
c03130223 2009-04-04
  • 打赏
  • 举报
回复
你那里可以正常转向吗?
你加了哪些个JAR包呀?
c03130223 2009-04-04
  • 打赏
  • 举报
回复
这个和
<action path="/test"
type="org.apache.struts.actions.ForwardAction"
parameter="/test2.jsp">
</action>
有区别吗?
montao 2009-04-04
  • 打赏
  • 举报
回复

<action path="/Manage/newUser" type="org.apache.struts.actions.ForwardAction" parameter="/Manage/sysbase/userForm.jsp"/>


看看我这个
c03130223 2009-04-04
  • 打赏
  • 举报
回复
org.apache.struts.actions.ForwardAction
这是系统自带的,用于转向的Action
铑枪--突廆孒 2009-04-04
  • 打赏
  • 举报
回复
单词有可能写错,以实际为准,免得说我在乱说,嘿嘿
铑枪--突廆孒 2009-04-04
  • 打赏
  • 举报
回复
常用的:DispathAction---parameter="方法名"
MappingDispathAction----把调用的方法名放到request请求参数里边。parameter="请求参数名",这样后就会调用request参数里边指定参数值的方法

LookupDiapshtAction---与国际化有关,把相关东西放到配置文件里边,这个不太记得了。。。
铑枪--突廆孒 2009-04-04
  • 打赏
  • 举报
回复
org.apache.struts.actions.ForwardAction
你这个类是继承至哪个类的?
在<Action里边配置parameter="XXX"
如果你是继承至dispathAction,这个XXX就是你的方法名。
如果是其它的话,你可以到网上找下。因为 Action有好几个子类,我们一般都是继承至 这几个子类,其中有几个要在struts的配置里边配置相关的参数。如调用方法名(上边我写的),或调用请求中的某个参数值来做方法名(parameter="参数名")等等,如果你要明白他的原理的话,最好看下Action子类的源代码,你看下他的execute方法里边反射是怎么写的,这样你就应该能知道该如何配置其参数了

81,111

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧