我正在使用 Apache CXF 框架开发 SOAP Web 服务。我的网络方法根据请求参数返回二进制数据或纯 XML。大多数请求都返回二进制数据,因此我将 CXF 配置为在服务响应中使用 MTOM。
但这并不总是有用的:当返回 XML 时,调用方期望得到纯文本/xml 文档而不是多部分文档。所以我希望我的网络服务能够动态地改变它的绑定。
CXF 文档有以下示例:
端点 ep = ...; // 例子没有说明如何获取 SOAPBinding 绑定 = (SOAPBinding)ep.getBinding(); binding.setMTOMEnabled(true); // 或假
问题:如何获取Endpoint
实例?
我将 Spring 注释 @Endpoint 用于 Web 服务,将 @PayloadRoot 用于 Web 方法。