我对Web服务,JAX-WS等有相当新的认识,所以也许不会有问题...SOAP Web服务回调体系结构?
所以,我想实现一个Web服务来使两个系统进行通信。 “客户”系统对“服务器”系统上生成的事件感兴趣。但“客户端系统”本身就是另一个应用程序的服务器。服务器是Java(tomcat中的WAR)。客户端是.Net。
应该只有一个客户端系统,但客户端系统中有多个客户端进程,每个客户端进程都对不同类别的事件感兴趣。
我将实现服务器端和测试客户端。其他人将实施.Net代码。
的运行顺序应沿这条线:
- 服务器正在运行...
- 客户端发起的谈话,“寄存”到服务器,并请求一些初始数据。
- 服务器保留已注册客户端的端点列表
- 在服务器中有一个侦听程序,在某些事件发生时会收到通知。然后,它将通过注册客户端列表并将事件转发给每个客户端
- 在某些时候,客户端可以“取消注册”不通知服务器它不再希望接收事件。
首先,这听起来像合理可行的事情吗?
是否有一个标准的内置机制,使用SOAP(服务器上的JAX-WS,客户端可用的任何.Net) - 服务器可以用来从客户端获取回调端点?
例如,我使用RMI做了一些非常类似的事情,在这种情况下,客户端可以只发送一个远程引用给自己,服务器可以稍后存储ant。
最后,有没有一个标准的库来存储端点引用,使(集体)回调,并可能保持列表最新,删除不响应的客户端,因此一些“ping”调用?
为了清楚起见,我需要的不仅仅是具有回叫的异步方法:来自客户端的一条消息将生成许多从服务器到客户端的回调消息。
我会说它是可能的。研究异步Web服务。如果您打算使用JAX-WS,那么WS-Addressing将会有所帮助。 – Xargos 2013-03-11 08:58:24