2012-03-28 4 views
4

Sollte ich <h:outputText value="static text"/> verwenden oder static text direkt in die Datei xhtml schreiben, um statischen Text zu drucken? direkt -Soll ich <h: outputText> verwenden, um statischen Text zu drucken?

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

Beispiel:

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

Antwort

8

Gerade sie schreibt direkt in die Seite ohne die output -

Beispiel mit Ausgabetext. Sie können sogar el Ausdrücke ohne ein Tag schreiben. So könnte man schreiben:

User name: #{currentUser.name} 

Der output benötigt wird (unter anderem), wenn Sie den Text mit Ajax zu ändern, machen es bedingt oder wenn Sie wollen bestimmte Stile auf den Text anzuwenden.

+4

Oder wenn Sie implizite HTML-Escaping deaktivieren möchten. – BalusC

+0

Ein '# {currentUser.name}' ohne 'h: outputText' entgeht dem Inhalt nicht, richtig? – Ralph

+5

@Ralph: Nein, es ** ist ** entkommen. Siehe auch http://stackoverflow.com/questions/7722159/csrf-xss-and-sql-injection-attack-prevention-in-jsf/7725675#7725675 – BalusC

Verwandte Themen