Bri*_*ise 8 java jsp struts internationalization
我最近继承了一个国际化和文本密集的Struts 1.1 Web应用程序.许多JSP文件看起来像:
<p>
<bean:message key="alert" />
</p>
Run Code Online (Sandbox Code Playgroud)
和属性文件看起来像:
messages.properties
alert=Please update your <a href="/address.do">address</a> and <a href="/contact.do">contact information</a>.
Run Code Online (Sandbox Code Playgroud)
使用其他N种语言(messages_fr.properties等)进行适当的翻译.
问题:
<a>...</a>
标记包围什么.容易学习英语,但对于不熟悉的语言则不那么容易.我考虑在消息文件中添加占位符,例如:
alert=Please update your {0} and {1}.
Run Code Online (Sandbox Code Playgroud)
但随后单词"地址"和"联系信息"将以某种方式需要进行本地化,包含标记,并传递给我的消息标记 - 我看不到一个简单的方法来做到这一点.
我该怎么做才能改善这一点?
避免在长文本块中创建链接。更喜欢较短的文本,可以充当逻辑上完整且独立的链接。
一般来说,这会导致更少的问题。有时您必须妥协 UI 设计以适应本地化;有时您需要妥协本地化过程以适应用户界面。
任何时候开发人员手动操作翻译后字符串都是潜在的昂贵错误的来源。剪切/粘贴或字符串编辑可能会导致字符损坏、字符串错位等。翻译缺陷需要外部各方的参与来修复,这涉及成本和时间。
想一想,这样的事情可能不那么难看:
<p>Please update your address and contact information.
<br />
<a href="/address.do">update address</a>
<br />
<a href="/contact.do">update contact information</a></p>
Run Code Online (Sandbox Code Playgroud)
...但我不是 UI 设计师。