2012-03-16 7 views
1

Javaリソースバンドルを使用してメッセージを管理しています。JavaリソースバンドルプロパティファイルへのHTMLハイパーリンクの追加

メッセージをJSFページに表示する必要があります。メッセージにはHTMLマークアップも含まれています。 残念ながら、HTMLコードは、ブラウザでHTMLとしてレンダリングされたのではなく、画面上に表示されます。

IE

Click me <a href="link....">here</a> 

は、プロパティの私のメッセージはファイル:

clickme=Click me <a href="link....">here</a> 

マイJSF:

<h:outputText value="#{messages['clickme']}" /> 


おかげ

答えて

1

JSF/Faceletsがユーザ制御データを再表示するときXSS attacksを防止するために、デフォルトのHTML特殊文字でエスケープします。 escape属性をfalseに明示的に設定することによって、<h:outputText>単位でオフにすることができます。

<h:outputText value="#{messages['clickme']}" escape="false" /> 
あなただけがそのようなヘッダ、クッキー、パラメータ、ボディとしてHTTPリクエストで来る すべてあるunsanitizedユーザ制御データ、のためにこれをしないことを絶対に確認する必要があり

+0

素晴らしい、ありがとうBalusC。完璧な意味合いを持つ。 –

+0

ようこそ。 – BalusC

関連する問題