4 Replies Latest reply on Mar 30, 2004 7:02 AM by Bruce Ashton

    JMSCacheInvalidationBridge depends on ConnectionFactory

    Bruce Ashton Newbie

      This post is sort of in reference to,
      http://www.jboss.org/index.html?module=bb&op=viewtopic&t=47589

      I am trying to set up the JMS cache invalidation servce accroding to the instructions in the JBoss AS Clustering document. The InvalidationBridge MBean fails to deploy when JBoss starts up with the exception,

      2004-03-30 11:36:03,670 ERROR [org.jboss.cache.invalidation.bridges.JMSCacheInvalidationBridge] Starting failed
      javax.naming.NameNotFoundException: ConnectionFactory not bound
       at org.jnp.server.NamingServer.getBinding(NamingServer.java:495)
       ...


      Once startup has completed however, if I then touch cache-invalidation-service.xml and cause JBoss to re-deploy it, it works fine.
      Additionally I can right a simple client and lookup and use "java:/ConnectionFactory" successfully.

      It seems to me that JBoss is trying to deploy the cache invalidation service before the service that binds ConnectionFactory. So my best guess is that I have to specify an extra depends element in the mbean declaration for the invalidation bridge.
      Here is the current declaration,

      <mbean code="org.jboss.cache.invalidation.bridges.JMSCacheInvalidationBridge"
       name="jboss.cache:service=InvalidationBridge,type=JMS">
       <depends>jboss.cache:service=InvalidationManager</depends>
       <depends>jboss.mq.destination:service=Topic,name=JMSCacheInvalidationBridge</depends>
       <attribute name="InvalidationManager">jboss.cache:service=InvalidationManager</attribute>
       <attribute name="ConnectionFactoryName">java:/ConnectionFactory</attribute>
       <attribute name="TopicName">topic/JMSCacheInvalidationBridge</attribute>
       <attribute name="PropagationMode">1</attribute>
       </mbean>


      My problem is that I have no idea which service I should add the depends element for. Can anybody tell me either what the service is, or how I can go about working it out?
      Any ideas at at all would be very much appreciated, as so far I have received no replies at all.

      Thanks in advance,
      Bruce