Java 用于调用web服务的JAX-WS异步客户端技术
我正在使用JAX-WS对基于SOAP的web服务进行一些研究,我发现理解与客户机相关的部分非常复杂。 如果有人能帮我解释一些话题,我将不胜感激。我正在使用一本SOA书籍和google,但我真的很困惑,所以这就是为什么我认为在这里我可以得到一个更准确的答案,专注于我需要的东西 因此,我们可以以同步和异步的方式与web服务通信。同步通信的缺点是双方必须等待对方,直到处理结束 异步客户机允许我们使用两种编程模型以异步方式进行通信:1-回调和2-轮询Java 用于调用web服务的JAX-WS异步客户端技术,java,web-services,soap,jax-ws,soa,Java,Web Services,Soap,Jax Ws,Soa,我正在使用JAX-WS对基于SOAP的web服务进行一些研究,我发现理解与客户机相关的部分非常复杂。 如果有人能帮我解释一些话题,我将不胜感激。我正在使用一本SOA书籍和google,但我真的很困惑,所以这就是为什么我认为在这里我可以得到一个更准确的答案,专注于我需要的东西 因此,我们可以以同步和异步的方式与web服务通信。同步通信的缺点是双方必须等待对方,直到处理结束 异步客户机允许我们使用两种编程模型以异步方式进行通信:1-回调和2-轮询 疑问1:有人能简单地向我解释一下这两种模式(回调和
- 疑问1:有人能简单地向我解释一下这两种模式(回调和池)的区别和优缺点吗
- 疑问2:你能简单解释一下寻址是如何工作的吗?寻址与回调和轮询技术有什么关系李>
- 疑问3:如果调度API一直在谈论动态客户端,那么它与异步通信有什么关系
- 疑问4:调度API的两种使用模式(消息和有效负载),用于什么,它们与JAXWS的异步通信模型有何关系
-优点:与轮询方法相比,这种方法更加优雅/系统化。
-缺点:客户端应该有一种机制,以便服务器可以使用回调函数将其回调。
轮询:实现非常简单。
-优点:由于其技术简单,因此具有通用性,即使是支持ajax的网页也可以使用此技术检查请求的更新是否可用。
-缺点:带宽的巨大浪费,以及服务器-客户端的时间问题,例如,如果客户端的轮询请求尚未到来,服务器应该保留多长时间的响应。
2.你能简单地解释一下寻址是如何工作的吗?以及寻址与回调和轮询技术的关系如何?
寻址使Web服务能够理解以前仅在消息传递系统和传输提供商之间共享的信息。考虑这个用例,最初使用的传输将是HTTP,用于发送请求和响应。然后,您可能需要更改该传输的一部分,例如在发送响应时,只对SMTP协议进行更改。如果您使用的是ws-addressing,那么与传输和寻址相关的所有信息都将是soap envolope本身的一部分,这将使您的Web服务能够动态地将传输更改为响应发送 Webservices寻址也可以用于从服务器到客户端的回调。该服务在WSDL中通知其所需回调的端口类型。客户端实现此端口类型,然后使用WS-addressing将回调端点通知服务 简单地说,WS-addressing向soap-envolope添加了额外的标记,其中包括仅出现在传输头中的信息,如from-address、to-address、action-name等 3.如果调度API一直在谈论动态客户端,那么它与异步通信有什么关系
Future<?> response = dispatch.invokeAsync(T, AsyncHandler);
Future response=dispatch.invokeAsync(T,asynchHandler);
invokeAsync方法是一种轮询方法。响应将立即返回给用户,并可能被轮询以完成。同时,客户端程序可以做其他工作。javax.xml.ws.Response实现了J2SE5.0中包含的java.util.concurrent.Future接口。Response对象通过其get方法返回实际响应,如果响应未准备好返回,则get方法将阻止响应
4.Dispatch API的两种使用模式(消息和有效负载),用于什么,它们与JAXWS的异步通信模型有何关系?消息传递模式与异步通信没有直接关系。消息传递模式定义在web服务请求中发送的信息量。
消息模式只能在使用SOAP绑定时使用。非常有用且准确的答案。非常感谢你。