【问题标题】:Apache CXF wsdl2java: make service return original WSDL fileApache CXF wsdl2java:使服务返回原始 WSDL 文件
【发布时间】:2015-06-14 03:43:39
【问题描述】:

我正在努力提供基于从客户那里收到的一些 WSDL 文件的 Web 服务。如详细here 所述,将?wsdl 附加到服务URL 时返回的WSDL 文件,如

http://never.mind/SomeService?wsdl

似乎被 SoapUI 误解了,这再次阻止了客户使用该服务!

我现在希望有人可以帮助我了解是否可以让获取 WSDL 端点返回原始 WSDL 文件而不是某些 Apache CXF 消化版本?

更新:我刚刚在某处读到有一个 WSDLGetInterceptor 负责处理获取 WSDL 请求 - 我可以覆盖那个吗?

【问题讨论】:

标签: java apache wsdl cxf wsdl2java


【解决方案1】:

我选择覆盖WSDLGetInterceptor 正在使用的WSDLGetUtils 类的getDocument 方法。我的 utils 类 MyWSDLGetUtils 版本通过这个拦截器付诸实施:

public class WsdlGetSoapInterceptor extends AbstractSoapInterceptor {
    public WsdlGetSoapInterceptor() {
        super(Phase.READ);
        addBefore(WSDLGetInterceptor.class.getName());
    }

    /** {@inheritDoc} */
    @Override
    public void handleMessage(final SoapMessage message) throws Fault {
        message.setContextualProperty(WSDLGetUtils.class.getName(), MyWSDLGetUtils.Instance);
    }
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-04-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-02
    • 2018-03-22
    相关资源
    最近更新 更多