嵌入Arquillian Glassfish - NameNotFoundException

时间:2016-12-03 18:06:54

标签: ejb jboss-arquillian sessioncontext

我正在尝试使用arquillian为我的应用程序创建集成测试,但我目前遇到有关使用@Resource SessionContext的问题。

这是我的配置:

我的pom.xml arquillian dependecies:

.
.
.

<dependencyManagement>
  <dependencies>
  <dependency>
  <groupId>org.jboss.arquillian</groupId>
  <artifactId>arquillian-bom</artifactId>
  <version>1.1.1.Final</version>
  <scope>import</scope>
  <type>pom</type>
  </dependency>
  </dependencies>
  </dependencyManagement>

.
.
.

<dependencies>
<!-- Arquilian junit ejb tests -->
  <dependency>
  <groupId>junit</groupId>
  <artifactId>junit</artifactId>
  <version>4.11</version>
  <scope>test</scope>
  </dependency>


  <!-- In order to log to STDOUT Glassfish events -->
  <dependency>
  <groupId>org.slf4j</groupId>
  <artifactId>slf4j-simple</artifactId>
  <version>1.7.12</version>
  <scope>test</scope>
  </dependency>


  <dependency>
  <groupId>org.jboss.arquillian.junit</groupId>
  <artifactId>arquillian-junit-container</artifactId>
  <scope>test</scope>
  </dependency>


  <dependency>
  <groupId>org.jboss.arquillian.container</groupId>
  <artifactId>arquillian-glassfish-embedded-3.1</artifactId>
  <version>1.0.0.CR4</version>
  <scope>test</scope>
  </dependency>


  <dependency>
  <groupId>org.glassfish.main.extras</groupId>
  <artifactId>glassfish-embedded-all</artifactId>
  <version>3.1.2.2</version>
  <scope>test</scope>
  </dependency>

.
.
.

<dependencies>

arquillian.xml

<?xml version="1.0" encoding="UTF-8"?>
<arquillian xmlns="http://jboss.org/schema/arquillian"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://jboss.org/schema/arquillian/arquillian_1_0.xsd">


  <container qualifier="glassfish-embedded" default="true">
  <configuration>
  <property name="resourcesXml">src/test/resources/glassfish-resources.xml</property>
  </configuration>
  </container>


</arquillian>

的glassfish-resources.xml中

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE resources PUBLIC
    "-//GlassFish.org//DTD GlassFish Application Server 3.1 Resource Definitions//EN"
    "http://glassfish.org/dtds/glassfish-resources_1_5.dtd">


<resources>


.
.
.


  <jdbc-resource pool-name="xxx" jndi-name="jdbc/xxx" />

  <jdbc-resource pool-name="xxx" jndi-name="jdbc/xxx" />


  <jdbc-resource pool-name="xxx" jndi-name="jdbc/xxx" />

  <jdbc-resource pool-name="xxx" jndi-name="jdbc/xxx" />




  <!-- JMS QUEUES -->
  <admin-object-resource enabled="true" jndi-name="jms/Exxx" object-type="user" res-adapter="jmsra" res-type="javax.jms.Queue">
  <description />
  <property name="Name" value="PhysicalQueue" />
  </admin-object-resource>

  <admin-object-resource enabled="true" jndi-name="jms/xxx" object-type="user" res-adapter="jmsra" res-type="javax.jms.Queue">
  <description />
  <property name="Name" value="PhysicalQueue" />
  </admin-object-resource>

  <admin-object-resource enabled="true" jndi-name="jms/xxx" object-type="user" res-adapter="jmsra" res-type="javax.jms.Queue">
  <description />
  <property name="Name" value="PhysicalQueue" />
  </admin-object-resource>

  <admin-object-resource enabled="true" jndi-name="jms/xxx" object-type="user" res-adapter="jmsra" res-type="javax.jms.Queue">
  <description />
  <property name="Name" value="PhysicalQueue" />
  </admin-object-resource>

  <admin-object-resource enabled="true" jndi-name="jms/xxx" object-type="user" res-adapter="jmsra" res-type="javax.jms.Queue">
  <description />
  <property name="Name" value="PhysicalQueue" />
  </admin-object-resource>

  <admin-object-resource enabled="true" jndi-name="jms/xxx" object-type="user" res-adapter="jmsra" res-type="javax.jms.Queue">
  <description />
  <property name="Name" value="PhysicalQueue" />
  </admin-object-resource>

  <connector-connection-pool name="jms/xxx" connection-definition-name="javax.jms.QueueConnectionFactory" resource-adapter-name="jmsra" />

  <connector-resource enabled="true" jndi-name="jms/xxx" pool-name="jms/DmalConnectionFactoryPool" object-type="system-all" />


  <!-- Mail Session -->
  <mail-resource jndi-name="xxx" host="xxx" debug="true" user="xxx" from="xxx>
  <property name="mail.debug" value="true" />
  <property name="mail.smtp.port" value="25" />
  <property name="mail.smtp.host" value="xxxx />
  <property name="mail.transport.protocol" value="smtp" />
  </mail-resource>
