我正在研究库中的方法。该方法传递一个bean名称和属性名称,我想使用ELResolver从指定的bean中检索属性的值。由于代码在库中(并且为了灵活性),代码中没有硬编码的bean名称。
以下是我正在使用的代码:
elResolver.getValue( facesContext.getELContext(), elResolver.getValue(facesContext.getELContext(), null, myBean ), beanProperty )
bean和属性由myBean
和beanProperty
指定。
这似乎有效,但还有更好的方法吗?我目前正在使用JSF 1.2。
谢谢!
答案 0 :(得分:5)
看起来很好。另一种方式是
Object value = context.getApplication().evaluateExpressionGet(
context, String.format("#{%s.%s}", myBean, beanProperty), Object.class);