20

<s:set var="buttonText" value="getText('person.button.add')"/>JSTLでbuttonText変数を使用してテキストを設定するために使用しています。

誰かがJSFELでこれを達成する方法を教えてください。

ここで質問はJSF形式のIF-ELSE条件です。正しいアプローチを知る必要がありますが、別の質問として尋ねるように言われました。

編集:

詳細については、上記のリンクをすでに追加しましたが、ここでも同様です。

struts2プロジェクトのようにJSTLを使用しています

 <s:if test="person==null || person.id==null || person.id==''">
                <s:set var="buttonText" value="getText('person.button.add')"/>
            </s:if>
            <s:else>
                <s:set var="buttonText" value="getText('person.button.edit')"/>
            </s:else>

JSF2でも同じアプローチを使用したいのですが、式言語を使用します。と呼ばれる変数に値を保存し、buttonTextその下のどこかにアクセスしています#{buttonText}。変数を書き込んELで使用する方法の解決策が必要です。その明確なことを願っています。

<s:set var="buttonText" value="getText('person.button.add')"/>コード行のみの解決策が必要です。

ありがとう

4

1 に答える 1

52

使用できますui:param

次の方法で:

<ui:param name="buttonText" value="#{myBean.MyValue}" />

また

<ui:param name="buttonText" value="someText" />

また

<ui:param name="buttonText" value="someText#{myBean.MyValue}" />

and use later on like this

<h:outputText value="#{buttonText}"/>

Another option would be using <c:set in the following way

<c:set var="buttonText" value="#{myBean.MyValue}" />

But note that <c:set is a JSTL tag,

JSTL tags runs during building the view (when the XHTML file is converted to JSF component tree)

Also you might want to read this JSTL in JSF2 Facelets… makes sense?

于 2012-11-29T06:40:56.590 に答える