2011-01-03 6 views
5

ELでかなりわかりにくいオブジェクト階層を参照しています(#{myBean.configBaseStack.excludeMethodFromAccounting.method.TimeoutBehaviorEnabled})。JSF:バッキングBeanのプロパティのエイリアスを作成する

のように私は、エイリアスを通じて、この非常に同じ性質を指すたい:私はこれを達成する一つの方法は、バッキングBeanでこれらのエイリアスを作成することです推測するが、私はむしろ、思い

<x:alias name="m" value="#{myBean.configBaseStack.excludeMethodFromAccounting.method" /> 
<h:inputText value="#{m.TimeoutBehaviorEnabled}" /> 

テンプレートにそのままにしておきます。

テンプレート/フェイスレットレベルでこれを達成する方法は?

答えて

7

は、私はあなたがこれを達成するために<ui:param>を使用することができると思う:

その後
<ui:param name="m" value="#{myBean.configBaseStack.excludeMethodFromAccounting.method}"/> 

あなたが同じページ上でこのようにそれを使用することができます:

<h:inputText value="#{m.TimeoutBehaviorEnabled}" /> 
+0

私はこれが簡単だと分かっていました。私は 'f:param'と' f:attribute'をチェックしましたが、これがあったことを認識しませんでした:)うまくいくように思えます、ありがとう! –

+0

あなたは大歓迎です! –

1

おそらく、varvalue属性を使用して、これにはJSTL相当のsetタグを使用できます。

+0

ことが可能であろうが、それは関係をロックします。 Shervinが提案しているように 'ui:param'を使うと、より柔軟にプロパティを使うことができます。しかし、良い提案。 –

0

私はエイリアシングがjsfではサポートされていないことを知っています。

関連する問題