【问题标题】:Webservice - response to different serverWebservice - 对不同服务器的响应
【发布时间】:2013-01-24 19:01:21
【问题描述】:

Java Web 服务是否可以构建并向不同的服务器返回响应?

例如,域 (A) 上的客户端 (A) 向域 (B) 上的 Java Web 服务 (B) 发出 POST 请求,该请求向域 (C) 上的服务器 (C) 返回响应。

【问题讨论】:

  • 您为什么要这样做? “向域 (C) 上的服务器 (C) 返回响应”?
  • 您好,感谢您的快速回复!我真的不知道为什么有人愿意这样做!我一个月前开始在这家公司工作,今天有人问我是否可以为我们的客户做这件事。

标签: java web-services jaxb jax-ws


【解决方案1】:

我不知道我的回答是否令人满意,但是:

  1. JAXB 与 Web 服务无关。它是用于 XML 绑定的 Java 架构。它用于将xml绑定到对象和其他方式。 重要的是它被 JAX-WS 使用,它是 Java Web 服务的参考实现。 您可以在 JAXBJAXWS 上获得有关这些框架的更多知识

  2. Web 服务是通用技术,并且它们以多种语言实现。但如果您想知道它们的能力,您可以阅读W3C 上描述它们的文档。您会发现有几种调用 Web 服务的方法(这是由特定服务定义的)。请求-响应,一种方式等。 据我所知,JAX-WS 只支持我提到的那些。

正如 Anugoonj 所说,您可能想做这样的事情: A -> B -> C 其中每个箭头是单向 Web 服务操作。

【讨论】:

  • 谢谢,我去看看。我知道 web 服务使用 JAXB 并且它是一个 RESTful web 服务...... Anugoonj 几乎是正确的。他只是对 B 和 C 之间的操作有误,因为服务器 C 没有运行我知道的 Web 服务。
  • 如果它的 RESTful webservice 那么没有我描述过的这样的操作,因为没有 WSDL。如果它是 BIG webservice,那么您可能已经考虑过通知操作类型。 (仍然没有在 JAX-WS 中实现)。但我可能不明白。我很难想象这样的情况:有 3 个人 A、B、C。A 人问 B:“波兰在哪里?”。 B 对 C 的回应是“它在中欧”。 C开始思考B到底在说什么。那么对于他从未听说过的问题,C 应该如何处理 B 的回答呢?
【解决方案2】:

我认为您正在寻找一种异步方式的 Web 服务方法。

【讨论】:

    【解决方案3】:

    当然。您需要将请求识别编码到您的服务逻辑中。我会试试(Http)ServletRequest.getRemoteHost

    但是,使用 if 语句执行此操作会导致代码意大利面条化。我会构建某种哈希映射目录来处理不同的 IP(域)。

    【讨论】:

    • 您好,感谢您的快速回复!我仍然不知道 (Http)ServletRequest.getRemoteHost 是如何实现的,因为 getRemoteHost “返回客户端的限定名称或发送请求的最后一个代理”,但我需要 web 服务向没有的服务器返回响应提出请求。
    猜你喜欢
    • 2013-08-20
    • 2015-10-18
    • 2016-04-09
    • 1970-01-01
    • 2020-10-16
    • 1970-01-01
    • 2011-06-15
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多