Развертывание Glassfish из Eclipse Helios SR2 завершается неудачно - PullRequest
1 голос
/ 01 марта 2011

У меня возникает странное исключение, которое возникает, когда я пытаюсь развернуть свое приложение Java EE из последней версии Eclipse (Helios SR2 с адаптером Glassfish версии 1.7.1) на последнюю версию Glassfish (3.1). Если я вручную разверну файл war на сервере через консоль администратора, все будет нормально. Так что, похоже, нет ошибки в самом приложении или в конфигурации Glassfish:

SCHWERWIEGEND: Could not resolve a persistence unit corresponding to the persistence-context-ref-name [com.sun.ejb.containers.TimerBean/em] in the scope of the module called [MyCMS]. Please verify your application.
java.lang.RuntimeException: Could not resolve a persistence unit corresponding to the persistence-context-ref-name [com.sun.ejb.containers.TimerBean/em] in the scope of the module called [MyCMS]. Please verify your application.
    at com.sun.enterprise.deployment.BundleDescriptor.findReferencedPUViaEMRef(BundleDescriptor.java:693)
    at com.sun.enterprise.deployment.BundleDescriptor.findReferencedPUsViaPCRefs(BundleDescriptor.java:681)
    at com.sun.enterprise.deployment.WebBundleDescriptor.findReferencedPUs(WebBundleDescriptor.java:1056)
    at org.glassfish.persistence.jpa.JPADeployer.createEMFs(JPADeployer.java:184)
    at org.glassfish.persistence.jpa.JPADeployer.prepare(JPADeployer.java:166)
    at com.sun.enterprise.v3.server.ApplicationLifecycle.prepareModule(ApplicationLifecycle.java:870)
    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:410)
    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240)
    at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:370)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:355)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:370)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1067)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:96)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1247)
    at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1235)
    at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:465)
    at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:222)
    at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:168)
    at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117)
    at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:234)
    at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:822)
    at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:719)
    at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1013)
    at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:225)
    at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
    at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
    at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
    at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
    at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
    at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
    at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
    at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
    at java.lang.Thread.run(Thread.java:619)

Кто-нибудь сталкивался с подобными проблемами с Eclipse и нашел решение?

Cheers, Fabian

Ответы [ 3 ]

1 голос
/ 02 марта 2011

Спасибо, Людо, за помощь!Я решил свою проблему: по какой-то причине отображение рабочего пространства eclipse в папку eclipseApp glassfist было неправильным.Обновление Eclipse привело к развертыванию всей библиотеки зависимостей Maven.И так как derby.jar [test] был также развернут на glassfish, я получил эту странную ошибку.Я больше не могу сказать, как все это произошло и почему это было вызвано обновлением затмения ... в любом случае я решил проблему, добавив следующую строку Свойства> Сборка развертывания: / target / myapp / WEB-INF / lib -> WEB-INF/ Lib

1 голос
/ 16 сентября 2011

Я получал эту ошибку при переносе нашего приложения с JBoss 6-M2 на Glassfish 3.1.1.Файл persistence.xml был заархивирован в файл ear в базовом каталоге META-INF .У JBoss не было проблем с его поиском, но у Glassfish были проблемы с областью видимости.Решением было перестроить архив так, чтобы файл persistence.xml хранился в каталоге META-INF конкретного jar .

0 голосов
/ 01 марта 2011

Это веб-приложение или приложение Full EAR? Я предполагаю, что вы развернули с разобранным каталогом. В свойствах сервера GF появилась новая опция для развертывания архивов Dialo вместо разнесенного каталога. Можешь попробовать? Это скажет, если проблема действительно на стороне упаковки Eclipse или нет. Кажется, что файл persistence.xml неправильно настроен или развернут?

Вы также можете проверить содержимое каталога в разобранном виде, используемое сервером, в каталоге домена. Проверьте подкаталог eclipsApps.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...