-
1. Re: Accessing HornetQ using remote lookup via JNDI
jbertram Mar 2, 2012 11:53 AM (in response to ziggy25)You can look-up JMS artifacts in JNDI on JBoss AS 7.1.0.Final from a remote client using code like this:
final Properties env = new Properties();
env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.remote.client.InitialContextFactory");
env.put(Context.PROVIDER_URL, "remote://localhost:4447");
env.put(Context.SECURITY_PRINCIPAL, "guest");
env.put(Context.SECURITY_CREDENTIALS, "pass");
Context context = new InitialContext(env);
ConnectionFactory cf = (ConnectionFactory) context.lookup("jms/RemoteConnectionFactory");
Destination destination = (Destination) context.lookup("jms/queue/test");
context.close();
-
2. Re: Accessing HornetQ using remote lookup via JNDI
ziggy25 Mar 4, 2012 7:19 AM (in response to jbertram)Thanks Justin i have tried your suggestion with a simple client test. Here is my configuration:
HornetQ config ($JBOSS_HOME/standalone/configuration/standalone-full.xml
<jms-destinations>
<jms-queue name="testQueue">
<entry name="queue/test"/>
<entry name="java:jboss/exported/jms/queue/test"/>
</jms-queue>
<jms-topic name="testTopic">
<entry name="topic/test"/>
<entry name="java:jboss/exported/jms/topic/test"/>
</jms-topic>
</jms-destinations>
The Test client properties
final Properties env = new Properties();
env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.remote.client.InitialContextFactory");
env.put(Context.PROVIDER_URL, "remote://localhost:4447");
env.put(Context.SECURITY_PRINCIPAL, "appuser");
env.put(Context.SECURITY_CREDENTIALS, "secret");
I can see that the Hornet Queue was started when I started up Jboss
19:12:52,331 INFO [org.hornetq.core.server.impl.HornetQServerImpl] (MSC service thread 1-3) Server is now live
19:12:52,341 INFO [org.hornetq.core.server.impl.HornetQServerImpl] (MSC service thread 1-3) HornetQ Server version 2.2.11.Final (HQ_2_2_11_FINAL_AS7, 122) [19944b54-6491-11e1-b996-be5320524153]) started
19:12:52,353 INFO [org.hornetq.core.server.impl.HornetQServerImpl] (MSC service thread 1-1) trying to deploy queue jms.queue.testQueue
19:12:52,405 INFO [org.jboss.as.messaging] (MSC service thread 1-1) JBAS011601: Bound messaging object to jndi name java:/queue/test
19:12:52,480 INFO [org.jboss.as.messaging] (MSC service thread 1-1) JBAS011601: Bound messaging object to jndi name java:jboss/exported/jms/queue/test
19:12:52,662 INFO [org.jboss.as.messaging] (MSC service thread 1-8) JBAS011601: Bound messaging object to jndi name java:jboss/exported/jms/RemoteConnectionFactory
19:12:52,667 INFO [org.jboss.as.messaging] (MSC service thread 1-8) JBAS011601: Bound messaging object to jndi name java:/RemoteConnectionFactory
19:12:52,672 INFO [org.hornetq.core.server.impl.HornetQServerImpl] (MSC service thread 1-2) trying to deploy queue jms.topic.testTopic
19:12:52,864 INFO [org.jboss.as.messaging] (MSC service thread 1-2) JBAS011601: Bound messaging object to jndi name java:/topic/test
19:12:52,868 INFO [org.jboss.as.messaging] (MSC service thread 1-2) JBAS011601: Bound messaging object to jndi name java:jboss/exported/jms/topic/test
19:12:52,893 INFO [org.jboss.as.messaging] (MSC service thread 1-3) JBAS011601: Bound messaging object to jndi name java:/ConnectionFactory
19:12:52,987 INFO [org.jboss.as.deployment.connector] (MSC service thread 1-7) JBAS010406: Registered connection factory java:/JmsXA
19:12:53,019 INFO [org.hornetq.ra.HornetQResourceAdapter] (MSC service thread 1-7) HornetQ resource adaptor started
19:12:53,027 INFO [org.jboss.as.connector.services.ResourceAdapterActivatorService$ResourceAdapterActivator] (MSC service thread 1-7) IJ020002: Deployed: file://RaActivatorhornetq-ra
19:12:53,038 INFO [org.jboss.as.deployment.connector] (MSC service thread 1-8) JBAS010401: Bound JCA ConnectionFactory [java:/JmsXA]
19:12:53,134 INFO [org.jboss.as] (Controller Boot Thread) JBAS015874: JBoss AS 7.1.0.Final "Thunder" started in 24015ms - Started 168 of 244 services (75 services are passive or on-demand)
19:22:01,001 INFO [org.jboss.as.naming] (Remoting "btp060430" task-4) JBAS011806: Channel end notification received, closing channel Channel ID 613aa287 (inbound) of Remoting connection 009ee6a0 to /127.0.0.1:54180
19:22:01,366 ERROR [org.jboss.remoting.remote.connection] (Remoting "btp060430" read-1) JBREM000200: Remote connection failed: java.io.IOException: An existing connection was forcibly closed by the remote host
19:32:27,997 INFO [org.jboss.as.naming] (Remoting "btp060430" task-3) JBAS011806: Channel end notification received, closing channel Channel ID 716fab73 (inbound) of Remoting connection 01ecdc36 to /127.0.0.1:54204
19:32:28,338 ERROR [org.jboss.remoting.remote.connection] (Remoting "btp060430" read-1) JBREM000200: Remote connection failed: java.io.IOException: An existing connection was forcibly closed by the remote host
19:33:26,850 INFO [org.jboss.as.naming] (Remoting "btp060430" task-2) JBAS011806: Channel end notification received, closing channel Channel ID 59baeb73 (inbound) of Remoting connection 01a82c48 to /127.0.0.1:54211
19:33:27,231 ERROR [org.jboss.remoting.remote.connection] (Remoting "btp060430" read-1) JBREM000200: Remote connection failed: java.io.IOException: An existing connection was forcibly closed by the remote host
19:35:44,464 INFO [org.jboss.as.naming] (Remoting "btp060430" task-1) JBAS011806: Channel end notification received, closing channel Channel ID 3a79742b (inbound) of Remoting connection 001ab167 to /127.0.0.1:54219
19:35:44,813 ERROR [org.jboss.remoting.remote.connection] (Remoting "btp060430" read-1) JBREM000200: Remote connection failed: java.io.IOException: An existing connection was forcibly closed by the remote host
19:37:34,987 INFO [org.jboss.as.naming] (Remoting "btp060430" task-4) JBAS011806: Channel end notification received, closing channel Channel ID 18c06edd (inbound) of Remoting connection 01322c02 to /127.0.0.1:54232
19:37:35,394 ERROR [org.jboss.remoting.remote.connection] (Remoting "btp060430" read-1) JBREM000200: Remote connection failed: java.io.IOException: An existing connection was forcibly closed by the remote host
19:38:27,074 INFO [org.jboss.as.naming] (Remoting "btp060430" task-3) JBAS011806: Channel end notification received, closing channel Channel ID 3b946004 (inbound) of Remoting connection 01ab6497 to /127.0.0.1:54238
19:38:27,454 ERROR [org.jboss.remoting.remote.connection] (Remoting "btp060430" read-1) JBREM000200: Remote connection failed: java.io.IOException: An existing connection was forcibly closed by the remote host
The error that I see
log4j:WARN No appenders could be found for logger (org.jboss.logging).
log4j:WARN Please initialize the log4j system properly.
- javax.naming.NameNotFoundException: queue/test -- service jboss.naming.context.java.jboss.exported.queue.test
at org.jboss.as.naming.ServiceBasedNamingStore.lookup(ServiceBasedNamingStore.java:97)
at org.jboss.as.naming.NamingContext.lookup(NamingContext.java:177)
at org.jboss.naming.remote.protocol.v1.Protocol$1.handleServerMessage(Protocol.java:124)
at org.jboss.naming.remote.protocol.v1.RemoteNamingServerV1$MessageReciever$1.run(RemoteNamingServerV1.java:70)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:885)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:907)
at java.lang.Thread.run(Thread.java:619)
-
3. Re: Accessing HornetQ using remote lookup via JNDI
jbertram Mar 2, 2012 4:39 PM (in response to ziggy25)The NameNotFoundException looks accurate to me since you are trying lookup "queue/test" instead of "jms/queue/test" as I indicated in my previous comment.
The ERRORs you see on the server are some kind of JBoss Remoting bug that I think should be ironed out in 7.1.1. You should be able to safely ignore them.
-
4. Re: Accessing HornetQ using remote lookup via JNDI
ziggy25 Mar 3, 2012 5:58 AM (in response to jbertram)Thanks Justin it is working now. Yes i saw the report on the errors on the server so i was ignoring those for now.
Is it possible to temporarily connect without these two properties?
env.put(Context.SECURITY_PRINCIPAL, "appuser");
env.put(Context.SECURITY_CREDENTIALS, "passw0rd");
If i try to connect without them it comes up with an "authentication failure". Is it possible to disable the authentication so that i dont need to provide the username and password properties?
-
5. Re: Accessing HornetQ using remote lookup via JNDI
jbertram Mar 3, 2012 4:47 PM (in response to ziggy25)Yes, it is possible to disable this security. Simply remove the "security-realm" from the "remoting-connector" <connector>. Here is what the default looks like:
<subsystem xmlns="urn:jboss:domain:remoting:1.1">
<connector name="remoting-connector" socket-binding="remoting" security-realm="ApplicationRealm"/>
</subsystem>
Change it to be like this:
<subsystem xmlns="urn:jboss:domain:remoting:1.1">
<connector name="remoting-connector" socket-binding="remoting"/>
</subsystem>
-
6. Re: Accessing HornetQ using remote lookup via JNDI
ziggy25 Mar 4, 2012 10:05 AM (in response to jbertram)Hi Justin,
I removed the ApplicationRealm from the remoting-connector. It now looks like this
<subsystem xmlns="urn:jboss:domain:remoting:1.1">
<connector name="remoting-connector" socket-binding="remoting"/>
</subsystem>
I also changed the HornetQ security configuration to disable security as described here http://docs.jboss.org/hornetq/2.2.5.Final/user-manual/en/html/security.html
I added the <security-enabled> entry so my hornetq configuration looks like this
<hornetq-server>
...
...
<journal-file-size>102400</journal-file-size>
<journal-min-files>2</journal-min-files>
<security-enabled>false</false>
<connectors>
<netty-connector name="netty" socket-binding="messaging"/>
<netty-connector name="netty-throughput" socket-binding="messaging-throughput">
<param key="batch-delay" value="50"/>
</netty-connector>
<in-vm-connector name="in-vm" server-id="0"/>
</connectors>
...
...
<security-settings>
<security-setting match="#">
<permission type="send" roles="guest"/>
<permission type="consume" roles="guest"/>
<permission type="createNonDurableQueue" roles="guest"/>
<permission type="deleteNonDurableQueue" roles="guest"/>
</security-setting>
</security-settings>
...
...
</hornetq-server>
When i run the client using the following properties:
final Properties env = new Properties(); env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.remote.client.InitialContextFactory"); env.put(Context.PROVIDER_URL, "remote://localhost:4447");
I get the following error:
javax.naming.NamingException: Failed to create remoting connection [Root exception is java.lang.RuntimeException: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed]
at org.jboss.naming.remote.client.ClientUtil.namingException(ClientUtil.java:36)
at org.jboss.naming.remote.client.InitialContextFactory.getInitialContext(InitialContextFactory.java:117)
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 com.jms.client.ConsoleClient.runExample(ConsoleClient.java:45)
at com.jms.client.ConsoleClient.main(ConsoleClient.java:20)
Caused by: java.lang.RuntimeException: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed
at org.jboss.naming.remote.protocol.IoFutureHelper.get(IoFutureHelper.java:87)
at org.jboss.naming.remote.client.cache.ConnectionCache.get(ConnectionCache.java:42)
at org.jboss.naming.remote.client.InitialContextFactory.createConnection(InitialContextFactory.java:153)
at org.jboss.naming.remote.client.InitialContextFactory.getOrCreateConnection(InitialContextFactory.java:126)
at org.jboss.naming.remote.client.InitialContextFactory.getInitialContext(InitialContextFactory.java:106)
... 6 more
Caused by: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed
at org.jboss.remoting3.remote.ClientConnectionOpenListener$Capabilities.handleEvent(ClientConnectionOpenListener.java:365)
at org.jboss.remoting3.remote.ClientConnectionOpenListener$Capabilities.handleEvent(ClientConnectionOpenListener.java:214)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:72)
at org.xnio.channels.TranslatingSuspendableChannel.handleReadable(TranslatingSuspendableChannel.java:189)
at org.xnio.channels.TranslatingSuspendableChannel$1.handleEvent(TranslatingSuspendableChannel.java:103)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:72)
at org.xnio.nio.NioHandle.run(NioHandle.java:90)
at org.xnio.nio.WorkerThread.run(WorkerThread.java:184)
at ...asynchronous invocation...(Unknown Source)
at org.jboss.remoting3.EndpointImpl.doConnect(EndpointImpl.java:270)
at org.jboss.remoting3.EndpointImpl.doConnect(EndpointImpl.java:251)
at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:349)
at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:333)
at org.jboss.naming.remote.client.cache.EndpointCache$EndpointWrapper.connect(EndpointCache.java:110)
at org.jboss.naming.remote.client.cache.ConnectionCache.get(ConnectionCache.java:41)
If i change the connection properties to the following then it does work.
final Properties env = new Properties();
env.put(Context.INITIAL_CONTEXT_FACTORY, "org.jboss.naming.remote.client.InitialContextFactory");
env.put(Context.PROVIDER_URL, "remote://localhost:4447");
env.put(Context.SECURITY_PRINCIPAL, "appuser2");
env.put(Context.SECURITY_CREDENTIALS, "s3cret");
So it works if i provide the username and password and revert the security changes i described above but it doesnt work if i apply the security changes and dont provide the username and password. What else do i need to do to get it to work without having to provide the username and password.
Thanks.
-
7. Re: Accessing HornetQ using remote lookup via JNDI
rahatjaan May 11, 2012 1:48 PM (in response to ziggy25)Hello I am using jboss 7.1 final release. I am trying to look up JMS Ques by providing the
env.put(Context.PROVIDER_URL, "jnp://localhost:5445"); but I get a strange error
JNDI API lookup failed: javax.naming.CommunicationException: Could not obtain connection to any of these urls: localhost:5445 and discovery failed with error: javax.naming.CommunicationException: Receive timed out [Root exception is java.net.SocketTimeoutException: Receive timed out] [Root exception is javax.naming.CommunicationException: Failed to retrieve stub from server localhost/127.0.0.1:5445 [Root exception is java.io.EOFException]]
javax.naming.CommunicationException: Could not obtain connection to any of these urls: localhost:5445 and discovery failed with error: javax.naming.CommunicationException: Receive timed out [Root exception is java.net.SocketTimeoutException: Receive timed out] [Root exception is javax.naming.CommunicationException: Failed to retrieve stub from server localhost/127.0.0.1:5445 [Root exception is java.io.EOFException]]
at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1763)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:693)
at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:686)
at javax.naming.InitialContext.lookup(InitialContext.java:392)
at com.sanmar.notification.jms.SanMarMessageProducer.main(SanMarMessageProducer.java:181)
Caused by: javax.naming.CommunicationException: Failed to retrieve stub from server localhost/127.0.0.1:5445 [Root exception is java.io.EOFException]
at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:327)
at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1734)
... 4 more
Caused by: java.io.EOFException
at java.io.ObjectInputStream$PeekInputStream.readFully(ObjectInputStream.java:2281)
at java.io.ObjectInputStream$BlockDataInputStream.readShort(ObjectInputStream.java:2750)
at java.io.ObjectInputStream.readStreamHeader(ObjectInputStream.java:780)
at java.io.ObjectInputStream.<init>(ObjectInputStream.java:280)
at org.jnp.interfaces.NamingContext.getServer(NamingContext.java:312)
... 5 more
if I try to provide Provider_URL=remote://localhost:4447 then it says host not found. I checked my standalone-full.xml there messaging port is 5445 so I am using this port instead of remote port. Can you guide me what I am doing wrong?
-
8. Re: Accessing HornetQ using remote lookup via JNDI
jbertram May 11, 2012 2:02 PM (in response to rahatjaan)You cannot do JNDI lookups on port 5445. That is the port used for Netty connections for HornetQ. You need to use port 4447.
If you're getting errors when trying to use remote://localhost:4447 then I recommend you open a thread on the AS7 forum. HornetQ is not responsible for JNDI, the application server itself is.
-
9. Re: Accessing HornetQ using remote lookup via JNDI
rahatjaan May 18, 2012 8:13 AM (in response to jbertram)Justin, thank you for your reply. I am able to run JMS with HornetQ on my local machine. I have successfully pushed messages to JMS queue and received as well when I was on my local machine the same client with same properties is unable to create connection when I take it to other network machine. The exception I see is SaslException. Can you guide me on this.
ERROR: JBREM000200: Remote connection failed: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed
javax.naming.NamingException: Failed to create remoting connection [Root exception is java.lang.RuntimeException: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed]
at org.jboss.naming.remote.client.ClientUtil.namingException(ClientUtil.java:36)
at org.jboss.naming.remote.client.InitialContextFactory.getInitialContext(InitialContextFactory.java:117)
at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:684)
at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:305)
at javax.naming.InitialContext.init(InitialContext.java:240)
at javax.naming.InitialContext.<init>(InitialContext.java:214)
at com.sanmar.notification.jms.context.JMSContextManager.getContext(JMSContextManager.java:27)
at com.sanmar.notification.jms.SanMarMessageProducer.<clinit>(SanMarMessageProducer.java:28)
Caused by: java.lang.RuntimeException: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed
at org.jboss.naming.remote.protocol.IoFutureHelper.get(IoFutureHelper.java:87)
at org.jboss.naming.remote.client.cache.ConnectionCache.get(ConnectionCache.java:42)
at org.jboss.naming.remote.client.InitialContextFactory.createConnection(InitialContextFactory.java:153)
at org.jboss.naming.remote.client.InitialContextFactory.getOrCreateConnection(InitialContextFactory.java:126)
at org.jboss.naming.remote.client.InitialContextFactory.getInitialContext(InitialContextFactory.java:106)
... 6 more
Caused by: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed
at org.jboss.remoting3.remote.ClientConnectionOpenListener$Capabilities.handleEvent(ClientConnectionOpenListener.java:365)
at org.jboss.remoting3.remote.ClientConnectionOpenListener$Capabilities.handleEvent(ClientConnectionOpenListener.java:214)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:72)
at org.xnio.channels.TranslatingSuspendableChannel.handleReadable(TranslatingSuspendableChannel.java:189)
at org.xnio.channels.TranslatingSuspendableChannel$1.handleEvent(TranslatingSuspendableChannel.java:103)
at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:72)
at org.xnio.nio.NioHandle.run(NioHandle.java:90)
at org.xnio.nio.WorkerThread.run(WorkerThread.java:184)
at ...asynchronous invocation...(Unknown Source)
at org.jboss.remoting3.EndpointImpl.doConnect(EndpointImpl.java:270)
at org.jboss.remoting3.EndpointImpl.doConnect(EndpointImpl.java:251)
at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:349)
at org.jboss.remoting3.EndpointImpl.connect(EndpointImpl.java:333)
at org.jboss.naming.remote.client.cache.EndpointCache$EndpointWrapper.connect(EndpointCache.java:110)
at org.jboss.naming.remote.client.cache.ConnectionCache.get(ConnectionCache.java:41)
... 9 more
Exception in thread "main" java.lang.NullPointerException
at com.sanmar.notification.jms.SanMarMessageProducer.sendMessage(SanMarMessageProducer.java:45)
at com.sanmar.notification.jms.SanMarMessageProducer.main(SanMarMessageProducer.java:68)
Let me share my client properties here
java.naming.factory.initial=org.jboss.naming.remote.client.InitialContextFactory
java.naming.provider.url=remote://localhost:4447
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
java.naming.security.principal=appuser
java.naming.security.credentials=pwd
I have tried the following properties as well which was not part of my properties earlier.
remote.connectionprovider.create.options.org.xnio.Options.SSL_ENABLED=false
remote.connections=default
remote.connection.two.connect.options.org.xnio.Options.SASL_POLICY_NOANONYMOUS=false
remote.connection.default.username=appuser
remote.connection.default.password=pwd
But none of the thing worked for Remote JNDI look up.
-
10. Re: Accessing HornetQ using remote lookup via JNDI
jbertram May 18, 2012 10:09 AM (in response to rahatjaan)The javax.security.sasl.SaslException thrown by JBoss Remoting 3 code indicates that your JNDI authentication has failed. Please ensure that the credentials (i.e. appuser/pwd) used in your JNDI look-up are valid for the server to which you are connecting. Also, I don't believe that security is enforced on a local client (i.e. a client running on the same machine as the server, though not necessarily in the same JVM) by default so the fact that it works when you're connecting to 'localhost' doesn't necessarily mean these credentials are valid. You can use the <JBOSS_HOME>/bin/add-user.sh script to add users. JNDI uses the "ApplicationRealm".
-
11. Re: Accessing HornetQ using remote lookup via JNDI
valentijn Oct 30, 2012 2:54 PM (in response to rahatjaan)Rahat Ali wrote:
Justin, thank you for your reply. I am able to run JMS with HornetQ on my local machine. I have successfully pushed messages to JMS queue and received as well when I was on my local machine the same client with same properties is unable to create connection when I take it to other network machine. The exception I see is SaslException. Can you guide me on this.
ERROR: JBREM000200: Remote connection failed: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed
javax.naming.NamingException: Failed to create remoting connection [Root exception is java.lang.RuntimeException: javax.security.sasl.SaslException: Authentication failed: all available authentication mechanisms failed]
at org.jboss.naming.remote.client.ClientUtil.namingException(ClientUtil.java:36)
at org.jboss.naming.remote.client.InitialContextFactory.getInitialContext(InitialContextFactory.java:117)
Hello Rahat Ali,
Did you manage to resolve you issue? I am having the same issue that it works locally, but not remotely.
-
12. Re: Accessing HornetQ using remote lookup via JNDI
jbertram Oct 30, 2012 3:02 PM (in response to valentijn)If you're having issues take a look at http://www.jboss.org/jdf/quickstarts/jboss-as-quickstart/helloworld-jms/. It's a full working example with documentation.
-
13. Re: Accessing HornetQ using remote lookup via JNDI
valentijn Oct 30, 2012 3:09 PM (in response to jbertram)Thanks, but I am already beyond that.
Like I say the application is working perfectly when the client is connecting to a JMS queue on the same machine.
The jboss instance MDBs pick up the message, process it and put a response on the response queueu.
the client sees the responses and everything is workig perfect.
However when I move the client to a different machine, it stops working.
I tried to disable security, to try to create a connection with and without the username and password. It just doesn't work.
Depending on the settings I choose I am getting the JBREM000200 connection mentioned above or sometimes just the message that it can't connect to the server.
-
14. Re: Accessing HornetQ using remote lookup via JNDI
jbertram Oct 30, 2012 3:21 PM (in response to valentijn)I tried to disable security...
What exactly did you do to try to disable security? Keep in mind that any remote client doing a JNDI lookup and working with JMS resources is actually working with 2 discrete subsystems (i.e. naming and messaging) which each have their own independent security mechanisms.
...to try to create a connection with and without the username and password. It just doesn't work.
What exactly doesn't work? Are you receiving an exception? If so, what is the stack trace? Can you share the client code?
Depending on the settings I choose I am getting the JBREM000200 connection mentioned above or sometimes just the message that it can't connect to the server.
What specific settings do you choose and what is the exact result for each variation?
Have you added an application user? If so, are you passing those credentials for both the JNDI look-up and JMS createConnection?