2014-12-15 3 views
0

JBoss 5.1에서 Wildfly 8.2로 마이그레이션 중이며, resteasy와 DB에서 요청 된 데이터를 가져 오는 코드가있는 EAR을 사용하여 웹 서비스를 배포하고 있습니다. 57 : 48,183 INFO [표준 출력 (기본 task- 여러 (6) JAR 파일을 가지고,하지만 난 웹 서비스를 호출 할 때, EAR을 발견하고 EAR 외부의 WAR, EAR 내부의 JAR을 참조 할 수 없습니다. In wildfly 8

(14) JAR 파일

의 참조 할 수 없습니다 EAR에 모두 서비스 jboss.naming - BPC/AccountManagementService : 57 : 48,184 ERROR [열려진 (기본 태스크 4) javax.naming.NameNotFoundException

14 org.jnp.interfaces.NamingContextFactory 기본적 사용 - 4) 정의되지 InitialContextFactory .context.java.bpc.AccountManagementService

나는 2 개의 별도의 EAR 및 WAR 배포가 있으며 둘 다 배포됩니다. aneously 그리고 그들은 둘 다 번거 로움없이 배포됩니다.

지금 통합 할 수없는 이유가 현재 내 문제입니다. 당신이, 당신이 당신의 JNDI 조회를 조정해야 제이보스하는 보스 (5)에서 마이그레이션 한 경우

답변

1

.. 당신은 .. 그래서 아마 당신이 이전 JNDI 구문을 사용하여 조회를 수행하는에 NameNotFoundException을 받고

당신은 시동 할 때 서버에서 로그하면 ejbs에 다른 jndi 이름이 표시됩니다 .. 전쟁에서 ejb를 찾고 두 귀 모두 같은 귀로 묶이지 않으면 java : 전역 이름 지정 유형을 사용해야합니다 ..

예를 들어 AccountManagementService가 인터페이스라고 가정하고이를 @Remote로 주석을 달고 다음 jndi 구문

을 사용하여 전쟁에서 검색합니다
java:global/earName/ejb-jar-name/AccountManagementService!com.example.AccountManagementServiceImpl 

이 문서가 도움이된다면 나는 의존성을 추가하여 WEB-INF 폴더 에서 내 WAR 파일에 JBoss에 배포-structure.xml를 추가하여이 문제를 해결 https://docs.jboss.org/author/display/AS71/Order+Application+Migration+from+EAP5.1+to+AS7

0

(JNDI 조회 코드 섹션을 수정)를 참조하십시오 like

dependencies> 
      <module name="deployment.MY_EAR.ear.MY_EJB_JAR.jar"/> 
</dependencies>