我需要帮助才能从 Spring 调用 EJB 远程接口。
我的 JBoss 中部署了旧版 EJB。
下面列出了 Ejb-jar.xml。
<session>
<display-name>ServiceBean</display-name>
<ejb-name>ServiceBean</ejb-name>
<home>com.ejbproject.ejb.ServiceHome</home>
<remote>com.ejbproject.ejb.Service</remote>
<ejb-class>com.ejbproject.ejb.impl.ServiceBean</ejb-class>
<session-type>Stateless</session-type>
<transaction-type>Container</transaction-type>
</session>
我有一个使用 Spring 的 Web 应用程序。spring 应用程序上下文包含以下条目:
<jee:remote-slsb id="myServiceBean"
jndi-name="ejb/ServiceBean"
business-interface="com.myproject.account.ejb.ServiceBean"
resource-ref='true'></jee:remote-slsb>
我在 web 项目中创建了业务接口 ServiceBean,并在 ejb-jar.xml 中添加了远程接口定义中定义的所有方法。
Web 应用程序部署在同一个 JBoss 服务器中。但是当我尝试部署时,我得到了一个未绑定的命名异常“ServiceBean”。我是否必须在 web.xml 中添加环境条目才能访问 EJB(即使 EJB 和 Web 应用程序都部署在同一个 JBoss 中)?