当前位置:编程学习 > JAVA >>

求解一个很莫名其妙的 struts2 通配符 重定向的问题

<package name="user" namespace="/user" extends="struts-default">
<interceptors>
<interceptor-stack name="newStack">
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="token">
<param name="includeMethods">save</param>
</interceptor-ref>
</interceptor-stack>
</interceptors>
<action name="UserAction_*" class="cn.com.action.UserAction" method="{1}">
<result name="add">/user/add.jsp</result>
<result name="list">/user/list.jsp</result>
<result name="edit">/user/edit.jsp</result>
<result name="input">/user/error.jsp</result>
<result name="invalid.token">/user/error.jsp</result>
 <result name="listAction" type="redirectAction">
<param name="actionName">UserAction_list</param>
<param name="namespace">/user</param>
</result>
重定向那边 总是 显示错误 action UserAction_list cannot be found namespace /user
目前来看  编辑器 报错 但是 页面运行 按结果返回 走这条线 确很正常 也不报错 怎么办  总不能红叉放在那 不管吧  struts2 --------------------编程问答-------------------- 总不能红叉放在那 不管吧

程序里没有红叉这个概念,那是你IDE的红叉。
放那里不管怎么了?你有没有能力判断代码正确与否? --------------------编程问答-------------------- 把请求URL发来看看,<package name="user" namespace="/user" extends="struts-default">
这里不是定义了namespace么为什么参数还要加<param name="namespace">/user</param>
把这行去了。 --------------------编程问答-------------------- <param name="actionName">UserAction_list</param>
<param name="namespace">/user</param>

是不是顺序错了。 我习惯都是<param name="namespace">在第一个。 求解释,我也关注这个问题 --------------------编程问答--------------------
引用 2 楼 u010684923 的回复:
把请求URL发来看看,<package name="user" namespace="/user" extends="struts-default">
这里不是定义了namespace么为什么参数还要加<param name="namespace">/user</param>
把这行去了。

+1
--------------------编程问答--------------------
引用 2 楼 u010684923 的回复:
把请求URL发来看看,<package name="user" namespace="/user" extends="struts-default">
这里不是定义了namespace么为什么参数还要加<param name="namespace">/user</param>
把这行去了。

没有用  --------------------编程问答--------------------
引用 5 楼 u011818610 的回复:
Quote: 引用 2 楼 u010684923 的回复:

把请求URL发来看看,<package name="user" namespace="/user" extends="struts-default">
这里不是定义了namespace么为什么参数还要加<param name="namespace">/user</param>
把这行去了。

没有用 

你把你的url发来看看嘛,
要不你干脆param都不要,就象前面的用<result>url</result> --------------------编程问答-------------------- UserAction_* 下划线是个bug吧! --------------------编程问答-------------------- <package name="user" namespace="/user" extends="struts-default">
<interceptors>
<interceptor-stack name="newStack">
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="token">
<param name="includeMethods">save</param>
</interceptor-ref>
</interceptor-stack>
</interceptors>
<action name="UserAction_*" class="cn.com.action.UserAction" method="{1}">
<result name="add">/user/add.jsp</result>
<result name="list">/user/list.jsp</result>
<result name="edit">/user/edit.jsp</result>
<result name="input">/user/error.jsp</result>
<result name="invalid.token">/user/error.jsp</result>
 <result name="listAction" type="redirectAction">//红颜色是不是应该改成list? 为什么是listAction呢?
<param name="actionName">UserAction_list</param>
<param name="namespace">/user</param>
</result> --------------------编程问答--------------------
引用 8 楼 u010131956 的回复:
<package name="user" namespace="/user" extends="struts-default">
<interceptors>
<interceptor-stack name="newStack">
<interceptor-ref name="defaultStack"/>
<interceptor-ref name="token">
<param name="includeMethods">save</param>
</interceptor-ref>
</interceptor-stack>
</interceptors>
<action name="UserAction_*" class="cn.com.action.UserAction" method="{1}">
<result name="add">/user/add.jsp</result>
<result name="list">/user/list.jsp</result>
<result name="edit">/user/edit.jsp</result>
<result name="input">/user/error.jsp</result>
<result name="invalid.token">/user/error.jsp</result>
 <result name="listAction" type="redirectAction">//红颜色是不是应该改成list? 为什么是listAction呢?
<param name="actionName">UserAction_list</param>
<param name="namespace">/user</param>
</result>

红色是返回值 叫什么都可以的 只是个标志 根据标志 走指定的流程   --------------------编程问答-------------------- 那就说明你要跳转的那个action不在user这个namespace下。 --------------------编程问答--------------------
引用 1 楼 forgetsam 的回复:
总不能红叉放在那 不管吧

程序里没有红叉这个概念,那是你IDE的红叉。
放那里不管怎么了?你有没有能力判断代码正确与否?

想想 从其他层次看 还是有道理  
补充:Java ,  Java EE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,