1

動的 HTML を jsf ページに投稿しようとしていますが、出力テキスト タグで escape="false" と指定してもエスケープされます。

私はprimefaces 3.4.2 Tomcat 7.0.22.0を使用しています

JSF ページ:

           <p:tabView id="editableArticleTabs" dynamic="true" cache="true" rendered="#{articleBean.allowEdit}">
            <p:tab id="readArticleTab" title="Read">
                <div class="article">
                    <h1 class="title">#{articleBean.article.name}</h1>
                    <div class="byline"> by #{articleBean.article.creator.username} </div>

                    <blockquote class="summary">
                        <h2>Summary:</h2>
                        <h:outputText value="#{articleBean.article.summary}" escape="false" />
                    </blockquote>

                    <div class="textBody">
                        <p><h:outputText value="#{articleBean.article.body}" escape="false" /></p>
                    </div>
                </div>
            </p:tab>
           </p:tabView>

私は何を間違っていますか?それはすべてを逃れています。

また、getter メソッドの System.out.printline にテキストを出力するので、エスケープされた状態でデータベースに格納されていないことを確認できます。

編集:わかりました、これがキッカーです。タブからテキストを取り出してみると、うまくいきます。しかし、タブ内で動作させるには本当に必要です。

最終編集:それは私の悪いことでした。コードの 2 つのコピーがあり、1 つはタブ内でレンダリングされ、もう 1 つはそれなしでレンダリングされました。「編集可能性」に応じて条件付きレンダリングがありました。私はエスケープフラグを一方に設定し、もう一方には設定しませんでした。大失敗。申し訳ありませんが、その人々の試合。

4

0 に答える 0