【问题标题】:JAX-WS changing namespace for WebParamJAX-WS 更改 WebParam 的命名空间
【发布时间】:2011-09-12 16:33:26
【问题描述】:

我们正在将 JAX-WS 与 JAXB (2.1) 结合使用。

首先,我们创建了链接到 XSD 类型的 Java 类。

然后,我们使用 CXF (2.1.3)、Spring (2.0.8) 和 JAX-WS 从 JAXB 类型(实际上是 @XmlType)发布了一个 Web 服务,如下所示:

@WebMethod(operationName = "addExample")
public @WebResult void addExample(
        @WebParam(name = "EXAMPLE") EXAMPLETYPE exemple);

我们知道 Web 服务是使用接口的包名(反向)或使用 @WebService 注释(我们可以定义的“targetNamespace”)发布的。事实上,我们是这样做的:

@WebService(targetNamespace = "http://blablabla")

此时,我们需要维护 WebService 的整个 targetNameSpace 但我们需要更改 @java.jws.WebParam 的命名空间(即本例中的示例参数)。

有可能吗?注释永远不会为我们工作,做这样的事情:

@WebMethod(operationName = "addExample")
public @WebResult void addExample(
        @WebParam(name = "EXAMPLE", targetNamespace = "http://thats.all.folks") EXAMPLETYPE exemple);

我们真的迷路了……

谢谢,

【问题讨论】:

    标签: web-services namespaces jaxb jax-ws cxf


    【解决方案1】:

    我认为您需要升级到更新(且受支持)版本的 CXF。我相信这是很久以前修复的错误。

    【讨论】:

    • 是吗???我的天啊!!!你不知道我花了多少时间在这上面!下几天我会尝试将其更新到最新的(2.4.0)!非常感谢丹尼尔!!
    • 丹尼尔它有效!我们将 CXF 升级到最新的 2.2.12(我们无法升级,因为使用 Spring 3 :-() 并且一切都像魅力一样!谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-07-19
    • 2018-09-13
    • 1970-01-01
    • 2017-01-15
    • 1970-01-01
    • 1970-01-01
    • 2015-05-13
    相关资源
    最近更新 更多