【问题标题】:Websphere 8.5 JAX-WS WSDL redirectWebsphere 8.5 JAX-WS WSDL 重定向
【发布时间】:2014-07-29 10:14:47
【问题描述】:

我得到了一个 SOAP Web 服务,它采用代码优先的方法运行,并使用 Websphere 6.1 中的内置 JAX-WS 实现。

服务已从 Websphere 6.1 版迁移到 8.5 版。

以前(6.1 版)WSDL 可以直接在 URL 上使用 [...]/services/SomeService?wsdl

自从迁移到 8.5 版后,WSDL 仍然可以通过上述 URL 访问,但正在重定向到 [...]/services/Services_002f_SomeService.wsdl

客户端需要在向 Web 服务发出每个请求之前访问 WSDL,并且没有继续进行重定向(即使用 [...]?wsdl-URL),因此他需要重定向的 URL . (不幸的是,这与我无关……) 问题是重定向 URL 中的“002f”部分是动态的,可能会被 Websphere 更改。 (它已经在我们的测试环境中实现了。)

有人知道阻止 Websphere 进行上述重定向的选项吗?

【问题讨论】:

  • 服务是如何定义的?请附上代码。它在 web 或 ejb 模块中吗?在我的测试中,重定向总是到 /context-root/HelloService/HelloService.wsdl

标签: redirect wsdl websphere jax-ws


【解决方案1】:

我终于找到了重定向 URL 中奇怪的“002f”字符的原因。 这是由于给定的 serviceName services/SomeService

    @WebService (targetNamespace="http://example.net/", serviceName="services/SomeService")

\u002f 是 UTF8 中的“/”字符

所以重定向到 [...]/services/SomeService/Services_002fSomeService.wsdl 是合理的。

我得到的可能更改的重定向 URL 到 ...003f...、...004f... 等的信息显然是错误的。

虽然不重定向根本不会造成任何麻烦,而且我不知道为什么 WAS 8.5 中的新 JAX-WS 实现确实必须这样做,但我只是接受(据我所知) ) 客户端的静态 '002f' WSDL URL。

【讨论】:

    猜你喜欢
    • 2014-01-13
    • 1970-01-01
    • 2012-11-18
    • 1970-01-01
    • 2013-03-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多