如何在JSF中获取其范围是请求的托管bean的实例?
答案 0 :(得分:2)
对于jsf 1.2我在代码中使用下一个表达式:
MyBean identifier = (MyBean) context.getApplication().getELResolver().getValue(context.getELContext(), null, "myRequiredBean");
其中“myRequiredBean” - faces-config.xml中的bean defenition
答案 1 :(得分:1)
如果您未在@ManagedBean(name = "name")
注释name
属性中指定特定名称,则该名称默认为类名称,其首字母小写。如果您使用JSF< 2.0,同样的事情,但它使用xml而不是注释。
您可以从该托管bean获取所需内容,然后使用EL,JSF中的EL为#{beanName.field}
。
如果使用EL 2.2+,您可以使用#{beanName.method('param')}
调用方法。
此外,对于未来 - 您确实应该指定运行它的JSF版本和容器。