如何在JBoss7中加载APR连接器(本机)

如何在JBoss7中加载APR连接器(本机),jboss,comet,jboss7.x,atmosphere,Jboss,Comet,Jboss7.x,Atmosphere,我想使用Atmosphere XMPP,但我需要加载本机连接器。我对JBoss 7还不是很熟悉,所以我想知道是否有人知道如何做到这一点?WIndows x64或Linux x64环境。没关系。感谢您在这里使用Linux x64。我使用的是Ubuntu 11.04 x64 下载JBoss7发行版并将其解压到一个合适的目录中(从这里我假设您的“/home/myname/tools/jboss701/”文件夹中有它) 使用/jboss701/bin/standalone.sh启动它,并验证它是否正确启

我想使用Atmosphere XMPP,但我需要加载本机连接器。我对JBoss 7还不是很熟悉,所以我想知道是否有人知道如何做到这一点?WIndows x64或Linux x64环境。没关系。感谢您在这里使用Linux x64。我使用的是Ubuntu 11.04 x64

  • 下载JBoss7发行版并将其解压到一个合适的目录中(从这里我假设您的“/home/myname/tools/jboss701/”文件夹中有它)
  • 使用/jboss701/bin/standalone.sh启动它,并验证它是否正确启动(检查localhost:8080URL)。暂时关闭jboss

  • 从这里下载本机库。我已经下载了这个jboss-native-2.0.9-linux2-x64-ssl.tar.gz

  • 将其解压缩到“/home/myname/tools/jboss701/”文件夹中。您应该在“/home/myname/tools/jboss701/bin”文件夹中看到存档的内容。此外,请验证您在“/home/myname/tools/jboss701/bin”文件夹下是否有“本机”文件夹

  • 重要提示:不幸的是,它不能开箱即用。您必须进行以下更改:添加

  • JAVA_OPTS=“$JAVA_OPTS -Djava.library.path=/home/myname/tools/jboss701/bin/native:$path”

    字符串到“standalone.conf”文件


    使用“standalone.sh”脚本启动JBoss。验证在JBoss启动期间控制台中是否有以下行:“org.apache.coyote.http11.Http11AprProtocol”。如果您看到的是“org.apache.coyote.http11.http11aprotocol”而不是“org.apache.coyote.http11.http11aprotocol”,那么一切都正常了。

    谢谢,伙计,我得到了它正在工作。我确实在我的启动脚本中看到了这些行。`15:13:09687 INFO[org.apache.catalina.core.AprLifecycleListener](MSC服务线程1-7)apache Tomcat本机li的旧版本1.1.20 安装了brary,而Tomcat建议版本高于1.1.21

    15:13:11110信息[org.apache.coyote.http11.Http11AprProtocol](MSC服务线程1-3)在HTTP--127.0.0.1-8080上启动coyote HTTP/1.1,不幸的是,仍然抛出相同的错误

    java.lang.IllegalStateException:JBoss未能检测到这是Comet应用程序,因为APR连接器未启用。
    确保atmosphere-compat-jboss.jar不在WEB-INF/lib下,并且
    WEB-INF下没有context.xml
    JBossWebCometSupport.java:66
    sun.reflect.NativeConstructorAccessorImpl.newInstance0(本机方法)
    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.DefaultComeSupportResolver.newCometSupport(DefaultComeSupportResolver.java:178)
    org.atmosphere.cpr.DefaultComeSupportResolver.resolveWebSocket(DefaultComeSupportResolver.java:223)
    org.atmosphere.cpr.DefaultComeSupportResolver.resolve(DefaultComeSupportResolver.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$cleartcltask.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)


    我已经在演示中设置好了所有内容。你能指定你要部署哪个WAR文件吗?我想尝试在我的JBoss中部署它。我按照你的说明在JBoss 5.1.0上运行了它。过程类似:)但是当我为HTTPS配置JBoss时,APR连接器开始抛出错误12:40:25751错误[Http11AprProtocol]初始化端点java.lang.Exception时出错:未指定任何证书文件或org.apache.tomcat.jni.SSLContext.setCertificate(本机方法)处的文件格式无效是否还需要为APR连接器指定证书?如果是,如何进行?请检查