4 개의 모듈이있는 엔터프라이즈 응용 프로그램 프로젝트가 있습니다. WLS 10.3.4에 배포됩니다. 나는 일식에 대한 오라클 웹 도구 개발을 위해 이클립스 helios를 사용하고있다. 내 컴퓨터의 로컬 WLS가 개발 모드로 설치됩니다. 프로젝트WLS 10.3.4 - xxx_EJB.jar 범위에서 'xxx'라는 지속성 장치를 사용할 수 없습니다. 사용 가능한 영속성 단위 : []
구성이 같다 :
xxx_EAR
|-> xxx_JPA
|-> xxx_EJB
|-> xxx_EJBClient
|-> xxx_WEB
공통 항아리 모듈 xxx_EAR/APP-INF/lib에있는 건너 것을 사용하는
xxx_JPA 내부세 지속성 단위의 persistence.xml이다 , xxx_EJB에서는 @PersistentContext를 사용하여 참조하는 클래스, Bean입니다.
EJB version is 3.0
JPA is 1.0 (Eclipselink 1.1.x)
모든 것이 로컬로 컴퓨터에서 작동합니다. 내가 보는 바와 같이 나는 서버 사이에, 다음과 같은 예외
Unable to deploy EJB: XxxFacadeImpl from xxx_EJB.jar:
No persistence unit named 'xxx_EJB' is available in scope xxx_EJB.jar. Available persistence units: []
at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:469)
at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:199)
at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:518)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:159)
...
유일한 차이납니다 테스트 WLS에 EAR 파일을 배포 할 때 설치 모드에 테스트 WLS가 설치됩니다 생산 모드.
어떤 힌트가 있습니까?
미리 감사드립니다.
모든 모듈을 ejb 모듈에 넣으면 작동합니다. xxx_EJB와 xxx_WEB라는 두 개의 모듈 만 있으면. 하지만 레이어를 분리해야합니다. 그래서 두 개의 모듈, persistence와 EJBClient를위한 JPA를 만들었습니다.이 경우 테스트 서버에 귀를 배치하는 동안 오류가 발생했습니다. – Kenny