JBoss 7.1:在JMS上记录时出现远程命名异常

时间:2013-06-19 19:00:30

标签: java logging jms jboss7.x jndi

我有一个应用程序,它在不同机器上的JBoss 7.1服务器上记录到JMS主题(应用程序代码 - > slf4j - > JDK日志记录 - > JMS主题)。日志记录适用于JBoss 6,但不适用于JBoss 7.1。相反,我在使用JNDI查找JMS主题时遇到以下异常:

javax.naming.NamingException: Failed to create remoting connection [Root exception is     java.lang.RuntimeException: Operation failed with status WAITING]
    at org.jboss.naming.remote.client.ClientUtil.namingException(ClientUtil.java:36)
    at org.jboss.naming.remote.client.InitialContextFactory.getInitialContext(InitialContextFactory.java:121)
    at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
    at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
    at javax.naming.InitialContext.init(InitialContext.java:223)
    at javax.naming.InitialContext.<init>(InitialContext.java:197)
    at ...<JMS/JNDI util classes>...
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
    at java.lang.Class.newInstance0(Class.java:355)
    at java.lang.Class.newInstance(Class.java:308)
    at java.util.logging.LogManager$7.run(LogManager.java:919)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.util.logging.LogManager.initializeGlobalHandlers(LogManager.java:911)
    at java.util.logging.LogManager.access$900(LogManager.java:129)
    at java.util.logging.LogManager$RootLogger.getHandlers(LogManager.java:1018)
    at java.util.logging.Logger.log(Logger.java:454)
    at org.slf4j.impl.JDK14LoggerAdapter.log(JDK14LoggerAdapter.java:588)
    at org.slf4j.impl.JDK14LoggerAdapter.info(JDK14LoggerAdapter.java:285)
    at my.application.main(Unknown Source)
Caused by: java.lang.RuntimeException: Operation failed with status WAITING
    at org.jboss.naming.remote.protocol.IoFutureHelper.get(IoFutureHelper.java:89)
    at org.jboss.naming.remote.client.NamingStoreCache.getRemoteNamingStore(NamingStoreCache.java:56)
    at org.jboss.naming.remote.client.InitialContextFactory.getOrCreateCachedNamingStore(InitialContextFactory.java:166)
    at org.jboss.naming.remote.client.InitialContextFactory.getOrCreateNamingStore(InitialContextFactory.java:139)
    at org.jboss.naming.remote.client.InitialContextFactory.getInitialContext(InitialContextFactory.java:104)
    ... 26 more

在应用程序的其他位置,我成功使用相同的类和JNDI属性来查找JMS主题。此外,netcat能够连接到JBoss服务器上的远程命名端口(4447)。

知道为什么这不起作用?

编辑:这是我的代码创建InitialContext

final Properties props = new Properties();
props.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.remote.client.InitialContextFactory");
props.put(Context.PROVIDER_URL, "remote://192.168.xxx.xxx:4447");
props.put("java.naming.security.principal", "remote");
props.put("java.naming.security.credentials", "remotepwd");

InitialContext initialContext = new InitialContext(props);

编辑:启动脚本调用:

bin / standalone.sh -Djboss.bind.address = 192.168.xxx.xxx -Djboss.bind.address.management = 192.168.xxx.xxx -Djboss.bind.address.unsecure = 192.168.xxx.xxx - server-config = standalone-full.xml -b = 192.168.xxx.xxx -bmanagement = 192.168.xxx.xxx

0 个答案:

没有答案