Java/JSF i18n长文本(术语、常见问题解答)
在大多数情况下,我只是在页面的某个地方组合了很多短文本字符串。但在一些情况下,我只有一个长的静态文本页面,如术语或常见问题解答 现在,只需将该段落也放在资源包中,或者构建一个切换到terms_en.xhtml等等Java/JSF i18n长文本(术语、常见问题解答),java,jsf,localization,internationalization,seam,Java,Jsf,Localization,Internationalization,Seam,在大多数情况下,我只是在页面的某个地方组合了很多短文本字符串。但在一些情况下,我只有一个长的静态文本页面,如术语或常见问题解答 现在,只需将该段落也放在资源包中,或者构建一个切换到terms_en.xhtml等等 在JSF中处理长文本的最佳/默认方法是什么?通常有两种方法: 将文本放入资源文件中,无论文本的长度如何。我相信您不想这样做,因为这样做很麻烦,而且资源文件变得更难维护 创建静态文件(即HTML页面或简单文本文件)并在运行时加载它们。对于HTML文件,您可以使用例如iframe轻松地嵌入
在JSF中处理长文本的最佳/默认方法是什么?通常有两种方法:
<h:outputText escape="false" value="#{someController.faq}" />
确保这不是最终用户可以输入的内容,因为最终会出现XSS漏洞。我不确定JBoss Seam是否设置了UIViewRoot的区域设置(应该设置),答案是JSF特定的,就像问题一样。我使用Seam LocaleSelector访问区域设置,我想这也设置了UIViewRoot的区域设置。-另一种方法是,在.xhtml文件中添加长文本,并根据语言使用rendered=将其包围,或者根据语言使用不同的*_xx.xhtml文件。是的,条件呈现是可能的解决方案之一。我看到的唯一问题是,它几乎不可维护。如何添加更多语言?如何修改现有的?当然有可能,但很麻烦