2011-01-05 3 views
2

ejb3 주석을 사용하여 jboss 4.2.3에 stateless ejb를 배포하려고합니다. 모든 것이 올바르게 빌드되고 배포되며 jboss가 시작될 때 어떤 오류도 발생하지 않습니다. 그러나 jboss의 바인딩을 보면 ejb가 조회를 위해 JNDI 위치에 바인딩되지 않습니다. 아래는 내 ejb에 대한 것입니다.jboss4.2.3 및 ejb3에서 jndi 바인딩

원격

@Remote 
public interface TestWebService { 

public String TestWebMethod(String param1, String param2); 

} 

비 상태 EJB는

@Stateless 
@RemoteBinding(jndiBinding="TestWeb") 
@Remote(TestWebService.class) 

public class TestWebServiceBean implements TestWebService{ 

public String TestWebMethod(String param1, String param2) { 
    System.out.println("HELLO "+param1+" "+param2); 
    return "Welcome!!"; 
} 

} 

나는 @Remote 및 @RemoteBinding을 가지고 있지 시도 그것은 차이를 만들지 않습니다. 또한 ejb-jar.xml 파일 (ejb3과 함께 사용하면 안 됨)을 추가했는데 차이가 나는 것 같지 않습니다. 아래는 시작시 jboss 로그에서 볼 수있는 출력입니다.

installing MBean: jboss.j2ee:ear=ejb_web_service_ear-0.0.1- SNAPSHOT.ear,jar=ejb_web_service-0.0.1-SNAPSHOT.jar,name=TestWebServiceBean,service=EJB3 with dependencies: 
21:56:00,633 INFO [EJBContainer] STARTED EJB: com.tomax.ejb.TestWebServiceBean ejbName: TestWebServiceBean 

답변

4

나는 이것을 알아 냈으므로 다른 누구도 비슷한 문제가 발생하면 도움이 될 것입니다. 먼저 jboss 4.2.3의 주석에 대한 잘못된 패키지가 있었는데,이 버전의 jboss에 대해서는 org.jboss.anotation.ejb. *이어야합니다 (5 이상). 또한 귀 파일에는 컨테이너에 의해 제공 되었기 때문에 포함되어서는 안되는 몇 가지 추가 종속성 병이있었습니다. 일단 내가 그들을 제거하면 효과가있었습니다.

+0

+1 돌아오고 발견 한 내용을보고하십시오. 자신의 대답을 수락 된 것으로 표시해야합니다. – skaffman