</resources>

测试的persistence.xml

<?xml version="1.0" encoding="UTF-8" ?>
<persistence xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"
  version="2.0" xmlns="http://java.sun.com/xml/ns/persistence">

  <persistence-unit name="Dmal" transaction-type="JTA">
  <jta-data-source>jdbc/xxx</jta-data-source>


  </persistence-unit>


  <persistence-unit name="DocSearch" transaction-type="JTA">
  <jta-data-source>jdbc/xxxx</jta-data-source>


  </persistence-unit>

  <persistence-unit name="Adobe" transaction-type="JTA">
  <jta-data-source>jdbc/xxx</jta-data-source>

  </persistence-unit>
</persistence>

InboundFileImportTest.java

package com.dfs.business.inbound;


import java.util.UUID;


import javax.ejb.EJB;


import org.jboss.arquillian.container.test.api.Deployment;
import org.jboss.arquillian.junit.Arquillian;
import org.jboss.shrinkwrap.api.Filters;
import org.jboss.shrinkwrap.api.ShrinkWrap;
import org.jboss.shrinkwrap.api.asset.EmptyAsset;
import org.jboss.shrinkwrap.api.spec.JavaArchive;
import org.junit.Test;
import org.junit.runner.RunWith;


@RunWith(Arquillian.class)
public class InboundFileImportTest {


  @EJB
  private InboundFileImportBO inboundFileImportBO;


  @Deployment
  public static JavaArchive createDmalBasicArchive() {
  System.setProperty("dmalframework.ejb.interceptor.SecurityInterceptorEnabled","false");

  JavaArchive javaArchive = ShrinkWrap.create(JavaArchive.class, "test.jar")
  .addPackages(true, Filters.exclude(".*Mock.*|.*Test.*"),  "com.dfs", "dmalframework")
        .addAsManifestResource("test-persistence.xml", "persistence.xml")
        .addAsManifestResource(EmptyAsset.INSTANCE, "beans.xml");


  return javaArchive;
  }



  @Test
  public void startInbountImportTest() {
  inboundFileImportBO.startInboundFileImport(UUID.randomUUID().toString());
  }
}

InboundReprocessBOImpl.java

@Stateless
public class InboundReprocessBOImpl implements InboundReprocessBO {


  @Resource
  protected SessionContext sessionContext;

.
.
.
}

以下是我得到的错误:

