struts2 jsp页面提交是,命名空间重复出现
前台的Jsp页面 book.jsp部分代码
<div class="header1">
<a href="home_page.action" class="STYLE2">首页</a> |
<a href="user/shop.action?currentPage=1" class="STYLE2">商铺</a> |
<a href="user/book.action?currentPage=1&catalogId=1" class="STYLE2">考试/教育</a> |
<a href="user/book.action?currentPage=1&catalogId=2" class="STYLE2">文学艺术</a> |
<a href="user/book.action?currentPage=1&catalogId=3" class="STYLE2">经济管理</a> |
<a href="user/book.action?currentPage=1&catalogId=4" class="STYLE2">生活</a> |
<a href="user/book.action?currentPage=1&catalogId=5" class="STYLE2">人文社科</a> |
<a href="user/book.action?currentPage=1&catalogId=6" class="STYLE2">计算机</a> |
<a href="user/book.action?currentPage=1&catalogId=7" class="STYLE2">少儿</a> |
<a href="user/book.action?currentPage=1&catalogId=8" class="STYLE2">女性</a> |
<a href="user/message.action?currentPage=1" class="STYLE2">留言板</a>
</div>
struts.xml片段如下
<struts>
<package name="user" extends="struts-default" namespace="/user">
<!--书籍-->
<action name="book" class="org.action.BookAction" method="book">
<result name="success">/WEB-INF/jsp/user/book.jsp</result>
</action>
</package>
每次点击上面的中文连接后,浏览器的连接出现命名空间重复问题,如下:
http://localhost:8080/bookstore/
user/user/user/user/user/user/book.action?currentPage=1&catalogId=5
就是你每点击一次页面的action,命名空间user就会叠加一次,这个问题怎么解决?
------解决方案--------------------LZ的配置没有问题,页面写法有问题。
给你一种写法看看好用不。
<s:url id="idUrl" action="book" namespace="/user">
<s:param name="currentPage">1</s:param>
<s:param name="catalogId">1</s:param>
</s:url>
<s:a href="%{idUrl}" cssClass="STYLE2">考试/教育</s:a>
------解决方案--------------------
看你的配置是没有什么问题的,放在web-inf下容易打乱程序结构,降低可维护性,所谓的提高安全性完全可以由过滤器来实现。
去掉namespace后,struts会统一管理这些package以及其下面的action,访问的时候struts会查找package下的对应的action
另外,第一次访问的时候url里是不是有两个user?以后每点一次就增加一个user?
我觉得还是你在页面里访问action时加user的问题,6楼的方法你可以尝试下
只能说这么多了,希望对你有帮助或者有大虾献策