0

私の知る限り、EL 仕様には代入演算子はなく、使用しようとすると ParseException が発生します。では、setValue メソッドを使用する意味は何ですか? 私が取り組んでいるカスタムリゾルバーに実装しましたが、テストする方法がわかりません。

4

1 に答える 1

1

それは、そのためのメソッドを持つなど、インターフェースをValueExpression#setValue()実装する他のJSFコンポーネントによって順番に使用されます。EditableValueHolderUIInputsetValue()

この JSF の例では、

<h:inputText value="#{bean.property}" />

基本的に奥深くで行います(簡潔にするためにコンテキスト/変換/検証などは省略されています)

bean.setProperty(request.getParameter(component.getClientId(facesContext)))

そのsetProperty()呼び出しは、最終的に によって行われELResolver#setValue()ます。

Web アプリケーションのどこにも JSF を使用していない場合は、必ずしも心配する必要はありません。とにかく JSF でテストしたい場合は、JSF wiki ページの Hello World の例を使用してください。

于 2013-07-02T21:21:19.200 に答える