[03 Dec 2016 15:11:29,904] [ERROR] [__ejb-thread-pool1] [com.dfs.business.inbound.InboundFileImportBO] [startAsyncInboundFileImport] [96] Error starting reprocessing file process. Message: javax.ejb.EJBException: javax.ejb.CreateException: Could not create stateless EJB, Correlation ID: 0c0de843-7377-4ad2-ac42-0ac6dc1cda87
javax.ejb.EJBException: javax.ejb.EJBException: javax.ejb.CreateException: Could not create stateless EJB
  at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:454) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.BaseContainer.getContext(BaseContainer.java:2547) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.BaseContainer.preInvoke(BaseContainer.java:1899) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.EJBLocalObjectInvocationHandler.invoke(EJBLocalObjectInvocationHandler.java:212) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.EJBLocalObjectInvocationHandlerDelegate.invoke(EJBLocalObjectInvocationHandlerDelegate.java:89) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.proxy.$Proxy220.startInboundReprocess(Unknown Source) ~[?:?]
  at com.dfs.business.inbound.AsyncInboundFileImportBOImpl.startAsyncInboundFileImport(AsyncInboundFileImportBOImpl.java:94) [classes/:?]
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79]
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79]
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79]
  at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79]
  at org.glassfish.ejb.security.application.EJBSecurityManager.runMethod(EJBSecurityManager.java:1052) [glassfish-embedded-all-3.1.2.2.jar:?]
  at org.glassfish.ejb.security.application.EJBSecurityManager.invoke(EJBSecurityManager.java:1124) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.BaseContainer.invokeBeanMethod(BaseContainer.java:5388) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.EjbInvocation.invokeBeanMethod(EjbInvocation.java:619) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:800) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:571) [glassfish-embedded-all-3.1.2.2.jar:?]
  at org.jboss.weld.ejb.SessionBeanInterceptor.aroundInvoke(SessionBeanInterceptor.java:49) [glassfish-embedded-all-3.1.2.2.jar:?]
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79]
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79]
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79]
  at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79]
  at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:861) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:800) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.EjbInvocation.proceed(EjbInvocation.java:571) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.doAround(SystemInterceptorProxy.java:162) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.interceptors.SystemInterceptorProxy.aroundInvoke(SystemInterceptorProxy.java:144) [glassfish-embedded-all-3.1.2.2.jar:?]
  at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.7.0_79]
  at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) ~[?:1.7.0_79]
  at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.7.0_79]
  at java.lang.reflect.Method.invoke(Method.java:606) ~[?:1.7.0_79]
  at com.sun.ejb.containers.interceptors.AroundInvokeInterceptor.intercept(InterceptorManager.java:861) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.interceptors.AroundInvokeChainImpl.invokeNext(InterceptorManager.java:800) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.interceptors.InterceptorManager.intercept(InterceptorManager.java:370) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.BaseContainer.__intercept(BaseContainer.java:5360) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.BaseContainer.intercept(BaseContainer.java:5348) [glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.EjbAsyncTask.call(EjbAsyncTask.java:101) [glassfish-embedded-all-3.1.2.2.jar:?]
  at java.util.concurrent.FutureTask.run(FutureTask.java:262) [?:1.7.0_79]
  at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [?:1.7.0_79]
  at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [?:1.7.0_79]
  at java.lang.Thread.run(Thread.java:745) [?:1.7.0_79]
Caused by: javax.ejb.EJBException: javax.ejb.CreateException: Could not create stateless EJB
  at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:726) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:247) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:449) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  ... 40 more
Caused by: javax.ejb.CreateException: Could not create stateless EJB
  at com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:534) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer.access$000(StatelessSessionContainer.java:95) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:724) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:247) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:449) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  ... 40 more
Caused by: java.lang.IllegalStateException: Exception attempting to inject Env-Prop: com.dfs.business.inbound.InboundReprocessBOImpl/sessionContext@Field-Injectable Resource. Class name = com.dfs.business.inbound.InboundReprocessBOImpl Field name=sessionContext@java.lang.String@com.dfs.business.inbound.InboundReprocessBOImpl/sessionContext@@ into class com.dfs.business.inbound.InboundReprocessBOImpl: Lookup failed for 'java:comp/env/com.dfs.business.inbound.InboundReprocessBOImpl/sessionContext' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming}
  at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:137) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.jboss.weld.bean.SessionBean$SessionBeanInjectionTarget.inject(SessionBean.java:177) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.glassfish.weld.services.JCDIServiceImpl.injectEJBInstance(JCDIServiceImpl.java:223) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.BaseContainer.injectEjbInstance(BaseContainer.java:1678) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:494) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer.access$000(StatelessSessionContainer.java:95) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:724) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:247) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:449) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  ... 40 more
