2012-03-28 37 views
4

我是否应该使用<h:outputText value="static text"/>或直接将static text写入xhtml文件以打印静态文本?我应该用<h:outputText>打印静态文本吗?

例子 - 与输出文本:

<h:outputText value="User Name:"/> 
<h:outputText value="#{currentUser.name}"/> 

示例 - 直接:

User Name: 
<h:outputText value="#{currentUser.name}"/> 

回答

8

就直接写成没有的outputText的页面。你甚至可以写一个没有标签的el表达式。所以,你可以写:

User name: #{currentUser.name} 

我们将outputText需要(等等),如果你想改变与阿贾克斯的文本,使其有条件或如果你想某些样式应用到文本。

+4

或者当您想禁用隐式HTML转义时。 – BalusC 2012-03-28 18:22:39

+0

没有'h:outputText'的'#{currentUser.name}'不能转义内容,对吧? – Ralph 2012-03-28 20:26:23

+5

@Ralph:不,它**被**逃脱。另见http://stackoverflow.com/questions/7722159/csrf-xss-and-sql-injection-attack-prevention-in-jsf/7725675#7725675 – BalusC 2012-03-29 02:22:00

相关问题