Hi,

I am using ODE 1.3.6 on Tomcat 7.0.47 with 11 processes deployed into it. On 
top of these I have a process that acts as a façade so that clients have a 
single interface to call. The interface of the façade process is a 
consolidation of interfaces provided by all processes. This façade process then 
invokes the actual process.

Each process is a long running using explicit correlation.
Each process has 2 receive activities - first receive starts the process and 
second receive after receiving a completion reply from the application adapter.
There is a scheduler to execute processes in scheduled manner. The scheduler 
invokes the façade process which then invokes the target process.

Randomly (once in 2-3 days for any random process), I get 
SocketTimeoutException in client (the scheduler) as follows during invocation 
of the process.
Sometimes it is also observed that, even though the client got the exception 
the process started and completed successfully.

What could be the cause?

Thanks in advance.

Exception in client:


javax.xml.ws.WebServiceException: Could not send Message.

                at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:145)

                at com.sun.proxy.$Proxy104.startEmpSync3D(Unknown Source)

                at 
com.geo.ml.scheduler.jobs.EmpSync3DJob.executeProcess(EmpSync3DJob.java:115)

                at 
com.geo.ml.scheduler.jobs.EmpSync3DJob.execute(EmpSync3DJob.java:49)

                at org.quartz.core.JobRunShell.run(JobRunShell.java:213)

                at 
org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:557)

Caused by: java.net.SocketTimeoutException: SocketTimeoutException invoking 
[Façade Process URL]: Read timed out

                at 
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)

                at 
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)

                at 
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)

                at 
java.lang.reflect.Constructor.newInstance(Constructor.java:526)

                at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.mapException(HTTPConduit.java:1467)

                at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1452)

                at 
org.apache.cxf.transport.AbstractConduit.close(AbstractConduit.java:56)

                at 
org.apache.cxf.transport.http.HTTPConduit.close(HTTPConduit.java:659)

                at 
org.apache.cxf.interceptor.MessageSenderInterceptor$MessageSenderEndingInterceptor.handleMessage(MessageSenderInterceptor.java:62)

                at 
org.apache.cxf.phase.PhaseInterceptorChain.doIntercept(PhaseInterceptorChain.java:262)

                at 
org.apache.cxf.endpoint.ClientImpl.doInvoke(ClientImpl.java:530)

                at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:463)

                at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:366)

                at 
org.apache.cxf.endpoint.ClientImpl.invoke(ClientImpl.java:319)

                at 
org.apache.cxf.frontend.ClientProxy.invokeSync(ClientProxy.java:96)

                at 
org.apache.cxf.jaxws.JaxWsClientProxy.invoke(JaxWsClientProxy.java:134)

                ... 5 more

Caused by: java.net.SocketTimeoutException: Read timed out

                at java.net.SocketInputStream.socketRead0(Native Method)

                at java.net.SocketInputStream.read(SocketInputStream.java:152)

                at java.net.SocketInputStream.read(SocketInputStream.java:122)

                at sun.security.ssl.InputRecord.readFully(InputRecord.java:442)

                at sun.security.ssl.InputRecord.read(InputRecord.java:480)

                at 
sun.security.ssl.SSLSocketImpl.readRecord(SSLSocketImpl.java:927)

                at 
sun.security.ssl.SSLSocketImpl.readDataRecord(SSLSocketImpl.java:884)

                at sun.security.ssl.AppInputStream.read(AppInputStream.java:102)

                at 
java.io.BufferedInputStream.fill(BufferedInputStream.java:235)

                at 
java.io.BufferedInputStream.read1(BufferedInputStream.java:275)

                at 
java.io.BufferedInputStream.read(BufferedInputStream.java:334)

                at 
sun.net.www.http.HttpClient.parseHTTPHeader(HttpClient.java:687)

                at sun.net.www.http.HttpClient.parseHTTP(HttpClient.java:633)

                at 
sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1323)

                at 
java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:468)

                at 
sun.net.www.protocol.https.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:338)

                at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponseInternal(HTTPConduit.java:1604)

                at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.handleResponse(HTTPConduit.java:1530)

                at 
org.apache.cxf.transport.http.HTTPConduit$WrappedOutputStream.close(HTTPConduit.java:1438)

                ... 15 more


Regards,
Jitendra

Reply via email to