我有一个包含远程有状态Bean的EJB的Java EE项目。
我有一个带GUI的企业应用程序。
我的GUI中有监听器,但我的问题是我无法在按钮监听器中访问我的Bean(检查用户名和密码)。
我使用netBeans和glassFish。
要查找我使用的bean:
ctx.lookup("java:comp/env/BeanStateful");
但显然听众改变了背景,它不再起作用了。
答案 0 :(得分:1)
侦听器可能正在一个没有JavaEE上下文的线程上运行。尝试从主线程获取java:comp / env Context,然后只从侦听器中查找()bean名称。例如:
// Member variables
private Context _javaCompEnvContext;
...
// Main thread
_javaCompEnvContext = ctx.lookup("java:comp/comp/env");
...
// Listener thread
BusinessIntf bean = _javaCompEnvContext.lookup("BeanStateful");