IBM RAD 7 (일명 Eclipse 3.4)과 WebSphere 7을 사용하고 있습니다.내 EAR 프로젝트에서 내 JPA 프로젝트의 주석이 달린 EJB 및 엔티티를 볼 수없는 이유는 무엇입니까?
기본 EJB 설정이있는 작업 공간이 있습니다. 프로젝트 TestEAR, TestEJB, TestJPA, TestWeb.
TestEJB 프로젝트에서 ejb ("@Stateless EntityService")에 주석을 달 수 있으며 정상적으로 작동합니다. 하지만 TestJPA 프로젝트에 ejb ("@Stateless EntityDAO")를 삽입하면 EntityService에 주입되지 않습니다. EntityDAO를 TestEJB 프로젝트로 옮기면 제대로 작동합니다.
또한 클래스에 엔티티 ("@Entity MyEntity")에 주석을 달면 컨테이너에 대한 엔티티로 알려져 있지 않습니다 ("인식되지 않은 엔티티"가 표시됨 ... "알려진 엔티티 유형 : []" 오류). 하지만 TestEJB의 persistence.xml에 my.domain.MyEntity 태그를 추가하면 정상적으로 작동합니다.
질문 : TestEJB 프로젝트가 TestJPA 프로젝트의 주석이 달린 클래스를 인식 할 수없는 이유는 무엇입니까?
참고 : Eclipse 3.4에는 "Deployment Assembly"탭이 없지만 "Java EE 모듈 종속성"탭 (TestEAR> Properties> Java EE Module Dependencies)이 있습니다. 내가 체크하고 모든 프로젝트가 목록에 있고 검사 (예 : TestEJB, TestJPA, TestWeb).
도움을 주시면 대단히 감사하겠습니다. 이 하나는 정말로 저음이되었습니다.
감사합니다, 롭
나는 당신이 말한 모든 것을 시도 할 것이지만, 빠른 질문, 어떻게 EJB와 JPA 엔티티를 같은 프로젝트에 넣을 수 있습니까? 나는 EJB 프로젝트에서 JPA 패싯을 사용하는 방법이 아닌 것처럼 보였습니다. 내가 잘못? –
EJB 프로젝트를 마우스 오른쪽 버튼으로 클릭하고 Properties로 이동하면 "Project Facets"가 표시되어 JPA가 선택되어 있는지 확인해야합니다. –