You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by Bruce Snyder <br...@gmail.com> on 2007/10/05 06:25:45 UTC

Re: Guranteed delivery

On 10/4/07, kumar k <ku...@yahoo.com> wrote:
> How can we ensure guranteed delivery of message in jms components or otherwise?

Well the JMS spec guarantees message delivery, but I'm not exactly
sure about the context of your question. Please provide more detail.

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
);'

Apache ActiveMQ - http://activemq.org/
Apache ServiceMix - http://servicemix.org/
Apache Geronimo - http://geronimo.apache.org/
Castor - http://castor.org/

Re: Guranteed delivery

Posted by Bruce Snyder <br...@gmail.com>.
On 10/6/07, kumar k <ku...@yahoo.com> wrote:
> Bruce,
>   Thanks for your reply. This configuration provides facility for durable sunscriber for a jms consumer. How ever where should I provide configuration details that jms provider should persist the message and details for persistence store?

This is defined in conf/activemq.xml. Message persistence is enabled
by default and it uses Apache Derby as the database, but this can be
easily changed via the activemq.xml file.

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
);'

Apache ActiveMQ - http://activemq.org/
Apache ServiceMix - http://servicemix.org/
Apache Geronimo - http://geronimo.apache.org/
Castor - http://castor.org/

Re: Guranteed delivery

Posted by Bruce Snyder <br...@gmail.com>.
On 10/6/07, kumar k <ku...@yahoo.com> wrote:
> With which version subscriptionDurable="true"  option is available? I am working with 3.1.2 and I am getting below mentioned error.
>
>   Caused by: org.springframework.beans.InvalidPropertyException: Invalid property 'subscriptionDurable' of bean class [org.apache.servicemix.jms.JmsEndpoint]: No property 'subscriptionDurable' found

The new JMS endpoints are in the ServiceMix trunks (version 3.2) which
I believe we're targeting for release later this month.

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
);'

Apache ActiveMQ - http://activemq.org/
Apache ServiceMix - http://servicemix.org/
Apache Geronimo - http://geronimo.apache.org/
Castor - http://castor.org/

Re: Guranteed delivery

Posted by sandeep reddy <sa...@in2m.com>.
I am using Pub-Sub model using (topic).

    Problem:
             1. I am able to successfully send messages to topic.
             2. And consumers are able to get consume message depending upon
the criteria (using messageSelector). But here some times when my consumer
goes offline at that time if any message comes to topic are not able to
consume that message.
             3. So found that to use durableSubscriber.But after doing
necessary settings, deployed component to servicemix getting error :
               
                       ERROR - DefaultMessageListenerContainer - Setup of
JMS message listener invoker failed - trying to recover
        javax.jms.JMSException: You cannot create a durable subscriber
without specifying a unique clientID on a Connection
        at
org.apache.activemq.ActiveMQConnection.checkClientIDWasManuallySpecified(ActiveMQConnection.java:1138)
        at
org.apache.activemq.ActiveMQSession.createDurableSubscriber(ActiveMQSession.java:1066)
        at
org.springframework.jms.listener.AbstractPollingMessageListenerContainer.createConsumer(AbstractPollingMessageListenerContainer.java:429)

Note: Using servicemix3.2.1

JMSConsumer configuration:

             <jms:consumer service="up:DirectorConsumerService"
                  endpoint="directorConsumerEndpoint"
                  targetService="up:DirectorConsumerService"
                  pubSubDomain="true"
                  clientId="Director"
                  durableSubscriptionName="Director"
                  subscriptionDurable="true"
                  destinationName="updateUserProfileTopic"
                  connectionFactory="#connectionFactory"
                  messageSelector="userPrincipals LIKE '%sandeep2%'"/>
   
    <jms:consumer service="up:PortalConsumerService"
                            endpoint="portalConsumerEndpoint"
                            targetService="up:PortalConsumerService"
                            pubSubDomain="true"
                            clientId="Portal"
                           durableSubscriptionName="Portal"
                           subscriptionDurable="true"
                           destinationName="updateUserProfileTopic"
                           connectionFactory="#connectionFactory"
                          messageSelector="userPrincipals LIKE '%smx%'"/>

     
what's wrong?

Sandeep.

-- 
View this message in context: http://www.nabble.com/Guranteed-delivery-tp13037343p18213247.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.


Re: Guranteed delivery

Posted by kumar k <ku...@yahoo.com>.
With which version subscriptionDurable="true"  option is available? I am working with 3.1.2 and I am getting below mentioned error.
   
  Caused by: org.springframework.beans.InvalidPropertyException: Invalid property 'subscriptionDurable' of bean class [org.apache.servicemix.jms.JmsEndpoint]: No property 'subscriptionDurable' found

Bruce Snyder <br...@gmail.com> wrote:
  On 10/5/07, kumar k wrote:
