我正在尝试使用Java在JBoss EAP 7.2上连接JMS队列。我的获取初始上下文的代码如下:
state = { error: null };
componentWillMount() {
axios.interceptors.response.use(res => res, error => {
this.setState({ error });
});
}
在获得env.put(Context.INITIAL_CONTEXT_FACTORY, "org.wildfly.naming.client.WildFlyInitialContextFactory");
env.put(Context.PROVIDER_URL, "http-remoting://127.0.0.1:8080");
env.put(Context.SECURITY_PRINCIPAL, "jms123");
env.put(Context.SECURITY_CREDENTIALS, "jms123");
return new InitialContext(env);
之后,我试图按如下所示获得连接工厂:
InitialContext
但是我无法获得连接工厂。
注意:我也尝试使用qconFactory = (QueueConnectionFactory) initialContext.lookup("java:jboss/exported/jms/RemoteConnectionFactory");
和jboss/exported/jms/RemoteConnectionFactory
。
我收到以下异常:
jms/RemoteConnectionFactory
我的xml配置如下:
NamingException caught while trying to create connection:javax.naming.NamingException: WFLYNAM0027:
Failed instantiate InitialContextFactory weblogic.jndi.WLInitialContextFactory from classloader
ModuleClassLoader for Module "deployment.***.jar" from Service Module Loader [Root exception is
java.lang.ClassNotFoundException: weblogic.jndi.WLInitialContextFactory from [Module "
deployment.***.jar" from Service Module Loader]];jsessionid=MwSDukhCPIR813I4R8-GWocZZgzVy-srp6eCb-If
FatalException: Trouble opening session with JMS Sender instance:FatalException: Could not get
connection to Queue
javax.naming.NameNotFoundException: jboss -- service jboss.naming.context.java.jboss.exported.jboss
请帮助我找出根本原因。