camel-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Prakash Shetty (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (CAMEL-6256) Camel xmpp dynamic router is not sending incoming messages to openfire upon first failed groupchatroom join
Date Tue, 16 Apr 2013 11:41:15 GMT

    [ https://issues.apache.org/jira/browse/CAMEL-6256?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13632772#comment-13632772
] 

Prakash Shetty commented on CAMEL-6256:
---------------------------------------

I just observed the codebase at head vesrion of  https://svn.apache.org/repos/asf/camel/trunk.

Here I can see the code changes as below.

File : org.apache.camel.component.xmpp.XmppEndpoint
Method : public synchronized XMPPConnection createConnection()
Changes : if (connection != null && connection.isConnected()) {       FROM     if
(connection != null) {

Looks like, this change will fix this defect, I feel.   Need to test more.

Will this changes  go for Camel 2.11.0 release?
I tried to download src from http://apache.techartifact.com/mirror/camel/apache-camel/2.11.0/apache-camel-2.11.0-src.zip
to verify the inclusion of this changes.
But link is not working yet.




                
> Camel xmpp dynamic router is not sending incoming messages to openfire upon first failed
groupchatroom join
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: CAMEL-6256
>                 URL: https://issues.apache.org/jira/browse/CAMEL-6256
>             Project: Camel
>          Issue Type: Bug
>          Components: camel-xmpp
>    Affects Versions: 2.10.3
>         Environment: camel xmpp routing with openfire xmpp server.  Used groupchat configurations
>            Reporter: Prakash Shetty
>            Priority: Critical
>              Labels: connection, groupchat, xmpp
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> Reference : http://camel.465427.n5.nabble.com/Camel-xmpp-dynamic-router-is-not-connecting-to-openfire-td5730506.html#a5730537
> {code:xml} 
> <camel:route id="eventSubscriber">
>                         <camel:from uri="ref:eventReceiverUri" />
>                          <camel:dynamicRouter>                  
>                     <camel:method ref="eventRouterBean" method="processEvent"/>
>                 </camel:dynamicRouter>
>                 </camel:route> 
> {code}
> In eventRouterBean's processEvent method, we are building xmpp groupchat room url depending
upon the message and forwading the same message into respective groupchatrooms. 
> If resulting groupchat room is not existing, it will log message 
> WARN 2013-04-05 17:55:48,190 (UnitOfWorkProcessor.java processAsync:162) - Caught unhandled
exception while processing ExchangeId: ID-INGBTCPIC8NB038-63130-1365164745141-0-3 
> org.apache.camel.FailedToCreateProducerException: Failed to create Producer for endpoint:
Endpoint[xmpp://<ip>:5222/?password=******&resource=zone_4fc100e4-d004-4a0b-a7e2-7cf910585af6_51&room=zone_4fc100e4-d004-4a0b-a7e2-7cf910585af6_51%40conference.test.com&serviceName=ispf.com&user=messagepublisher%40test.com].
Reason: not-allowed(405) 
>         at org.apache.camel.impl.ProducerCache.doGetProducer(ProducerCache.java:395)

>         at org.apache.camel.impl.ProducerCache.doInAsyncProducer(ProducerCache.java:278)

>         at org.apache.camel.processor.RoutingSlip.processExchange(RoutingSlip.java:280)

>         at org.apache.camel.processor.RoutingSlip.doRoutingSlip(RoutingSlip.java:205)

>         at org.apache.camel.processor.RoutingSlip.process(RoutingSlip.java:135) 
>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)

>         at org.apache.camel.processor.DelegateAsyncProcessor.processNext(DelegateAsyncProcessor.java:99)

>         at org.apache.camel.processor.DelegateAsyncProcessor.process(DelegateAsyncProcessor.java:90)

>         at org.apache.camel.management.InstrumentationProcessor.process(InstrumentationProcessor.java:73)

>         at org.apache.camel.util.AsyncProcessorHelper.process(AsyncProcessorHelper.java:73)

> and ...... 
> Caused by: not-allowed(405) 
>         at org.jivesoftware.smackx.muc.MultiUserChat.join(MultiUserChat.java:501) 
>         at org.apache.camel.component.xmpp.XmppGroupChatProducer.doStart(XmppGroupChatProducer.java:84)

>         at org.apache.camel.support.ServiceSupport.start(ServiceSupport.java:60) 
>         at org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:62) 
>         at org.apache.camel.impl.ProducerCache.doGetProducer(ProducerCache.java:393)

>         ... 40 more 
> This is still fine. 
> But issue is if I create a groupchat room in openfire, it should forward new incoming
message to same groupchat room. But it is not forwarding.
> It is keep on logging error message as 'Not connected to the server' repeatedly for all
messages.
> But if I restart the camel context, then it starts working. 
> Looks like it is caching url and its connection as not allowed in dynamic router. 
> What will be the solution? 
> And even the exception is thowing at ProducerCache.doGetProducer().. 
> So how to clear cache for failed connections?

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Mime
View raw message