2010-06-09 8 views
4

netbeans IDE를 사용하여 EJB 모듈의 Bean을 로컬에서 호출하는 EJB 3 모듈 및 JSF WEB 응용 프로그램을 성공적으로 배포했습니다. 나는 환경을 준비이를 배포하려고 지금 때, 나는 다음과 같은 오류 얻을 : 나는 (스테이징 환경에서) 글래스 피쉬 V2에서 EJB 모듈과 웹 응용 프로그램을 배포 한원격 EJB 및 웹 응용 프로그램 배포

root cause
javax.servlet.ServletException: com.sun.enterprise.InjectionException: Exception attempting to inject Unresolved Ejb-Ref com.store.managedbeans.CustomerManagedBean/[email protected]: [email protected]@[email protected]@null into class com.store.managedbeans.CustomerManagedBean
root cause javax.naming.NameNotFoundException: com.store.service.CustomerRemote#com.store.service.CustomerRemote not found

는 EJB의 국지적 인 항아리 모듈은 웹 응용 프로그램의 WEB-INF/lib 폴더 안에 있습니다. 웹 응용 프로그램이 EJB 모듈을 찾을 수없는 것 같습니다. 클래스는 @Remote로 주석 처리됩니다. 그리고 @EJB를 사용하여 빈이 아니라 인터페이스를 호출합니다. 그리고 물론, Netbeans에서 배포했을 때 발견되었습니다.

+2

답변을 찾았습니다 !! EJB 모듈이 JMS 대기열 연결 팩토리를 참조하고있었습니다. 준비된 glassfish 서버에서 해당 리소스를 만들지 않았습니다. EJB 모듈을 배포 할 수있었습니다. 그러나 콘솔에서 JNDI 로그를 검사했을 때 EJB를 배포하는 데 문제가있어서 아무 EJB도 바인딩되지 않았습니다. 희망이 나중에 도움이됩니다. 나는 이것을 위해 웹을 검색하는 데 약 4 시간 이상을 소비했으며, 내 로컬 서버 콘솔과 스테이징 서버 콘솔을 비교해야했습니다. 나는 설정에 대해 더 많이 배웠다. – Tesnep

답변

0

코멘트에서 :

는 EJB 모듈은 JMS 대기열 연결 팩토리를 참조했다. 준비 글래스 피시 서버에서 리소스가 생성되지 않았습니다. EJB 모듈을 배포 할 수는 있지만 콘솔에서 JNDI 로그를 사용하면 모듈을 배포 할 때의 문제로 인해 EJB에 아무 이름도 바인딩되어 있지 않은 것으로 나타났습니다.

관련 문제