You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@servicemix.apache.org by patgrea <pa...@gmail.com> on 2008/04/01 16:11:10 UTC

Re: Problems with JMS recoveryInterval : It seem not work


PatGrea wrote:
> 
> 
> Hi Nico74,
> 
> I have the same problem, did you find a solution ? I set log4 to debug
> level and I see that jms always
> add and remove consumer, do you know why ?
> 
> DEBUG - AbstractRegion                 - Adding consumer:
> ID:XERA-2991-1207057721015-3:332:-1:1
> DEBUG - AbstractRegion                 - Adding consumer:
> ID:XERA-2991-1207057721015-3:332:1:1
> DEBUG - AbstractRegion                 - Removing consumer:
> ID:XERA-2991-1207057721015-3:332:1:1
> DEBUG - AbstractRegion                 - Removing consumer:
> ID:XERA-2991-1207057721015-3:332:-1:1
> DEBUG - TransportConnection            - Stopping connection:
> /127.0.0.1:3800
> DEBUG - TransportConnection            - Stopped connection:
> /127.0.0.1:3800
> 
> 


Nico74 wrote:
> 
> Hi,
> 
> My context is very simple : execution errors of a Pojo are send to a jms
> queue via an eip-pipeline. Errors are treated by a bean wich send a mail
> to an external smtp server. 
> All work fine but when I force an error in the mail bean treatment,
> message dequeue is perfectly rollback but no redelivery delay is apply and
> the jms consumer listener is immediatly recall. 
> Is anyone have an idea to configure the redelivery delay ?
> 
> 
> 
> -- JMS EndPoint
> 
> <beans xmlns:jms="http://servicemix.apache.org/jms/1.0"
> 	xmlns:flpos="http://amix-tpv.com/flexpos"
> 	xmlns:amqpool="http://jencks.org/amqpool/2.0"
> 	xmlns:amq="http://activemq.org/config/1.0">
> 
> 
> 
>     <bean id="propertyConfigurer"
>        
> class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
>         <property name="location"
>             value="classpath:flexpos_servicemix.ini" />
>     </bean>
> 
>     <!-- Provider EP -->
> 
> 	<jms:provider service="flpos:BackOfficeImportQueue"
> 		endpoint="jmsQueueProvider"
> 		destinationName="queue/flexPosBackOfficeData"
> 		connectionFactory="#connectionFactory" />
> 
> 
>     <!-- Consumer EP -->
> 
> 	<jms:consumer service="flpos:BackOfficeImportQueue"
> 		endpoint="jmsQueueConsumer"
> 		targetService="flpos:BackOfficeMailService" targetEndpoint="mail"
> 
> 		transacted="jms" 
>                 synchronous="true" 
> 		listenerType="default"
>                 recoveryInterval="40000"
> 		
> 		destinationName="queue/flexPosBackOfficeData"
> 		connectionFactory="#connectionFactory" />
> 
> 
> 	<amq:connectionFactory id="connectionFactory"
> 	
> brokerURL=""tcp://localhost:61616?jms.redeliveryPolicy.initialRedeliveryDelay=20000&amp;jms.redeliveryPolicy.maximumRedeliveries=-1""
> />
> 
> </beans>
> 
> 
> 
> 
> -- Bean System Error Mailing
> 
> 
>     /**
>      * onMessageExchange : entry point for delivered messages
>      */
>     public void onMessageExchange(MessageExchange exchange) throws
> MessagingException
>     {
>         if (exchange.getStatus() != ExchangeStatus.ACTIVE)
>             return;
> 
>         try
>         {
> 		// Process error messages
>                 .......
> 
>                 // indicate message id done
>                 exchange.setStatus(ExchangeStatus.DONE);
>                 mChannel.send(exchange);
> 
>             }
>         } catch (Exception e)
>         {
>             log.error("\nError to send mail : " + e.getMessage());
>             throw new MessagingException(e);
>         }
>     }
> 
> 
> 
> 
> 
> 

-- 
View this message in context: http://www.nabble.com/Problems-with-JMS-recoveryInterval-%3A-It-seem-not-work-tp16218424s12049p16418454.html
Sent from the ServiceMix - User mailing list archive at Nabble.com.