Web服务 – JAX-WS客户端线程是否安全?

Web服务 – JAX-WS客户端线程是否安全?,第1张

概述因为WS客户端端口的初始化是如此昂贵,我们希望重用同一个实例。我们也希望在每次调用之前在BindingProvider / RequestContext中设置不同的值。最初我们想这样做: MyService service = new MyService(wsdlURL, name); MyPort myPort = service .getMyServicePort(); 那么以后,在每个电话 因为WS客户端端口的初始化是如此昂贵,我们希望重用同一个实例。我们也希望在每次调用之前在BindingProvIDer / RequestContext中设置不同的值。最初我们想这样做:
MyService service = new MyService(wsdlURL,name); MyPort myPort = service .getMyServicePort();

那么以后,在每个电话之前做这个:

Map requestContext = ((BindingProvIDer)myPort ).getRequestContext(); requestContext.put(BindingProvIDer.USERname_PROPERTY,uname); requestContext.put(BindingProvIDer.PASSWORD_PROPERTY,pWord); myPort.someFunctionCall();

我的问题是,这个代码线程是否安全? JAX-WS文档似乎表明它不是线程安全的。但是,CXF seems to be so if you take precautions.如果JAX-WS和Metro特别是线程安全,是否有任何方式确保线程安全,而不同步访问端口或ws *** 作?

解决方法 对于JAX-WS / Metro,这绝对不是线程安全的。最好的办法是创建一个代理池,并在需要时从池中提取代理,配置它,使用它,清除设置的值,返回到池。

或使用CXF。

总结

以上是内存溢出为你收集整理的Web服务 – JAX-WS客户端线程是否安全?全部内容,希望文章能够帮你解决Web服务 – JAX-WS客户端线程是否安全?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

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

原文地址: http://outofmemory.cn/web/1115098.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存