webservice超时设置

webservice超时设置,第1张

package com.primeton.mq.test

importcom.primeton.mq.service.DemoService

importorg.apache.cxf.endpoint.Client

importorg.apache.cxf.jaxws.JaxWsProxyFactoryBean

importorg.apache.cxf.jaxws.endpoint.dynamic.JaxWsDynamicClientFactory

importorg.apache.cxf.transport.http.HTTPConduit

importorg.apache.cxf.transports.http.configuration.HTTPClientPolicy

publicclassdemo{

publicstaticvoid main(String[] args) {

//创建动态客户端

JaxWsDynamicClientFactoryfactory =JaxWsDynamicClientFactory.newInstance()

Clientclient = factory.createClient("http://localhost:8090/demo/api?wsdl")

// 需要密码的情况需要加上用户名和密码

//client.getOutInterceptors().add(new ClientLoginInterceptor(USER_NAME,PASS_WORD))

HTTPConduitconduit = (HTTPConduit) client.getConduit()

HTTPClientPolicyhttpClientPolicy = newHTTPClientPolicy()

httpClientPolicy.setConnectionTimeout(2000)//连接超时

httpClientPolicy.setAllowChunking(false)//取消块编码

httpClientPolicy.setReceiveTimeout(120000)//响应超时

        conduit.setClient(httpClientPolicy)

//client.getOutInterceptors().addAll(interceptors)//设置拦截器

try{

Object[] objects = newObject[0]

// invoke("方法名",参数1,参数2,参数3....)

objects = client.invoke("sayHello","sujin")

System.out.println("返回数据:"+ objects[0])

}catch(Exceptione){

          e.printStackTrace()

      }

有时使用httpclient的时候,需要等待N长时间,可能此时你决定放弃或者重试。实现上非常简单添加一个参数即可

/这里的超时单位是毫秒。这里的http.socket.timeout相当于SO_TIMEOUT

httpClient.getParams().setIntParameter("http.socket.timeout",3000)

HttpConnectionManagerParams managerParams

= httpClient.getHttpConnectionManager().getParams()

// 设置连接超时时间(单位毫秒)

managerParams.setConnectionTimeout(30000)

// 设置读数据超时时间(单位毫秒)

managerParams.setSoTimeout(120000)

1,设置get方法请求超时为 5 秒

GetMethod getMethod= new GetMethod(url)

getMethod.getParams().setParameter(HttpMethodParams.SO_TIMEOUT,5000 )

2,设置 Http 连接超时为5秒

HttpClient httpClient= new HttpClient()

httpClient.getHttpConnectionManager().getParams().setConnectionTimeout(5000 )

设置连接超时和请求超时,这两个超时的意义不同,需要分别设置。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/6335465.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-20
下一篇 2023-03-20

发表评论

登录后才能评论

评论列表(0条)

保存