客户端调用WebService时,怎么设置超时时间?
JAX-WS客户端调用WebService时,怎么去设置请求的超时时间,假如设置了超时时间为3秒的话,在请求发起后3秒之后没有应答的话,就自动返回了?急!!! --------------------编程问答-------------------- 你是怎么调用的? --------------------编程问答-------------------- 用MyEclipse生成的客户端直接调用。 --------------------编程问答-------------------- 我也遇到了这个问题。。求解 --------------------编程问答-------------------- 超时有两个,一个是建立连接超时,这个设置的短一些,1s以内;一个是读超时,是等待结果返回的时间,这个世界要考虑后台处理时间。
使用的HttpURLConnection来做wsclient实现,所以只要按照httpurl connection的超时设置
时间单位是毫秒。
// setConnectTimeout()
int timeout = ...;
SMSInte易做图ceSoap proxy= inter.getSMSInte易做图ceSoap();
Map<String, Object> ctxt = ((BindingProvider)proxy).getRequestContext();
ctxt.put(JAXWSProperties.CONNECT_TIMEOUT, timeout);
// setReadTimeout()
int timeout = ...;
SMSInte易做图ceSoap proxy= inter.getSMSInte易做图ceSoap();
Map<String, Object> ctxt = ((BindingProvider)proxy).getRequestContext();
ctxt.put("com.sun.xml.ws.request.timeout", timeout);
补充:Java , Java相关