gpt4 book ai didi

java - 如何创建Web服务代理?我们可以生成@Endpoints吗?

转载 作者:太空宇宙 更新时间:2023-11-04 08:13:12 24 4
gpt4 key购买 nike

我正在开发一个具有审核功能的网络服务代理(稍后使用缓存=创建自己的响应),并且我需要生成@Endpoints(这样就可以转发,即至少调用远程网络服务或虚拟服务)。编码/解码似乎是必要的,因为代理会向请求添加“某些内容”...

我们将使用 spring-ws 和 JAXB。获取代理 Web 服务的所有 XSD 和静态 WSDL。

有什么提示吗?有人在做类似的事情吗?你做得怎么样?

是否有一种简单的方法可以使用 spring 或 spring-integration 来实现此目的?

提前致谢..

最佳答案

使用 Spring WS 和 Spring Integration 应该可以实现这一点:

使用 Spring WS,您可以为远程 WS 创建一个代理类,包裹 org.springframework.ws.client.core.WebServiceTemplate与 WS 对话 - 它具有 API 来负责将请求编码到 xml 并解码响应。

通过 Spring Integration,您可以使用 outbound Webservices gateway ,但您需要在它前面设置一个消息网关,它将充当您的代理,大致如下:

<int:gateway id="wsproxy"  service-interface="..ProxyInterface" default-request-channel="requestChannel" default-reply-channel="replyChannel"/>

<int-ws:outbound-gateway id="wsGateway" request-channel="requestChannel" uri="http://serviceURL" marshaller="someMarshaller" unmarshaller="someUnmarshaller"/>

但是,我建议使用第一种方法,即使用 WebserviceTemplate,因为您在这里没有非常复杂的集成需求。

关于java - 如何创建Web服务代理?我们可以生成@Endpoints吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10870900/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com