簡體   English   中英

為什么內部化不適用於 JHIpster 微服務應用程序

[英]Why internalization is not working with JHIpster Microservices application

我使用 jhipster 工具開發了一個 spring 啟動微服務應用程序,我們有一個報價。html 形式包含產品的名稱和詳細信息我正在嘗試將語言翻譯應用於基於用戶語言的名稱和詳細信息標簽

為此,我對這些課程進行了更改

 @Configuration
    public class LocaleConfiguration implements WebMvcConfigurer {
    
        @Bean
        public LocaleResolver localeResolver() {
            SessionLocaleResolver slr = new SessionLocaleResolver();
            slr.setDefaultLocale(Locale.US);
            return slr;
        }
        
        @Bean
        public LocaleChangeInterceptor localeChangeInterceptor() {
        LocaleChangeInterceptor lci = new LocaleChangeInterceptor();
            lci.setParamName("lang");
            return lci;
        }
        
        @Override
        public void addInterceptors(InterceptorRegistry registry) {
        registry.addInterceptor(localeChangeInterceptor());
        }
        
    }

在此位置添加語言消息文件

在此處輸入圖像描述

我像這樣發送用戶語言密鑰作為請求參數

localhost:8080/api/pord/quotation?lang=de基於這個 lang 值,它應該從各自的消息文件中讀取密鑰

注意:問題是它總是從 messages_en.properties 文件中讀取語言鍵

樣品報價.html 文件

<!DOCTYPE HTML>
<html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org">
<body>

    <div class="page-content container-fluid">
        <div class="title">
            <h3>
                <center>
                    <th:block>
                        <span th:text="#{invoice.quotation}"></span >
                    </th:block>
                  </center>
              </h3
    </div>
</body>
</html>

查看src/main/resources/templates/error.html模板,它包含th:lang="${#locale.language}"而您的模板不包含。

它可能不是解決方案,但它會通過顯示語言的價值來幫助調試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM