我有一个 bean,我将其配置为 faces-config.xml 中的应用程序范围,如下所示:
<managed-bean eager="true">
<managed-bean-name>communicationCRCList</managed-bean-name>
<managed-bean-class>com.ingdirect.edeal.bean.CommunicationCRCListBean</managed-bean-class>
<managed-bean-scope>application</managed-bean-scope>
</managed-bean>
当应用程序通过在不同类上调用 INIT() 方法启动时,它会被加载。应用程序启动,加载类并创建调用 init 方法的 bean。由于它是一个应用程序范围的 bean,它应该可以从任何地方访问。就我而言,我想在 servlet 中获取该 bean。我读到所有应用程序范围的托管 bean 都加载到 servletContext 中。为了得到那个 bean,我在我的 servlet 中尝试了以下操作:
CommunicationCRCListBean CommunicationCrcListBean = (CommunicationCRCListBean) getServletContext().getAttribute(COMMUNICATION_LIST_CRC_BEAN);
有关信息,COMMUNICATION_LIST_CRC_BEAN = communicationCRCList--> bean 的名称。不幸的是,我得到空......
我不知道出了什么问题...有人有想法吗?