私の知る限り、EL 仕様には代入演算子はなく、使用しようとすると ParseException が発生します。では、setValue メソッドを使用する意味は何ですか? 私が取り組んでいるカスタムリゾルバーに実装しましたが、テストする方法がわかりません。
1 に答える
1
それは、そのためのメソッドを持つなど、インターフェースをValueExpression#setValue()
実装する他のJSFコンポーネントによって順番に使用されます。EditableValueHolder
UIInput
setValue()
この 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 に答える