WLS 10.3.4 - В области действия xxx_EJB.jar недоступна единица хранения с именем «xxx»Доступные единицы сохранения: [] - PullRequest
4 голосов
/ 10 января 2012

У меня есть проект корпоративного приложения с 4 модулями.это развернуто на WLS 10.3.4.Я использую затмения helios для разработки с веб-инструментами Oracle для затмения.локальный WLS на моем компьютере установлен в режиме разработки.

структура проекта выглядит следующим образом:

xxx_EAR
|-> xxx_JPA
|-> xxx_EJB
|-> xxx_EJBClient
|-> xxx_WEB

общие файлы jar, используемые в разных модулях, находятся в xxx_EAR / APP-INF / lib

внутри xxx_JPA - файл persistence.xml с тремя единицами постоянства, а в xxx_EJB - классы, bean-компоненты, для ссылки на которые используется @PersistentContext.

EJB version is 3.0
JPA is 1.0 (Eclipselink 1.1.x)

и все работает локально намой компьютеркогда я пытаюсь развернуть файл EAR на тестовом WLS, я получаю следующее исключение

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устанавливается в режиме производства.

у вас есть подсказка?

заранее спасибо !!

Ответы [ 2 ]

0 голосов
/ 17 апреля 2015

У меня была такая же ошибка, но в обратном порядке. Я могу развернуть EAR в рабочей среде или развернуть с консоли WebLogic, но я не могу развернуть локально с помощью плагина Eclipse Weblogic. Для меня сработало изменение версии javax.persistence_xxx.jar в пути сборки проекта EJB.

В моем случае я меняю с javax.persistence_1.xxx на javax.persistence_2.xxx.

Надеюсь, это кому-нибудь поможет. В моем поиске решения этой проблемы мне также помогла ссылка ниже от coderance.

http://www.coderanch.com/t/578851/EJB-JEE/java/persistence-unit-named-scope-BL

0 голосов
/ 10 января 2012

На сервере одинаковые версии?Что произойдет, если вы положите все в банку JPA в банку EJB, тогда это будет работать?

...