Problem using HTTPS IL in an MDB configured for a remote top
mpriest Apr 1, 2005 5:37 PMHi,
I am a JBosss newbie so please forgive me if the answer is obvious. I am using JBossAS 4.0.1sp1.
I followed the instructions in the Wiki for accessing JBossMQ over https. I can successfully publish to the topic using JNDI and JMS over https as described in the Wiki.
I followed the instructions in the Wiki for configuring an MDB to use a remote topic. I can now access a topic on a remote JBossMQ instance from another JBossAS. However, I want to use HTTPS rather than RMI for JNDI and JMS to the remote topic. When I change the configuration to accomplish this the MDB does not receive any of the messages. When I access the same topic from a stand-alone client (adapted from the J2EE tutorial) with the same HTTPs configuration I do get the messages. It appears that the JBossAS hosting the MDB does connect to the remote JNDI provider on startup because I see this in the remote server log:
2005-04-01 17:31:22,321 DEBUG [org.apache.catalina.authenticator.AuthenticatorBase] Security checking request GET /invoker/JNDIFactorySSL
2005-04-01 17:31:22,321 DEBUG [org.apache.catalina.realm.RealmBase] Checking constraint 'SecurityConstraint[HttpInvokers]' against GET /JNDIFactorySSL --> false
2005-04-01 17:31:22,321 DEBUG [org.apache.catalina.realm.RealmBase] No applicable constraint located
2005-04-01 17:31:22,321 DEBUG [org.apache.catalina.authenticator.AuthenticatorBase] Not subject to any constraint
2005-04-01 17:31:22,321 DEBUG [org.apache.catalina.core.StandardWrapper] Returning non-STM instance
2005-04-01 17:31:22,351 DEBUG [org.apache.coyote.http11.Http11Protocol] IOException reading request
javax.net.ssl.SSLException: Connection has been shutdown: javax.net.ssl.SSLException: java.net.SocketException: Software caused connection abort: recv failed
Both JBossAS server instances are running on the same host if that matters.
Here is the configuraiotn that works using the normal JNDI and JMS configuration:
<!--
This works
RemoteJMSProvider
org.jboss.jms.jndi.JNDIProviderAdapter
XAConnectionFactory
XAConnectionFactory
java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
java.naming.factory.url.pkgs=org.jnp.interfaces
java.naming.provider.url=jnp://localhost:1999
-->
This is the configuration with HTTPS that does not receive any messages (or errors):
RemoteJMSProvider
org.jboss.jms.jndi.JNDIProviderAdapter
<!-- The queue connection factory -->
HTTPConnectionFactory
<!-- The topic factory -->
HTTPConnectionFactory
<!-- Connect to HAJNDI on the host whatever -->
java.naming.factory.initial=org.jboss.naming.HttpNamingContextFactory
java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces;java.protocol.handler.pkgs
java.naming.provider.url=https://localhost:8443/invoker/JNDIFactorySSL
Can anyone tell me what I am doing wrong?
Thanks,
Mark