【问题标题】:Problem changing language application更改语言应用程序的问题
【发布时间】:2010-11-10 10:00:38
【问题描述】:

正如我之前在this question 中询问的那样,我使用这种方法解决了我的问题:

  1. loging.xhtm中,例如:

    <f:view locale="#{languageDetails.locale}" >
    <head>
    .....
    <f:loadBundle basename="messages.Messages" var="msg1"/>
    .....
    

      </h:form>
    

    </body>
    </f:view>
    

2.在java源码中我也做了一些改动:

public class LanguageDetails {

    private static String locale = Locale.getDefault().getDisplayLanguage();

      public void setLocale(String locale1) {
        this.locale = locale1;
      }

      public synchronized String getLocale() {
        return locale;
      }

      public synchronized String changeLanguage() {
        return "changed";
      }
}

但现在我尝试使用相同的选项,不仅在登录页面中,而且在其他页面中。
在其他页面中添加相同的代码不起作用,因为没有调用函数setLocale。有什么帮助吗?
提前致谢

【问题讨论】:

    标签: java jsf internationalization


    【解决方案1】:

    我意识到,放东西真的很重要

    <f:view locale="#{languageDetails.locale}" >
    ....
    </f:view>
    

    或在每个文件中,或仅在顶部文件中。稍后,将&lt;h:selectOneMenu&gt; 放在必要的地方,但要始终记住,您不能拥有所有想要的&lt;h:form&gt;&lt;a4j:form&gt;... 等等,这会使事情变得更加复杂。我把这个 form tags 放在最上面的文件上,现在一切正常。
    希望这可以帮助某人。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-05-09
      • 1970-01-01
      • 1970-01-01
      • 2011-11-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多