[
https://issues.apache.org/activemq/browse/CAMEL-2692?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=59218#action_59218
]
Claus Ibsen commented on CAMEL-2692:
------------------------------------
Roland is it possible for you to create a anonym and public XML file we can use
and add as an unit test to camel-core ?
Then we will have it tested throughly on CI servers which tests it on all kind
of OS and JDK levels.
> Multithreading bug: getBody sporadically returns null
> -----------------------------------------------------
>
> Key: CAMEL-2692
> URL: https://issues.apache.org/activemq/browse/CAMEL-2692
> Project: Apache Camel
> Issue Type: Bug
> Components: camel-core
> Affects Versions: 2.3.0
> Environment: Windows 7 64 bit, JDK 1.6.0_20
> Reporter: Roland Knight
> Assignee: Claus Ibsen
> Attachments: news_20100502000001.zip
>
>
> Note that the only workaround for this bug is to remove the
> parallelProcessing() call in the builder.
> I have a simple route that processes a file by splitting on a tag and
> processing the DOM of each split message. The problem is that getBody is
> randomly returning null but ONLY when using the parallelProcessing feature of
> split. For some runs of the same XML file, the error does not occur at all
> (the file is about 2MB of data), others it will happen once or twice. I am
> currently using the latest 2.3-SNAPSHOT.
> Also note, that after detecting the null, I tried calling
> getBody(String.class) - this also may return null. Sometimes it does return
> the proper XML.
> Route configuration that reproduces the problem (my input XML is about 2MB
> with about 500 article tags):
> public void configure() throws Exception {
> from("file:D:/inbox")
> .split(new XPathBuilder("//article"))
> .parallelProcessing() // remove this line
> getBody below never returns null
> .process(new Processor() {
> public void process(Exchange exchange) throws Exception {
> Message inMessage = exchange.getIn();
> org.w3c.dom.Document domDocument =
> inMessage.getBody(org.w3c.dom.Document.class);
> if (domDocument == null) {
> log("Null body");
> } else {
> // process DOM here
> }
> }
> })
> .end()
> }
> });
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.