NullPointerException instead of Timeout when calling web service

Talend Version (Required)       6.x

Summary

ESB Web Service call throws a NullPointerException when the web service takes a long time to send a reply.
Additional Versions  
Product (Required) ESB
Component (Required) Web Services
Problem Description

Assume that a route is exposed as web service provider using a cCXF component, and that it also calls an external web service using another cCXF.

 

If this external web service takes longer to respond, then the first cCXF throws a NullPointerException instead of a Timeout:

java.lang.NullPointerException
  at org.apache.camel.impl.DefaultConsumer.doneUoW(DefaultConsumer.java:107)[158:org.apache.camel.camel-core:2.16.3]
  at org.apache.camel.component.cxf.CxfConsumer$1.asyncInvoke(CxfConsumer.java:112)[159:org.apache.camel.camel-cxf:2.16.3]
  at org.apache.camel.component.cxf.CxfConsumer$1.invoke(CxfConsumer.java:75)[159:org.apache.camel.camel-cxf:2.16.3]
...
Problem root cause Camel issue
Solution or Workaround

Upgrade to Talend version 6.4.1.

Also add the continuationTimeout argument in the first cCXF component ("Advanced settings"), and set it to a value greater than the ReceiveTimeout. For example, set it to 70000 (70 seconds) if you are using the default ReceiveTimeout of 60000 (60 seconds).

JIRA ticket number TESB-19757
Version history
Revision #:
2 of 2
Last update:
‎09-07-2017 06:09 PM
Updated by:
 
Labels (2)
Contributors
Tags (1)