Как загрузить APR Connector (Native) в JBoss 7 - PullRequest
2 голосов
/ 08 сентября 2011

Я хочу использовать Atmosphere XMPP, но мне нужно загрузить родной разъем APR.Я еще не очень знаком с JBoss 7, поэтому мне было интересно, если кто-нибудь знает, как это сделать?Windows x64 или Linux x64.Не имеет значенияСпасибо

Ответы [ 2 ]

4 голосов
/ 09 сентября 2011

Предполагается, что Linux x64 здесь.Я использую Ubuntu 11.04 x64.

  1. Загрузите дистрибутив JBoss7 и разархивируйте его в подходящий каталог (отсюда я предполагаю, что он находится в вашей папке / home / myname / tools / jboss701 /.
  2. Запустите его с помощью /jboss701/bin/standalone.sh и убедитесь, что он запущен правильно (проверьте localhost: 8080 url). Закройте jboss на данный момент.

  3. Загрузите нативные библиотеки отсюда http://www.jboss.org/jbossweb/downloads/jboss-native-2-0-9.html. Я скачал этот jboss-native-2.0.9-linux2-x64-ssl.tar.gz

  4. Распакуйте его в папку «/ home / myname / tools / jboss701 /». Вы должны увидеть содержимое архива в папке «/ home / myname / tools / jboss701 / bin». Также убедитесь, что у вас есть «родная» папка.в '/ home / myname / tools / jboss701 / bin'

  5. ВАЖНО: к сожалению, это не работает из коробки. Вы должны внести следующее изменение: добавьте

JAVA_OPTS = "$ JAVA_OPTS -Djava.library.path = / home / myname / tools / jboss701 / bin / native: $ PATH "

строка вашего файла standalone.conf.

Запустите JBoss с помощью скрипта standalone.sh.Убедитесь, что во время запуска JBoss у вас есть следующая строка в консоли: 'org.apache.coyote.http11.Http11AprProtocol'.Если вы видите «org.apache.coyote.http11.Http11AprProtocol» вместо «org.apache.coyote.http11.Http11Protocol», то все работает как положено.

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

Спасибо, чувак, у меня все получилось.Теперь я вижу эти строки в моем скрипте запуска.`15: 13: 09,687 INFO [org.apache.catalina.core.AprLifecycleListener] (служебный поток MSC 1-7) Установлена ​​более старая версия Apache Tomcat Native li 1.1.20, а Tomcat рекомендует версию более 1.1.21

15: 13: 11,110 INFO [org.apache.coyote.http11.Http11AprProtocol] (служебный поток MSC 1-3) Запуск Coyote HTTP / 1.1 по http - 127.0.0.1-8080` Атмосфера, к сожалению,все еще выбрасывает ту же ошибку.

java.lang.IllegalStateException: JBoss failed to detect this is a Comet application because the APR Connector is not enabled. Make sure atmosphere-compat-jboss.jar is not under your WEB-INF/lib and there is no context.xml under WEB-INF org.atmosphere.container.JBossWebCometSupport.<clinit>(JBossWebCometSupport.java:66) sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39) sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27) java.lang.reflect.Constructor.newInstance(Constructor.java:513) org.atmosphere.cpr.DefaultCometSupportResolver.newCometSupport(DefaultCometSupportResolver.java:178) org.atmosphere.cpr.DefaultCometSupportResolver.resolveWebSocket(DefaultCometSupportResolver.java:223) org.atmosphere.cpr.DefaultCometSupportResolver.resolve(DefaultCometSupportResolver.java:217) org.atmosphere.cpr.AtmosphereServlet.autoDetectContainer(AtmosphereServlet.java:900) org.atmosphere.cpr.AtmosphereServlet.init(AtmosphereServlet.java:530) org.jboss.as.web.deployment.WebDeploymentService.start(WebDeploymentService.java:70) org.jboss.msc.service.ServiceControllerImpl$StartTask.run(ServiceControllerImpl.java:1765) org.jboss.msc.service.ServiceControllerImpl$ClearTCCLTask.run(ServiceControllerImpl.java:2291) java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) java.lang.Thread.run(Thread.java:662)

Я настроил все как на демонстрациях.тоже

...