如何在JSF1.2中的消息资源包中添加新行字符(n)



在我的示例JSF应用程序中,我在页面中使用rich:dataTable来显示数据。

我有两个标题来显示富格式的值:dataTable,如下

--------------------------------
| UserDetails | EmpoyeeDetails |
--------------------------------

在具有密钥和值(如)的消息资源捆绑文件中

usrNet=用户详细信息empDet=EmpoyeeDetails

我需要在特定标题的一行中显示类似用户的信息,在下一行显示详细信息

----------------------
|  User   |  Empoyee |
| Details |  Details |
---------------------

如何在单词之间的消息包中添加换行符?我尝试添加十六进制代码,类似 ;的数字代码,\u000A,但不是为我工作!有什么想法吗?

JSF生成HTML。HTML中的换行符不是由n字符表示的,而是由<br>元素表示的。

为了让HTML客户端也能解释n,您需要引入CSS white-space: prepre-wrap:

key = Lorem ipsum.nDolor sit amet.
<h:outputText value="#{bundle.key}" style="white-space: pre-wrap" />

或者,使用<br>,并让JSF对其进行Unscape。例如

key = Lorem ipsum.<br/>Dolor sit amet.
<h:outputText value="#{bundle.key}" escape="false" />

尝试此处列出的步骤:http://www.mkyong.com/java/how-to-insert-a-new-line-in-resource-bundle-messages-java/

基本上,您使用StringEscapeUtils.unescapeJava(String-str)静态方法。

相关内容

  • 没有找到相关文章

最新更新