[英]Tapestry : Start page use english locale instead of default locale
我們使用Tapestry 5.1.0.5構建了一個網站,當我們點擊起始頁時,我們偶爾遇到一個缺少關鍵問題。
這個問題只出現了4次,這是一個隨機的問題。
實際配置:
configuration.add(SymbolConstants.SUPPORTED_LOCALES, "fr");
=>所以默認的本地是fr
而不是en
configuration.add("tapestry.start-page-name", "Accueil");
=>所以當我們點擊/
tapestry重定向我們/accueil
這是我們有時會看到的問題:
當hitting /
tapestry搜索*_en.properties
鍵而不是*_fr.properties
但是如果我們點擊/accueil
tapestry搜索*_fr.properties
鍵。
跟蹤日志:
Caused by: java.lang.NumberFormatException: For input string: **"[[missing key: prehome.store.opening.delay]]"**
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:447)
at java.lang.Integer.parseInt(Integer.java:497)
at XXXXXXX.tapestry.components.overlayer.StoreOverlayer.initStoresAndRegions(StoreOverlayer.java:652)
at XXXXXXX.tapestry.components.overlayer.StoreOverlayer.setupRender(StoreOverlayer.java)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$SetupRenderPhase.invokeComponent(ComponentPageElementImpl.java:184)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl$AbstractPhase.run(ComponentPageElementImpl.java:164)
at org.apache.tapestry5.internal.structure.ComponentPageElementImpl.invoke(ComponentPageElementImpl.java:933)
... 94 more
01-02-2012 11:55:52:979 23120252 ERROR org.apache.tapestry5.internal.services.InternalModule.PagePool - Page Page[Accueil en] is dirty, and will be discarded (rather than returned to the page pool).
有誰有這個問題?
你知道為什么當我們點擊起始頁時,tapestry使用en
locale而不是我們的默認語言環境fr
?
我想說如果你想確保默認語言環境是法語,那么只需將所有message_fr.properties重命名為message.properties。
另請查看瀏覽器設置。 如果您的瀏覽器要求提供該網站的英文版本,則Tapestry會遵守。 您可以覆蓋該行為,但我建議將其視為一個功能(因為用戶正在獲取與其偏好相關的站點)而不是錯誤。
最后提示,如果您支持多種語言,則將它們全部列在支持的語言環境中。
- =編輯= - 也可能值得檢查你是否有英文或法文的全球messages.properties文件
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.