日期:2014-05-19  浏览次数:20684 次

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[color=#FF0000][/color]/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>
------解决方案--------------------
探讨

引用:

你在struts_user.xml中的package中的namespace去掉,a标签中直接写xxx.action,另外建议你不要把jsp文件放在web-inf下,直接在webroot下建一个文件夹比如book专门存放jsp页面,然后在配置action的跳转时换成
<result name="success">/book/showUser……