[ 
https://issues.apache.org/activemq/browse/SM-1248?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=41416#action_41416
 ] 

Guillaume Nodet commented on SM-1248:
-------------------------------------

A few comments:
  * I need to have a closer look, but I think the default route mechanism won't 
work if the exchange is an InOut.
  * if defaultTargetService is non null, but has no namespace, an NPE will be 
thrown in getDefaultRoutUri() 
  * the separator should be extracted using the following, to accomodate more 
URIs
       String sep = (nsURI.indexof("/") > 0) ? "/" : ":";
  * I don't understand how your fault mechanism work.  sending back a fault 
should not lead to creating a new message.  It seems you are acting as a proxy, 
the same way the route(String uri) method does, but you specify the content 
instead of the destination (which is always the default route), right ?  I just 
find the name misleading as it does not send a fault at all
   * for the correlationId / sendderEndpoint, are you sure this is needed ? It 
should be set automatically when sending the message, unless drools is 
multithreaded and the sending does not happen in the same thread as the 
receiving (which i doubt, given that drools is blocking when we fire the rules).
  
I can't apply the patch to the 3.2 branch nor the trunk ?
Which version did you use to generate them ?

> ServiceMix Drools Enhancements
> ------------------------------
>
>                 Key: SM-1248
>                 URL: https://issues.apache.org/activemq/browse/SM-1248
>             Project: ServiceMix
>          Issue Type: Improvement
>          Components: servicemix-drools
>    Affects Versions: 3.2.1
>            Reporter: Andrea Zoppello
>         Attachments: DroolsEndpoint.java.patch, JbiHelper.java.patch
>
>
> To be complete the servicemix 3.2.1 drools components, require some 
> enhancements:
> 1) There's the need to support a default destination, where exchange will be 
> routed if none rules in the drools file is verified.
> To support this, we need to provide a way to specify default destinations. 
> there will be a defaultTargetService ( QName ) attribute and a 
> defaultTargetURI attribute in drools endpoint class. ( defaultTargetURI will 
> have the precedence on defaultTargetServiceAttribute)
> 2) We must add the possibility to configure not only global "objects" for 
> memory but also a list of "asserted objects" to be asserted in memory ( so 
> it's possible to use that objects in LHS part of rules )
> 3) The actual code of jbi helper does not care about sender and correlation 
> id.
> 4) We need a method in jbi helper object to support the concept of  fault 
> withn the flow, ( to default destination ) without generate a jbi fault. a 
> fault in flow from jbi point of view is a "correct" normalized message.
> The attached patches solve all the above in a very generic way.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to