如何获得百里香的内容路径?

时间:2018-04-03 13:01:03

标签: java jquery spring-boot thymeleaf

我有一个使用springboot 1.5.10,eclipse IDE和Thymeleaf的项目。

在几个页面中,我在jquery中有这样的重定向:

例如:在选择选项

$('#month').on('change', function() {

    window.location = "/dashboard/operation/month/" + month;
})

例如:在按钮中

$('#bFind').click(function() {
  var newUrl = "/dashboard/operation/month/";
  newUrl += month;
  $('a').attr('href', newUrl);
});

两个重定向在我的控制器中都有很好的定义。

网址是:  http://localhost:8080/dashboard/operation/month/01

但问题是当我创建一个war项目在我的apache tomcat 9.0.6中部署它时,我必须给出一个名称来部署。

部署网址后:  http://localhost:8080/mywebapp/dashboard/operation/month/01

它打破了这些东西......

mywebapp 可能是另一个名字。

所以我一直在寻找添加上下文路径:

我找到的主要信息是:

What is the Syntax to get Thymeleaf ${pageContext.request.contextPath}

但是当我将此添加到may header.html文件时,我总是未定义

<meta name="ctx" th:content="${#httpServletRequest.getContextPath()}" />

可能还有另一种方法可以正确添加上下文路径。

有什么建议吗?

由于

1 个答案:

答案 0 :(得分:1)

https://www.thymeleaf.org/doc/articles/standardurlsyntax.html

也许试试这个:

<meta name="ctx" th:content="@{/}" />

如果上下文是localhost:8080,则输出

<meta name="ctx" content="/" />

但是如果你的上下文是localhost:8080 / mywebapp,它将输出

<meta name="ctx" content="/mywebapp/" />