Ror*_*ory 0 java spring web.xml spring-mvc
我正在更改一个项目,该项目在端口8080上使用简单的java HTTPServer到使用Spring MVC servlet框架的项目.
应用程序中有很多链接,如下所示:
<a href=\"/rule\">Manage rules</a><br/>
Run Code Online (Sandbox Code Playgroud)
使用以下请求可以正常工作:
http://localhost:8080/send
Run Code Online (Sandbox Code Playgroud)
但是,这些现在不起作用,除非我把servlet名称放在前面,如下所示:
"<a href=\"/ServletName/rule\">Manage rules</a><br/>"
Run Code Online (Sandbox Code Playgroud)
只是想知道有没有办法解决这个问题,或者仅仅是改变所有href链接以在它们面前添加servlet名称?
请注意,我不必在方法开头的@RequestMapping调用中添加servlet名称,它唯一的链接就是问题.例如,这可以正常工作,而无需在前面添加servlet名称
@RequestMapping(value = "/send", method = RequestMethod.GET)
Run Code Online (Sandbox Code Playgroud)
如果在视图层中使用JSP,请使用具有链接标记的标记库(或自己编写一个).基本上,链接标记必须通过执行来创建URL
HttpServletResponse.encodeURL(originalUrl)
Run Code Online (Sandbox Code Playgroud)
<c:url>JSTL中的标记可以做到这一点,但它只生成URL,而不是链接标记,但它可以像这样:
<c:url value="your/relative/url" var="somevar" />
<a href="${somevar}">Link Text</a>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5072 次 |
| 最近记录: |