> How do we specify (tell) to jms component/connection factory that message should be persisted if a durable subscriber is not up. When the subscriber becomes up then the message should be delivered.

Using the new JMS endpoints you can specify many more options. For
message durability, the JmsConsumerEndpoint offers the
setSubscriptionDurable() method. The configuration for this new
endpoint with these options would look like this:



service="foo:myJmsConsumerService"
endpoint="endpointX"
targetService="bar:theNextService"
targetEndpoint="endpointY"
destinationName="queueA"
subscriptionDurable="true"
connectionFactory="#connectionFactory" />

brokerURL="tcp://localhost:61616" />



For more information on the new JMS endpoints, see the docs here:

http://incubator.apache.org/servicemix/servicemix-jms-new-endpoints.html

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E);'

Apache ActiveMQ - http://activemq.org/
Apache ServiceMix - http://servicemix.org/
Apache Geronimo - http://geronimo.apache.org/
Castor - http://castor.org/


       
---------------------------------
Shape Yahoo! in your own image.  Join our Network Research Panel today!

Re: Guranteed delivery

Posted by kumar k <ku...@yahoo.com>.
Bruce,
  Thanks for your reply. This configuration provides facility for durable sunscriber for a jms consumer. How ever where should I provide configuration details that jms provider should persist the message and details for persistence store? 
  Thanks
  Kumar

Bruce Snyder <br...@gmail.com> wrote:
  On 10/5/07, kumar k wrote:
> How do we specify (tell) to jms component/connection factory that message should be persisted if a durable subscriber is not up. When the subscriber becomes up then the message should be delivered.

Using the new JMS endpoints you can specify many more options. For
message durability, the JmsConsumerEndpoint offers the
setSubscriptionDurable() method. The configuration for this new
endpoint with these options would look like this:



service="foo:myJmsConsumerService"
endpoint="endpointX"
targetService="bar:theNextService"
targetEndpoint="endpointY"
destinationName="queueA"
subscriptionDurable="true"
connectionFactory="#connectionFactory" />

brokerURL="tcp://localhost:61616" />



For more information on the new JMS endpoints, see the docs here:

http://incubator.apache.org/servicemix/servicemix-jms-new-endpoints.html

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E);'

Apache ActiveMQ - http://activemq.org/
Apache ServiceMix - http://servicemix.org/
Apache Geronimo - http://geronimo.apache.org/
Castor - http://castor.org/


       
---------------------------------
Moody friends. Drama queens. Your life? Nope! - their life, your story.
 Play Sims Stories at Yahoo! Games. 

Re: Guranteed delivery

Posted by Bruce Snyder <br...@gmail.com>.
On 10/5/07, kumar k <ku...@yahoo.com> wrote:
> How do we specify (tell) to jms component/connection factory  that message should be persisted if a durable subscriber is not up. When the subscriber becomes up then the message should be delivered.

Using the new JMS endpoints you can specify many more options. For
message durability, the JmsConsumerEndpoint offers the
setSubscriptionDurable() method. The configuration for this new
endpoint with these options would look like this:

<beans ...>

  <jms:consumer
    service="foo:myJmsConsumerService"
    endpoint="endpointX"
    targetService="bar:theNextService"
    targetEndpoint="endpointY"
    destinationName="queueA"
    subscriptionDurable="true"
    connectionFactory="#connectionFactory" />

  <amq:connectionFactory id="connectionFactory"
brokerURL="tcp://localhost:61616" />

</beans>

For more information on the new JMS endpoints, see the docs here:

http://incubator.apache.org/servicemix/servicemix-jms-new-endpoints.html

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E<D\!G;6%I;\"YC;VT*"
);'

Apache ActiveMQ - http://activemq.org/
Apache ServiceMix - http://servicemix.org/
Apache Geronimo - http://geronimo.apache.org/
Castor - http://castor.org/

Re: Guranteed delivery

Posted by kumar k <ku...@yahoo.com>.
How do we specify (tell) to jms component/connection factory  that message should be persisted if a durable subscriber is not up. When the subscriber becomes up then the message should be delivered. 

Bruce Snyder <br...@gmail.com> wrote:  On 10/4/07, kumar k wrote:
> How can we ensure guranteed delivery of message in jms components or otherwise?

Well the JMS spec guarantees message delivery, but I'm not exactly
sure about the context of your question. Please provide more detail.

Bruce
-- 
perl -e 'print unpack("u30","D0G)U8V4\@4VYY9&5R\"F)R=6-E+G-N>61E);'

Apache ActiveMQ - http://activemq.org/
Apache ServiceMix - http://servicemix.org/
Apache Geronimo - http://geronimo.apache.org/
Castor - http://castor.org/


       
---------------------------------
Catch up on fall's hot new shows on Yahoo! TV.  Watch previews, get listings, and more!