【发布时间】:2014-06-18 17:01:36
【问题描述】:
我正在为在 JBoss AS EAP6.2 中运行的 EJB 编写远程客户端。按照“JBoss EAP 6.2 开发指南”中“7.5.1. 使用 JNDI 远程调用会话 Bean”一节中的说明,如果我使用 JNDI 名称,我可以访问 EJB 上的方法
<ejb:/hibernate-ejb-server/UserBean!org.ktest.study.beans.UserBean
但是如果我使用实际记录在 JBoss 服务器日志中的全局 JNDI 名称,会失败
java:global/hibernate-ejb-server/UserBean!org.ktest.study.beans.UserBean
如果我使用全局 JNDI 名称,我会得到以下异常
Exception in thread "main" javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file: java.naming.factory.initial
在网上搜索后,我了解到我必须在实例化它时向 InitialContext 提供一些属性(与 javax.naming 相关)。但我不确定这些属性是什么。有人可以帮我解决这个问题吗?
【问题讨论】:
标签: jakarta-ee jboss7.x jndi