JSFで独自のActionListenerを実装するにはどうすればよいですか。
このアクションリスナーを、構築している動的コンポーネントにアタッチする必要があります。
私は次のようにMethodExpressionを使用しようとしています:-
HtmlCommandLink link = new HtmlCommandLink();
link.setId("linkId");
FacesContext context = FacesContext.getCurrentInstance();
MethodExpression methodExpression = context.getApplication().getExpressionFactory().createMethodExpression(
context.getELContext(), "#{bean.actionListener}", null, new Class[] { ActionEvent.class });
link.addActionListener(new MethodExpressionActionListener(methodExpression));
ただし、動的に生成されたコンポーネントにカスタムactionListenerをアタッチする他の方法はあります。また、このコンテキストでのMethodExpressionの使用は正確には何ですか。
1つのポイントは、引数として、その中でaddActionListener
methodExpressionMethodExpressionActionListener
オブジェクトを指定する必要があるということです。
しかし、この背後にある実際の機能は何でしょうか。MethodExpressionのjavadocを調べましたが、あまり役に立たないことがわかりました。