0

我有一个自定义 JSF 组件,该组件具有一个属性,该属性通过 EL 表达式引用支持 bean 中的方法。引用的方法应作为组件解码过程的一部分进行调用。

这对于 @SessionScoped bean 非常有效,但是当我切换到 @ViewAccessScoped bean 时,对支持 bean 的方法的引用通过

ValueExpression ve = getValueExpression("callbackToMethod");
String expression = ve.getExpressionString();

Application application = context.getApplication();
ELContext elContext = context.getELContext();
ExpressionFactory expressionFactory = application.getExpressionFactory();

MethodExpression methodExpression = expressionFactory.createMethodExpression(elContext, expression, String.class, new Class[0]);
methodExpression.invoke(elContext, new Object[0]);

不是 bean 中支持 XHTML 视图的那个。似乎通过 EL 表达式解析 bean/方法确实返回了不同的 bean 实例。

上面给出的代码是获取对 bean/方法的引用的正确方法吗?有谁知道这里有什么问题?

谢谢并恭祝安康

4

0 回答 0