2016-05-31 2 views
2

Я использую Netbeans 8.1, сервер MySQL, Glassfish 4,1, EclipseLink в JPA-провайдера, Джерси в качестве поставщика JAX-RS и попытался развернуть следующую простую процедуру:Не удается развернуть приложение JavaEE к Glassfish 4.1

  • Setup из Glassfish 4.1 с пулом соединений MySQL и источником данных
  • Сформирован стандартным приложение JavaEE с EJB и WAR модулем
  • Добавлен некоторые @Entity аннотированных классами
  • Добавлен persistence.xml к ejb- и военным-проектам
  • Автогенерированные классы RESTful из моих классов объектов Netbeans 8.1

Проект строится просто отлично. Но при попытке развернуть файл уха к серверу 4.1 Application Glassfish я получаю следующее сообщение об ошибке в консоли:

GlassFish Server 4.1, deploy, Can not read HTTP response, caught IOException, false 
/Users/nicolas/Workspace (Java)/TestProject/nbproject/build-impl.xml:332: The module has not been deployed. 
See the server log for details. 

А на Glassfish лог я прочитал следующее:

Exception while preparing the app : Unable to load the EJB module. DeploymentContext does not contain any EJB. Check the archive to ensure correct packaging for /Users/nicolas/Workspace (Java)/OilImperium/dist/gfdeploy/TestProject/TestProject-war_war. If you use EJB component annotations to define the EJB, and an ejb or web deployment descriptor is also used, please make sure that the deployment descriptor references a Java EE 5 or higher version schema, and that the metadata-complete attribute is not set to true, so the component annotations can be processed as expected java.lang.RuntimeException: Unable to load the EJB module. DeploymentContext does not contain any EJB. Check the archive to ensure correct packaging for /Users/nicolas/Workspace (Java)/TestProject/dist/gfdeploy/TestProject/TestProject-war_war. If you use EJB component annotations to define the EJB, and an ejb or web deployment descriptor is also used, please make sure that the deployment descriptor references a Java EE 5 or higher version schema, and that the metadata-complete attribute is not set to true, so the component annotations can be processed as expected 
at org.glassfish.ejb.startup.EjbDeployer.prepare(EjbDeployer.java:190) 
at com.sun.enterprise.v3.server.ApplicationLifecycle.prepareModule(ApplicationLifecycle.java:925) 
at org.glassfish.javaee.full.deployment.EarDeployer.prepareBundle(EarDeployer.java:309) 
at org.glassfish.javaee.full.deployment.EarDeployer.access$200(EarDeployer.java:88) 
at org.glassfish.javaee.full.deployment.EarDeployer$1.doBundle(EarDeployer.java:155) 
at org.glassfish.javaee.full.deployment.EarDeployer$1.doBundle(EarDeployer.java:152) 
at org.glassfish.javaee.full.deployment.EarDeployer.doOnBundles(EarDeployer.java:232) 
at org.glassfish.javaee.full.deployment.EarDeployer.doOnAllTypedBundles(EarDeployer.java:241) 
at org.glassfish.javaee.full.deployment.EarDeployer.doOnAllBundles(EarDeployer.java:270) 
at org.glassfish.javaee.full.deployment.EarDeployer.prepare(EarDeployer.java:152) 
at com.sun.enterprise.v3.server.ApplicationLifecycle.prepareModule(ApplicationLifecycle.java:925) 
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:434) 
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:219) 
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:491) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:539) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2$1.run(CommandRunnerImpl.java:535) 
at java.security.AccessController.doPrivileged(Native Method) 
at javax.security.auth.Subject.doAs(Subject.java:360) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl$2.execute(CommandRunnerImpl.java:534) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:565) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl$3.run(CommandRunnerImpl.java:557) 
at java.security.AccessController.doPrivileged(Native Method) 
at javax.security.auth.Subject.doAs(Subject.java:360) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:556) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1464) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1300(CommandRunnerImpl.java:109) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1846) 
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1722) 
at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:534) 
at com.sun.enterprise.v3.admin.AdminAdapter.onMissingResource(AdminAdapter.java:224) 
at org.glassfish.grizzly.http.server.StaticHttpHandlerBase.service(StaticHttpHandlerBase.java:189) 
at com.sun.enterprise.v3.services.impl.ContainerMapper$HttpHandlerCallable.call(ContainerMapper.java:459) 
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:167) 
at org.glassfish.grizzly.http.server.HttpHandler.runService(HttpHandler.java:201) 
at org.glassfish.grizzly.http.server.HttpHandler.doHandle(HttpHandler.java:175) 
at org.glassfish.grizzly.http.server.HttpServerFilter.handleRead(HttpServerFilter.java:235) 
at org.glassfish.grizzly.filterchain.ExecutorResolver$9.execute(ExecutorResolver.java:119) 
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeFilter(DefaultFilterChain.java:284) 
at org.glassfish.grizzly.filterchain.DefaultFilterChain.executeChainPart(DefaultFilterChain.java:201) 
at org.glassfish.grizzly.filterchain.DefaultFilterChain.execute(DefaultFilterChain.java:133) 
at org.glassfish.grizzly.filterchain.DefaultFilterChain.process(DefaultFilterChain.java:112) 
at org.glassfish.grizzly.ProcessorExecutor.execute(ProcessorExecutor.java:77) 
at org.glassfish.grizzly.nio.transport.TCPNIOTransport.fireIOEvent(TCPNIOTransport.java:561) 
at org.glassfish.grizzly.strategies.AbstractIOStrategy.fireIOEvent(AbstractIOStrategy.java:112) 
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.run0(WorkerThreadIOStrategy.java:117) 
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy.access$100(WorkerThreadIOStrategy.java:56) 
at org.glassfish.grizzly.strategies.WorkerThreadIOStrategy$WorkerThreadRunnable.run(WorkerThreadIOStrategy.java:137) 
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:565) 
at org.glassfish.grizzly.threadpool.AbstractThreadPool$Worker.run(AbstractThreadPool.java:545) 
at java.lang.Thread.run(Thread.java:745) 

Кроме того, классы @Entity кажутся не быть найдены войны-проекта:

Class [ ch/baumgardt/model/Well ] not found. Error while loading [ class service.WellFacadeREST ] 

... и больше:

Class [ ch/baumgardt/model/Player ] not found. Error while loading [ class service.PlayerFacadeREST ] 

У кого-нибудь есть идеи, что я могу сделать неправильно?

ответ

0

Перезапустите Glassfish и очистите войну и папку WEB_INF/lib, потому что когда-то это произойдет. `Please Check out Или вы можете создать Restful webservices с помощью netbeans. Создайте пакет java, затем Щелкните правой кнопкой мыши узел CustomerDB и выберите «Создать»> «Другие»> «Веб-службы»> «RESTful Web Services» из базы данных. На панели «Таблицы базы данных» откроется мастер «Новая веб-служба RESTful». Надеюсь, его помощь

+0

Спасибо за ваш ответ. Я уже использую JDK 8 и GF 4.1, и я пробовал ваши предложения, но все та же проблема ... – salocinx

+0

Спасибо за ваше обновление. Этот фрагмент текста, который вы опубликовали, точно из учебника, с которым я работал. Но проблема, кажется, в Netbeans или Glassfish ... – salocinx

1

Возможно, ваш сервер не предоставит доступ к netbeans. Протестируйте его с работающим файлом .war, чтобы увидеть сервер, вы получите ту же ошибку.

Смежные вопросы