Showing posts with label Timeout. Show all posts
Showing posts with label Timeout. Show all posts

Friday, 31 July 2015

Setting timeout for for JAX-WS Webservice clients generated from clientgen

Setting timeout for for JAX-WS Webservice clients generated from clientgen

Use below options:

import javax.xml.ws.BindingProvider;
import javax.xml.ws.handler.MessageContext;
import com.sun.xml.ws.developer.JAXWSProperties;
import com.sun.xml.ws.client.BindingProviderProperties;
/*
The following classes are inside

import com.sun.xml.ws.developer.JAXWSProperties;
import com.sun.xml.ws.client.BindingProviderProperties;

%WLSINSTALLATION%\modules\glassfish.jaxws.rt_1.1.0.0_2-1-4.jar
*/
Map requestContext = ((BindingProvider)port).getRequestContext();
requestContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY,
"http://localhost.com/<webservice>");
requestContext.put(JAXWSProperties.CONNECT_TIMEOUT, 300);
requestContext.put(BindingProviderProperties.REQUEST_TIMEOUT, 300); 


Also see

Setting Timeout for Weblogic Webservice Client and for all clients

Setting timeout for for JAX-RPC Webservice clients generated from clientgen


Setting Timeout for Weblogic Webservice Client and for all clients

Setting Timeout for Weblogic Webservice Client and for all clients

Use below options for Weblogic Webservice Client and for all clients.

Replace xxxx with relevant timeout value below.


-Dweblogic.https.client.defaultConnectTimeout=xxxx milisecs
-Dweblogic.http.client.defaultConnectTimeout=xxxx milisecs


OR
-Dweblogic.webservice.UseWebLogicURLStreamHandler=false
-DUseSunHttpHandler=true
-Dsun.net.client.defaultConnectTimeout=xxxx milisecs
-Dsun.net.client.defaultReadTimeout=xxxx milisecs



You may gradually fine tune the timeout parameters when errors like below are seen in the Weblogic logs.


Caused By: java.net.SocketTimeoutException: Read time out after 30000 millis
at weblogic.socket.NIOSocketMuxer$NIOInputStream.readInternal(NIOSocketMuxer.java:825)
at weblogic.socket.NIOSocketMuxer$NIOInputStream.read(NIOSocketMuxer.java:758)
at weblogic.socket.NIOSocketMuxer$NIOInputStream.read(NIOSocketMuxer.java:741)
at weblogic.servlet.internal.PostInputStream.readAndCalTime(PostInputStream.java:229)
at weblogic.servlet.internal.PostInputStream.read(PostInputStream.java:177)
at weblogic.servlet.internal.ServletInputStreamImpl.read(ServletInputStreamImpl.java:236)
at weblogic.servlet.internal.ServletRequestImpl$RequestParameters.mergePostParams


<BEA-000000> <Broken pipe
java.io.IOException: Broken pipe
at sun.nio.ch.FileDispatcherImpl.write0(Native Method)
at sun.nio.ch.SocketDispatcher.write(SocketDispatcher.java:47)
at sun.nio.ch.IOUtil.writeFromNativeBuffer(IOUtil.java:93)
at sun.nio.ch.IOUtil.write(IOUtil.java:65)
at sun.nio.ch.SocketChannelImpl.write(SocketChannelImpl.java:487)
at weblogic.socket.NIOSocketMuxer$NIOOutputStream.writeInternal(NIOSocketMuxer.java:1072)
at weblogic.socket.NIOSocketMuxer$NIOOutputStream.write(NIOSocketMuxer.java:991)

Also see

Setting timeout for for JAX-WS Webservice clients generated from clientgen

Setting timeout for for JAX-RPC Webservice clients generated from clientgen