Caused by: com.sun.enterprise.container.common.spi.util.InjectionException: Exception attempting to inject Env-Prop: com.dfs.business.inbound.InboundReprocessBOImpl/sessionContext@Field-Injectable Resource. Class name = com.dfs.business.inbound.InboundReprocessBOImpl Field name=sessionContext@java.lang.String@com.dfs.business.inbound.InboundReprocessBOImpl/sessionContext@@ into class com.dfs.business.inbound.InboundReprocessBOImpl: Lookup failed for 'java:comp/env/com.dfs.business.inbound.InboundReprocessBOImpl/sessionContext' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming}
  at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:703) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:470) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectInstance(InjectionManagerImpl.java:171) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:130) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.jboss.weld.bean.SessionBean$SessionBeanInjectionTarget.inject(SessionBean.java:177) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.glassfish.weld.services.JCDIServiceImpl.injectEJBInstance(JCDIServiceImpl.java:223) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.BaseContainer.injectEjbInstance(BaseContainer.java:1678) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:494) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer.access$000(StatelessSessionContainer.java:95) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:724) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:247) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:449) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  ... 40 more
Caused by: javax.naming.NamingException: Lookup failed for 'java:comp/env/com.dfs.business.inbound.InboundReprocessBOImpl/sessionContext' in SerialContext[myEnv={java.naming.factory.initial=com.sun.enterprise.naming.impl.SerialInitContextFactory, java.naming.factory.state=com.sun.corba.ee.impl.presentation.rmi.JNDIStateFactoryImpl, java.naming.factory.url.pkgs=com.sun.enterprise.naming}
  at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:518) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:455) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at javax.naming.InitialContext.lookup(InitialContext.java:411) ~[?:1.7.0_79]
  at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:599) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:470) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectInstance(InjectionManagerImpl.java:171) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:130) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.jboss.weld.bean.SessionBean$SessionBeanInjectionTarget.inject(SessionBean.java:177) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.glassfish.weld.services.JCDIServiceImpl.injectEJBInstance(JCDIServiceImpl.java:223) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.BaseContainer.injectEjbInstance(BaseContainer.java:1678) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:494) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer.access$000(StatelessSessionContainer.java:95) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:724) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:247) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:449) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  ... 40 more
Caused by: javax.naming.NameNotFoundException: No object bound to name java:comp/env/com.dfs.business.inbound.InboundReprocessBOImpl/sessionContext
  at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:772) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.naming.impl.GlassfishNamingManagerImpl.lookup(GlassfishNamingManagerImpl.java:744) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.naming.impl.JavaURLContext.lookup(JavaURLContext.java:169) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:498) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.naming.impl.SerialContext.lookup(SerialContext.java:455) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at javax.naming.InitialContext.lookup(InitialContext.java:411) ~[?:1.7.0_79]
  at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl._inject(InjectionManagerImpl.java:599) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.inject(InjectionManagerImpl.java:470) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.enterprise.container.common.impl.util.InjectionManagerImpl.injectInstance(InjectionManagerImpl.java:171) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.glassfish.weld.services.InjectionServicesImpl.aroundInject(InjectionServicesImpl.java:130) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.jboss.weld.injection.InjectionContextImpl.run(InjectionContextImpl.java:46) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.jboss.weld.bean.SessionBean$SessionBeanInjectionTarget.inject(SessionBean.java:177) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at org.glassfish.weld.services.JCDIServiceImpl.injectEJBInstance(JCDIServiceImpl.java:223) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.BaseContainer.injectEjbInstance(BaseContainer.java:1678) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer.createStatelessEJB(StatelessSessionContainer.java:494) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer.access$000(StatelessSessionContainer.java:95) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer$SessionContextFactory.create(StatelessSessionContainer.java:724) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.util.pool.NonBlockingPool.getObject(NonBlockingPool.java:247) ~[glassfish-embedded-all-3.1.2.2.jar:?]
  at com.sun.ejb.containers.StatelessSessionContainer._getContext(StatelessSessionContainer.java:449) ~[glassfish-embedded-all-3.1.2.2.jar:?]

有人可以帮忙吗??

由于

0 个答案:

没有答案
相关问题