コマンドリンクをプログラムで追加しようとしていますが、アクションを追加できません。
HtmlCommandLink link = new HtmlCommandLink();
link.setValue(data);
link.setActionExpression(no idea);
作成方法を教えてください。
コマンドリンクをプログラムで追加しようとしていますが、アクションを追加できません。
HtmlCommandLink link = new HtmlCommandLink();
link.setValue(data);
link.setActionExpression(no idea);
作成方法を教えてください。
を使用しExpressionFactory#createMethodExpression()
ます。
便利な方法は次のとおりです。
private static MethodExpression createMethodExpression(String expression, Class<?> returnType) {
FacesContext context = FacesContext.getCurrentInstance();
return context.getApplication().getExpressionFactory().createMethodExpression(
context.getELContext(), expression, returnType, new Class[0]);
}
public String doSomething() {}
によって識別される管理対象 Bean にアクションがある場合、次のように使用できます#{bean}
。
link.setActionExpression(createMethodExpression("#{bean.doSomething}", String.class));