我有一個傳統的Spring4/Thymeleaf國際化應用 我與經典彈簧及Thymeleaf:改變語言環境和停留在當前頁面
org.springframework.web.servlet.i18n.LocaleChangeInterceptor
和
org.springframework.web.servlet.i18n.CookieLocaleResolver
當切換我輕鬆切換語言環境總是發送到服務器/home?lang = fr。它工作正常。但我需要一個更復雜的行爲。 我需要做的是在切換語言環境時保留當前頁面。
我發現這個thymeleaf片斷半工作解決方案:
th:with="currentUrl=(${#httpServletRequest.pathInfo + '?' + #strings.defaultString(#httpServletRequest.queryString, '')})
的問題是我需要實現我自己許多其他的情況:
- 時已經有任何查詢參數
- 如果有lang = en param,
- 等
是否有人知道如何與本地 Spring或Thymeleaf工具來管理這種情況?或者我需要爲Thymeleaf編寫我自己的處理器?
你有你在哪裏檢驗一個示例應用程序這個功能出來了?很高興能夠對已經安裝的項目進行嘗試並找到解決方案。我猜你的語言選擇器顯示爲每頁上的頁眉或頁腳。我會設置一些攔截器,它爲包含當前頁面的URL的模型添加一個值。然後該模板只負責輸出這些語言特定的網頁。 –