在尝试连接到JBoss EAP 7.1上部署的ActiveMQ Artemis队列时,出现以下错误。
错误:DefaultMessageListenerContainer:无法刷新JMS
目标“jms/queue/QueueA”的连接-正在使用重试
FixedBackOff{间隔=5000,currentAttempts=139,
maxAttempts=无限}。原因:AMQ119031:无法验证用户
下面是我使用的代码:
@Bean public DefaultMessageListenerContainer myFactory() throws NamingException {
DefaultMessageListenerContainer listenerContainer = new DefaultMessageListenerContainer();
listenerContainer.setConnectionFactory(getConnectionFactory());
listenerContainer.setDestinationName("jms/queue/QueueA");
listenerContainer.setMessageListener(new MessageReceiver());
return listenerContainer;
}
private ConnectionFactory getConnectionFactory() throws NamingException {
final Properties env = new Properties();
env.put(Context.INITIAL_CONTEXT_FACTORY, org.wildfly.naming.client.WildFlyInitialContextFactory);
env.put(Context.PROVIDER_URL, "http-remoting://localhost:8080");
env.put(Context.SECURITY_PRINCIPAL, "Username");
env.put(Context.SECURITY_CREDENTIALS, "Password");
InitialContext ic = new InitialContext(env);
return (ConnectionFactory) ic.lookup("jms/RemoteConnectionFactory");
}