Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 资源的JNDI查找失败_Java_Websphere_Jndi_Ejb 3.1_Ibm Rad - Fatal编程技术网

Java 资源的JNDI查找失败

Java 资源的JNDI查找失败,java,websphere,jndi,ejb-3.1,ibm-rad,Java,Websphere,Jndi,Ejb 3.1,Ibm Rad,我正在使用RAD+Webhere-8.5.1运行EJB应用程序。我必须在EJB中添加发送电子邮件功能,为此,我在IBM控制台应用程序中配置了虚拟邮件会话,如下所示 我试图在我的无状态Ejb中作为 @资源(name=“mail/sandMailSession”) 非公开会议 但它的失败,正如NameNotFoundException 绑定时是否需要其他设置?'mail/sandMailSession'是在全局命名空间中定义的名称。您应该使用ibm ejb jar bnd.xmlMETA-INF目

我正在使用RAD+Webhere-8.5.1运行EJB应用程序。我必须在EJB中添加发送电子邮件功能,为此,我在IBM控制台应用程序中配置了虚拟邮件会话,如下所示

我试图在我的无状态Ejb中作为

@资源(name=“mail/sandMailSession”)
非公开会议

但它的失败,正如NameNotFoundException


绑定时是否需要其他设置?

'mail/sandMailSession'是在全局命名空间中定义的名称。您应该使用
ibm ejb jar bnd.xml
META-INF目录中的文件将邮件会话绑定到本地组件名称空间:

<ejb-jar-bnd xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://websphere.ibm.com/xml/ns/javaee"
    xsi:schemaLocation="http://websphere.ibm.com/xml/ns/javaee http://websphere.ibm.com/xml/ns/javaee/ibm-ejb-jar-bnd_1_0.xsd" version="1.0">
  <session name="NAME_OF_EJB">
    <resource-ref name="mail/sandMailSession" binding-name="mail/sandMailSession"/>
  </session>
</ejb-jar-bnd>

请注意,
name
binding name
是独立的属性,可以有不同的值,尽管在您的案例中它们是相同的<代码>绑定名称是全局命名空间中资源的名称