我的情况是
点击查看文章的Action namespace是article,(地址:http://localhost:8086/aoao/article/get.action) 跳转到A页面,在A页面文章下面有个发表评论的表单,namespace是comment,
当我点击发表评论时候他的Action是 http://localhost:8086/aoao/article/comment/save.action 他把文章的namespace也带进来了,Comment的action就找不到了。
这如何是好啊?
点击查看文章的Action namespace是article,(地址:http://localhost:8086/aoao/article/get.action) 跳转到A页面,在A页面文章下面有个发表评论的表单,namespace是comment,
当我点击发表评论时候他的Action是 http://localhost:8086/aoao/article/comment/save.action 他把文章的namespace也带进来了,Comment的action就找不到了。
这如何是好啊?
解决方案 »
- SSH整合action无法实例化,求救啊!大神路过的一定要进来看看!
- java中怎么抓取去哪儿网站上的航班和价格
- SQL转换为IBATIS
- bat运行jar文件问题。
- java 如何继续进阶???
- Axis2开发的WebService调用的时候是否可以去掉URL后面的?wsdl来调用啊
- 请教 :::JSF
- JAVA 怎么部署一个稳定,支持大量用户在线的服务器
- 为啥我的JSP网站访问时,浏览器地址后面总是跟jsessionid=xxxxxx呢?
- spring注入多个远程sessionbean,调用其多个方法,如何控制事务
- form提交时name是动态的在action该怎么获取
- 如何将从数据库的数据用struts2的标签显示出来?
加了命名空间啊···
http://localhost:8086/aoao/article/comment/save.action不然地址也不会带上comment
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><base href="<%=basePath%>">
所有链接都用了basePath,如果不用basePath我的地址访问一次就会加上一个namespace,
<%@ include file="/WEB-INF/jsp/common.jsp"%>
<html>
<head>
<body>
<div id="comage">
<jsp:include page="header.jsp" />
<div id="content"> <span>${article.title} </span>
<br />
<span><s:date name="createDate" format="yyy-MM-dd hh:mm:ss" />
</span>
<div class="divcontent">
${article.content}
</div>
<hr>
<!-- 评论 -->
<div class="imagespinlun">
<h1>
评论
</h1>
<s:form action="save" namespace="comment" theme="simple">
<div class="neirong">
<span class="capt">昵称:</span>
<s:textfield name="comment.guestName" />
<p />
<s:textarea name="comment.content" cols="60" rows="5" />
<input type="hidden" name="comment.articleId" value="${article.id}">
</div>
<div>
<s:submit value="发表" />
</div>
</s:form>
</div>
<!-- 评论 end -->
</div>
<jsp:include page="category_list.jsp" />
<jsp:include page="footer.jsp" />
</div>
</body>
</html>
把
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%><base href="<%=basePath%>">加到A页面试试吧。。
<%@ include file="/WEB-INF/jsp/common.jsp"%>
我在这个页面引用了basePath
<%@ page language="java" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="p" uri="/WEB-INF/tld/pager-taglib.tld"%>
<% String path = request.getContextPath();
String webPath = request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + path + "/";
request.setAttribute("webPath", webPath);
%>
<base href="<%=basePath%>">
request.setAttribute("webPath", webPath); //你在这一块,没必要把bathpath改成webPath,既然你改成了webPath,那么在设置base时要用:
<base href="<%=webPath%>">