2017-02-19 4 views
0

Spring 4 응용 프로그램 컨텍스트에 EJB를 주입하려고합니다. 몇 가지 매뉴얼과 튜토리얼을 읽었으며 끝까지 끝냈습니다. Spring이 JDNI 이름으로 Remote Bean을 가져올 수없는 이유는 아닙니다. WildFly 10으로 앱을 실행하면 404 오류가 발생합니다.원격 EJB를 Spring에 삽입하는 중 오류가 발생했습니다.

내 콩의 정의는 다음과 같습니다 JNDI bindings for session bean named 'CursoServiceBean' in deployment unit 'subdeployment "gestion-docente-ejb.jar" of deployment "gestion-docente-ear-1.0.0-SNAPSHOT.ear"' are as follows:

java:global/gestion-docente-ear-1.0.0-SNAPSHOT/gestion-docente-ejb/CursoServiceBean! 
com.formacion.ipartek.curso.CursoServiceRemote 
java:app/gestion-docente-ejb/CursoServiceBean! 
com.formacion.ipartek.curso.CursoServiceRemote 
java:module/CursoServiceBean! 
com.formacion.ipartek.curso.CursoServiceRemote 
java:jboss/exported/gestion-docente-ear-1.0.0-SNAPSHOT/gestion-docente-ejb/CursoServiceBean! 
com.formacion.ipartek.curso.CursoServiceRemote 
java:global/gestion-docente-ear-1.0.0-SNAPSHOT/gestion-docente-ejb/CursoServiceBean 
java:app/gestion-docente-ejb/CursoServiceBean 
java:module/CursoServiceBean 

bean id ="cursoServiceRemote" class="org.springframework.ejb.access.SimpleRemoteStatelessSessionProxyFactoryBean"> 
    property name="jndiName" value="java:module/CursoServiceBean!com.formacion.ipartek.curso.CursoServiceBean" /> 
    property name="jndiEnvironment"> 
     props> 
      prop key="java.naming.factory.initial">com.sun.jndi.ldap.LdapCtxFactory</prop> 
      prop key="java.naming.provider.url">ldap://localhost:9990</prop> 
      prop key="java.naming.security.principal">*******/prop> 
      prop key="java.naming.security.authentication">simple/prop> 
      prop key="java.naming.security.credentials">******/prop> 
     /props> 
    /property> 
    property name="businessInterface" value="com.formacion.ipartek.curso.CursoServiceRemote" /> 
</bean> 
<bean id="cursoServiceImp" class="com.ipartek.formacion.service.CursoServiceImp"> 
    property name="cursoServiceRemote" ref="cursoServiceRemote" /> 
</bean> 

이 도와주세요.

+0

기본적으로 JNID 조회를 수행하고 기본적으로 EJB3이 아닌 EJB 2에 대해 'SimpleRemoteStatelessSessionProxyFactoryBean'을 사용하지 마십시오. –

+0

감사합니다. jnid. – Observer

답변

0

jdni:jee 비록 EJB 빈을 Spring에 삽입 할 수 있었지만.

<jee:jndi-lookup id="cursoServiceRemote" jndi-name="java:app/gestion-docente-ejb/CursoServiceBean" /> 

<bean id="cursoServiceImp" class="com.ipartek.formacion.service.CursoServiceImp"> 
    <property name="cursoServiceRemote" ref="cursoServiceRemote" /> 
</bean>