struts2中iterator迭代里调用action时命名空间问题
struts.xml配置了一个namespace<package name="com" namespace="/mess" extends="struts-default">
<action name="Mess_*" class="com.MessAction" method="{1}">
<result name="success">/Mess{1}.jsp</result>
</action>
</package>
页面中使用<a href="<s:url action="mess/Mess_Content">
<s:param name="noticeId" value="1">
</s:param>
</s:url>">
test3</a>
可以成功输出
在iterator迭代里写<s:url action="mess/Mess_Content">运行时报错,查看URL为http://localhost:8080/hello/mess/mess/Mess_Content.action?noticeId=0,多了个/mess/
改成
<s:iterator value="messForm" status = "status">
<tr>
<td><a href="
<s:url action="Mess_Content">
<s:param name="noticeId" value="%{#status.index}">
</s:param>
</s:url>">test"/>
</a></td>
</tr>
</s:iterator>
就可以成功输出了
我想问下为什么迭代里不写action的命名空间? --------------------编程问答-------------------- action="mess/Mess_Content"这个不是所谓的命名空间啊,你这个就是个相对路径
命名空间是namespace struts里有namespace,action对应的就是action的名字 --------------------编程问答-------------------- 还是不懂。。。
为什么在iterator里不用加“/mess/”,其他时候加呢?
补充:Java , Java EE