2013-01-08 4 views
3

JBoss7을 사용하는 서블릿에 EJB를 삽입하려고하는데 작동하지 않습니다. 코드는 JBoss 6에서 제대로 작동합니다. WAR에서 EJB 코드를 패키지화하고 WAR와 인터페이스하지만 SERVLETS (GWT Servlets)에 주입하지 않습니다.서블릿 용 EJB 주입 - JBoss AS 7

내 코드 보인다

같은 인터페이스 :

@Local 
public interface MyService{ 
} 

구현 : 같은 구현 보스에서 잘 작동했다

@EJB(name = "MyService") 
private MyService service; 

@Stateless(name = "MyService") 
@TransactionManagement(TransactionManagementType.CONTAINER) 
public class MyServiceImpl implements MyService { 
} 

서블릿 나는 생각을 다했다. 도와주세요.

+0

아마도 JBoss AS 7에는 JBoss 모듈이 있고 각 배포가 자체 '모듈'에 존재하기 때문입니다. 그러므로 외부의 유물을 볼 수 없습니까? 하나의 EAR에 랩핑하거나 WAR과 EJB-JAR 사이의 모듈 종속성을 정의하십시오. –

답변

2

EJB이 로컬 일 경우, 모든 것을 전쟁에 투입 할 수 있습니다.

인터페이스의 구현이 하나만있는 경우 EJB의 이름을 제거하면 컨테이너가 해당 유형의 EJB 주입 기반을 해결합니다. 인터페이스를 모두 EJB 3.1과 함께 제거 할 수 있습니다.

더 많은 정보가 필요한 경우 아카이브 (EAR 또는 WAR) 구조와 일부 로그 항목 (주입시 EJB 목록 + 오류)을 제공해야합니다.