ste*_*ber 6 java delphi soap ws-addressing delphi-xe2
我有一个Delphi企业应用程序,它充当Java后端(SOAP,Axis2)的客户端.我的一些请求需要不确定或特别大的时间才能完成,我想为SOAP请求实现一个长轮询解决方案.
据我所知,我通常会使用WS-Addressing.但是,似乎Delphi SOAP客户端(WCF)没有实现WS-Addressing.
我被锁定在Java和Delphi中.我使用Axis 2组件,例如生命周期,但我可以转换到另一个Web服务引擎.我控制服务器和客户端.
在Delphi和Java中实现长轮询有哪些选择?
你说Java已经在服务器端使用,并且你在那里被锁定到Java(如果我理解正确的话)。
在这种情况下,我首先尝试使用 Java EE 的任何最先进的 SOAP 实现来实现Java客户端原型作为“概念验证”。此建议背后的原因是,它将为您提供一些有关 Java 端(以及一般 Web 服务中)的不同选项来实现异步处理的实践经验。
将这个概念验证移植到 Delphi 将是第二步。
另外,在做了一些研究之后,我看不到任何对 SOAP 长轮询的特定支持的引用(通过 WS-Adressing 或其他方式)。
然而,自 SOAP 1.2 以来,“异步 SOAP”处理是处理长时间运行的过程的常用方法。例如,JBoss 就支持它 - (使用 JBoss WS 的异步 Web 服务)。
也许您还可以考虑使用消息代理的不同架构。这称为基于 JMS 的 SOAP。Delphi 有免费和商业客户端,允许从 JMS 系统接收 SOAP 响应。