获取Thymeleaf @ {}表达式以附加区域设置

时间:2014-10-23 13:28:01

标签: spring spring-mvc thymeleaf

我的上下文路径为/,我正在直接添加区域设置作为路径的一部分:/de/index.html

现在我遇到th:href="@{/login.html}"将解析为/login.html而不是/de/login.html的问题。

我已经尝试制作过滤器和拦截器,就像他们在这里做的那样:https://stackoverflow.com/a/23847484/1163457

但它仍然不会在上下文路径之后附加de/

编写我自己的方言和属性处理器将是一个解决方案,但是没有更好的方法吗?

2 个答案:

答案 0 :(得分:1)

为什么不公开区域设置的模型属性(例如curLocale)并重新定义所有网址,例如

th:href="@{/${curLocale}/login.html}"

Thymeleaf允许在url表达式中使用其他表达式。 可以通过方法参数或通过调用RequestContext.getLocale()

轻松访问区域设置信息

答案 1 :(得分:0)

经过数小时的逐步调试,我自己找到了一个干净且好的解决方案: https://stackoverflow.com/a/60103777/1163457