Hi,

Here is a snapshot of the log (mode INFO) generated during a split process.
As you can see, no reference to the method of my beans called during split
is displayed except when we left the split :

*BEFORE CALLING SPLIT*

13:36:08,328 | INFO  | enerContainer-28 | TraceInterceptor                 |
rg.apache.camel.processor.Logger   88 |
ID-dell-charles-1745-1245080089715-2-62 >>> *bean(ref: serviceHelper method:
parseRequest) *--> choice(request.headers.requestStatus = 'ACCEPTED',
request.headers.requestStatus = 'REJECTED'), Pattern:InOnly,
Properties:{CamelBeanHolder=bean: serviceHelper},
Headers:{requestStatus=ACCPT, requestId=15, messageType=OINP},
BodyType:java.util.ArrayList

*SPLIT IS CALLED*

13:36:08,343 | INFO  | enerContainer-28 | TraceInterceptor                 |
rg.apache.camel.processor.Logger   88 |
ID-dell-charles-1745-1245080089715-2-62 >>> split(request.body) -->
split(request.body), Pattern:InOnly, Properties:{CamelBeanHolder=bean:
serviceHelper}, Headers:{requestStatus=ACCEPTED, CamelMulticastIndex=0,
requestId=15, CamelSplitSize=1, messageType=OINP, CamelSplitIndex=0},
BodyType:java.util.HashMap,
Body:{com.xpectis.x3s.model.backoffice.emx.oinp.in.inoinpmessage=com.xpectis.x3s.model.backoffice.emx.oinp.in.inoinpmess...@db6129
}
13:36:08,359 | INFO  | enerContainer-28 | TraceInterceptor                 |
rg.apache.camel.processor.Logger   88 |
ID-dell-charles-1745-1245080089715-2-62 >>> split(request.body) -->
split(request.body), Pattern:InOnly, Properties:{CamelBeanHolder=bean:
serviceHelper}, Headers:{requestStatus=ACCEPTED, CamelMulticastIndex=0,
requestId=15, CamelSplitSize=1, CamelBeanMultiParameterArray=false,
messageType=OINP, CamelBeanMethodName=null, CamelSplitIndex=0},
BodyType:com.xpectis.x3s.platform.model.RequestMessage,
Body:com.xpectis.x3s.platform.model.requestmess...@6de7e3
13:36:08,390 | INFO  | enerContainer-28 | TraceInterceptor                 |
rg.apache.camel.processor.Logger   88 |
ID-dell-charles-1745-1245080089715-2-62 >>> split(request.body) -->
split(request.body), Pattern:InOnly, Properties:{CamelBeanHolder=bean:
serviceHelper}, Headers:{requestId=15, messageType=OINP,
validationresult=com.xpectis.x3s.model.holder.validationresulthol...@1d9e15},
BodyType:com.xpectis.x3s.platform.model.RequestMessage,
Body:com.xpectis.x3s.platform.model.requestmess...@6de7e3

*SPLIT IS FINISHED*

13:36:08,531 | INFO  | enerContainer-28 | TraceInterceptor                 |
rg.apache.camel.processor.Logger   88 |
ID-dell-charles-1745-1245080089715-2-62 >>> *split(request.body) -->
bean(ref: serviceHelper method: updateRequestStatus*), Pattern:InOnly,
Properties:{CamelBeanHolder=bean: serviceHelper},
BodyType:java.util.ArrayList,
Body:[com.xpectis.x3s.platform.model.requestmess...@6de7e3]

It should be nice to have such info in the log

Here is the route :

            <camel:from ref="directRequestMessageEndpoint" />

            <!-- Split the collection of messages -->
            <camel:split strategyRef="aggregationStrat">
                <camel:ognl>request.body</camel:ognl>

                <!-- (1) Call the service to save the request message -->
                <camel:bean ref="serviceHelper"
method="createRequestMessage"/>

                <!-- (2) Validate the business message -->
                <camel:bean ref="serviceHelper"
method="validateRequestMessage"/>

                <!-- (3) Save business message -->
                <camel:bean ref="serviceHelper"
method="saveRequestMessage"/>

            </camel:split>

            <!-- Update Request status -->
            <camel:bean ref="serviceHelper" method="updateRequestStatus" />

Regards,

Charles Moulliard
Senior Enterprise Architect
Apache Camel Committer

*****************************
blog : http://cmoulliard.blogspot.com

Reply via email to