2016-07-08 4 views
1

Я разработал веб-приложение JavaEE 7.0 с использованием NetBeans (IDE) и GlassFish 4.1.0 (веб-сервер).java.lang.IllegalArgumentException на сервере Red Hat

Приложение работает как шарм, когда я развертываю его на локальном хосте. Теперь я хотел бы развернуть его на Red Hat Enterprise Edition Linux Server 5.11, используя GlassFish 4.1.0.

Поэтому я установил GlassFish на моем сервере Red Hat и я последовал за следующие действия:

  1. Открылся консоль GlassFish администрирования и пошел к узлу «Приложения»: enter image description here
  2. кликнул на «Deploy» и отобрал файл войны (хранящийся на сервере Red Hat) приложения, которое я хотел развернуть: enter image description here
  3. Нажав кнопку «Выбрать файл». Появилось следующее окно: enter image description here
  4. Мое приложение нуждается в некоторых файлах JAR для правильной работы. Все они сохраняются в следующей папке: enter image description here
  5. Затем я вставил все пути в записи «Библиотеки» в GlassFish Administration Console: enter image description here
  6. развернутого приложения и перезагрузки сервера NetBeans

Однако каждый раз, когда я бегу мое веб-приложение, я получаю следующее сообщение об ошибке:

[2016-07-08T21:20:15.226+0200] [glassfish 4.1] [SEVERE] [NCLS-CORE-00026] [javax.enterprise.system.core] [tid: _ThreadID=22 _ThreadName=RunLevelControllerThread-1468005611695] [timeMillis: 1468005615226] [levelValue: 1000] [[ 

    Exception during lifecycle processing 

java.lang.IllegalArgumentException: Specified library jar android-7.jar does not exist: /opt/glassfish4/glassfish/domains/domain1/lib/android-7.jar 

    at org.glassfish.deployment.common.DeploymentContextImpl.getAppLibs(DeploymentContextImpl.java:458) 

    at org.glassfish.deployment.common.DeploymentContextImpl.createClassLoader(DeploymentContextImpl.java:244) 

    at org.glassfish.deployment.common.DeploymentContextImpl.createDeploymentClassLoader(DeploymentContextImpl.java:229) 

    at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:365) 

    at com.sun.enterprise.v3.server.ApplicationLoaderService.processApplication(ApplicationLoaderService.java:406) 

    at com.sun.enterprise.v3.server.ApplicationLoaderService.postConstruct(ApplicationLoaderService.java:243) 

    at org.jvnet.hk2.internal.ClazzCreator.postConstructMe(ClazzCreator.java:329) 

    at org.jvnet.hk2.internal.ClazzCreator.create(ClazzCreator.java:377) 

    at org.jvnet.hk2.internal.SystemDescriptor.create(SystemDescriptor.java:461) 

    at org.glassfish.hk2.runlevel.internal.AsyncRunLevelContext.findOrCreate(AsyncRunLevelContext.java:227) 

    at org.glassfish.hk2.runlevel.RunLevelContext.findOrCreate(RunLevelContext.java:84) 

    at org.jvnet.hk2.internal.Utilities.createService(Utilities.java:2258) 

    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:105) 

    at org.jvnet.hk2.internal.ServiceHandleImpl.getService(ServiceHandleImpl.java:87) 

    at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.oneJob(CurrentTaskFuture.java:1162) 

    at org.glassfish.hk2.runlevel.internal.CurrentTaskFuture$QueueRunner.run(CurrentTaskFuture.java:1147) 

    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) 

    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) 

    at java.lang.Thread.run(Thread.java:745) 

]] 

Я действительно не понимаю, что происходит, могли бы вы мне поможете?

ответ

2

Then I inserted all the paths in the "Libraries" entry of the GlassFish Administration Console:

Вам не нужно это делать, я думаю, это вызывает проблему.

Glassfish ищет LIBS в папке lib автоматически, если это не работает, вы можете также попробовать сервер глобального Lib папки в /opt/glassfish4/glassfish/lib

Если он все еще не работает там, возможно, проблемы с доступом но на скриншоте это выглядит нормально (читается в мире).

+0

Hi unichtich, на самом деле это работает как шарм. Большое спасибо за Вашу помощь. Я ценю. –