Must connect EJB3 MDB in server X to remote topic on server Y.
|
| First confirmed that server Y is up and topic deployed (via JMXConsole to
Y).
|
| I added a Remote provider to deploy/jms-ds.xml on server X.
|
| <!-- Remote JMS provider -->
| <mbean code="org.jboss.jms.jndi.JMSProviderLoader"
|
name="jboss.messaging:service=JMSProviderLoader,name=RemoteJMSProvider,server=remotehost">
| <attribute name="ProviderName">RemoteJMSProvider</attribute>
| <attribute
name="ProviderAdapterClass">org.jboss.jms.jndi.JNDIProviderAdapter</attribute>
| <!-- The connection factory -->
| <attribute name="FactoryRef">java:/XAConnectionFactory</attribute>
| <!-- The queue connection factory -->
| <attribute name="QueueFactoryRef">java:/XAConnectionFactory</attribute>
| <!-- The topic factory -->
| <attribute name="TopicFactoryRef">java:/XAConnectionFactory</attribute>
| <!-- Connect to JNDI on the host "the-remote-host-name" port 1099-->
| <attribute name="Properties">
| java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
| java.naming.factory.url.pkgs=org.jnp.interfaces
| java.naming.provider.url=10.86.147.208:1099
| </attribute>
| </mbean>
|
| Annotations on the topic listener MDB as below (running on server X).
|
|
| @MessageDriven(activationConfig = {
| @ActivationConfigProperty(propertyName = "destinationType",
propertyValue = "javax.jms.Topic"),
| @ActivationConfigProperty(propertyName = "destination", propertyValue =
"topic/edgeGroupRequestTopic"),
| @ActivationConfigProperty(propertyName = "providerAdapterJNDI",
propertyValue="java:/RemoteJMSProvider"),
| @ActivationConfigProperty(propertyName = "maxSession", propertyValue =
"60"),
| // TBD: need ability to setup selector at installation/configuration
time.
| @ActivationConfigProperty(propertyName = "messageSelector",
propertyValue = "EDU_ID IN ('ALL', 'EDU_0001')")})
|
| AS startup on server X gives the following error when MDB tries to connect
to remote topic (typical of a JNDI problem?).
|
|
| 2007-12-19 18:58:37,342 WARN [org.jboss.ejb3.mdb.MessagingContainer] Could
not find the topic destination-jndi-name=/topic/edgeGroupRequestTopic
| 2007-12-19 18:58:37,342 WARN [org.jboss.ejb3.mdb.MessagingContainer]
destination not found: topic/topic/edgeGroupRequestTopic reason:
javax.naming.NameNotFoundException: topic not bound
| 2007-12-19 18:58:37,342 WARN [org.jboss.ejb3.mdb.MessagingContainer]
creating a new temporary destination: topic/topic/edgeGroupRequestTopic
| 2007-12-19 18:58:37,358 WARN [org.jboss.system.ServiceController] Problem
starting service
jboss.j2ee:ear=mdpe-1.0-SNAPSHOT.ear,jar=eduRequestRouter-ejb-1.0-SNAPSHOT.jar,name=EDURequestRouterMDB,service=EJB3
| javax.management.InstanceNotFoundException:
jboss.mq:service=DestinationManager is not registered.
| at
org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:523)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:653)
| at
org.jboss.ejb3.JmxClientKernelAbstraction.invoke(JmxClientKernelAbstraction.java:44)
| at
org.jboss.ejb3.jms.DestinationManagerJMSDestinationFactory.createDestination(DestinationManagerJMSDestinationFactory.java:75)
| at
org.jboss.ejb3.mdb.MessagingContainer.createTemporaryDestination(MessagingContainer.java:557)
| at
org.jboss.ejb3.mdb.MessagingContainer.createDestination(MessagingContainer.java:496)
|
|
| What am I doing wrong?
|
|
| --------------------
|
| Further DEBUG turned up...llosk like the DefaultJMSProvider is being used
tot he remote lookup instead of RemoteJMSProvider?
|
|
|
| 2007-12-20 11:51:08,744 DEBUG [org.jboss.ejb3.mdb.MessagingContainer]
Initializing
| 2007-12-20 11:51:08,744 DEBUG [org.jboss.ejb3.mdb.MessagingContainer]
Looking up provider adapter: java:/DefaultJMSProvider
| 2007-12-20 11:51:08,744 DEBUG [org.jboss.ejb3.mdb.MessagingContainer]
Provider adapter: [EMAIL PROTECTED]
| 2007-12-20 11:51:08,744 DEBUG [org.jboss.ejb3.mdb.MessagingContainer]
context: [EMAIL PROTECTED]
| 2007-12-20 11:51:08,744 DEBUG [org.jboss.ejb3.mdb.MessagingContainer] Got
destination type Topic for EDURequestRouterMDB
| 2007-12-20 11:51:08,744 DEBUG [org.jboss.ejb3.mdb.MessagingContainer]
jndiSuffix: topic/edgeGroupRequestTopic
| 2007-12-20 11:51:08,744 WARN [org.jboss.ejb3.mdb.MessagingContainer] Could
not find the topic destination-jndi-name=/topic/edgeGroupRequestTopic
| 2007-12-20 11:51:08,744 WARN [org.jboss.ejb3.mdb.MessagingContainer]
destination not found: topic/topic/edgeGroupRequestTopic reason:
javax.naming.NameNotFoundException: topic not bound
| 2007-12-20 11:51:08,744 WARN [org.jboss.ejb3.mdb.MessagingContainer]
creating a new temporary destination: topic/topic/edgeGroupRequestTopic
| 2007-12-20 11:51:08,759 DEBUG [org.jboss.ejb3.mdb.MdbDelegateWrapper]
Starting failed
jboss.j2ee:ear=mdpe-1.0-SNAPSHOT.ear,jar=eduRequestRouter-ejb-1.0-SNAPSHOT.jar,name=EDURequestRouterMDB,service=EJB3
| javax.management.InstanceNotFoundException:
jboss.mq:service=DestinationManager is not registered.
| at
org.jboss.mx.server.registry.BasicMBeanRegistry.get(BasicMBeanRegistry.java:523)
| at org.jboss.mx.server.MBeanServerImpl.invoke(MBeanServerImpl.java:653)
|
|
|
|
| [code]
View the original post :
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4114736#4114736
Reply to the post :
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4114736
_______________________________________________
jboss-user mailing list
[email protected]
https://lists.jboss.org/mailman/listinfo/jboss-user