Hi John,

try using failover tranposport

http://activemq.apache.org/failover-transport-reference.html

Cheers
--
Dejan Bosanac - http://twitter.com/dejanb

Open Source Integration - http://fusesource.com/
ActiveMQ in Action - http://www.manning.com/snyder/
Blog - http://www.nighttale.net


On Sun, Jun 20, 2010 at 12:56 PM, john robens <jrob...@interlated.com.au>wrote:

> Hi, wondering if you can help me.
>
> I have a setup with the client as a Grails web-application, communicates
> with a broker embedded in a spring server on the back end.
>
> What I would like to solve, is that if the server is restarted the client
> does not reconnect.
>
> Grails client is configured as follows (resources.groovy):
>
> case "production":
>
>      // Not jencks - seems to be out of date.
>      // Connect to server.
>      _jmsConnectionFactory(ActiveMQConnectionFactory) {
>        def server = ConfigurationHolder.config.caller.activemqServer
>        brokerURL = server
>      }
>
>      jmsConnectionFactory(org.apache.activemq.pool.PooledConnectionFactory)
> {
>        connectionFactory = ref('_jmsConnectionFactory')
>      }
>
>      jmsConfig(org.apache.camel.component.jms.JmsConfiguration) {
>        connectionFactory = ref('jmsConnectionFactory')
>        transacted = true
>        concurrentConsumers = 10
>      }
>
>      activemqServer(org.apache.activemq.camel.component.ActiveMQComponent)
> {
>        configuration = ref('jmsConfig')
>      }
>
>
> My url just has compression set:
> tcp://server:61616?jms.useCompression=true
>
>
> My messaging call is:
>
> def response =
>
> camelTemplate.requestBody("activemqServer:queue:checkForNewActivitiesDelta?requestTimeout=${requestTimeout}",
> scoreboard)
>
> My server is setup:
>
>   <broker:broker useJmx="false" persistent="false" brokerName="tcp">
>        <broker:destinationPolicy>
>            <broker:policyMap>
>                <broker:policyEntries>
>          <!--          <broker:policyEntry topic=">"
> advisoryForConsumed="true"/>  -->
>                </broker:policyEntries>
>            </broker:policyMap>
>        </broker:destinationPolicy>
>
>        <broker:transportConnectors>
>            <broker:transportConnector name="tcp" uri="${activemq.uri}"/>
>        </broker:transportConnectors>
>    </broker:broker>
>
>
> It happily processes along. If I kill the server and restart the call to
> requestBody doesn't work:
>
> Server complains with: 'Cannot publish to a deleted destination:
> temp-queue:'
> If I put on full trace logging, I just start getting 'InactivityMonitor'
> messages in the client (Grails side).
>
> I have read some similar posts that say it is a setting I can make with the
> url called. I have been through ActiveMQ in Action and searched, but it is
> not obvious to me.
>
> Thanks
> John
> --
> http://interlated.com.au
> 0434 996 607
>

Reply via email to