【问题标题】:Expose a POJO as a Websevice in Mule via Configuration _Only_?通过配置_仅_将 POJO 公开为 Mule 中的 Web 服务?
【发布时间】:2010-02-05 21:59:42
【问题描述】:

涉及的技术

  • 骡子
  • Apache CXF

给定

一个简单的 POJO(有争议的首字母缩写词,但我们可以说是一个聪明的 POJO):

public class SmartPojo implements SomeBusinessInterface {

    public String doSomethingSmart( With something ) {

        String result;

        result = Irrelevant.process( something )

        return result;
    }
}

需要实现

SmartPojo公开为Web服务接触代码(:更改SmartPojo,更改SmartPojoInterface,添加新接口,任何JAX-WS注释等)。目标是使用 Mule 配置。

我可以使用 Spring Integration 轻松完成此任务,如果您能提供有关如何使用 Mule 实现它的任何意见,我将不胜感激。 (似乎“cxf:inbound-endpoint”需要配置“method-entry-point-resolver”+以某种方式提供我的WSDL..或其他方向?)

谢谢

【问题讨论】:

  • 正如问题所言,spring-integration 标签似乎不合适。 Spring Integration 可以为您提供帮助,但仅在使用 Mule 配置时无法提供帮助。
  • Spring Integration 是 Mule 的替代品,我可以轻松地做到这一点。不要看到这里有什么不合适的地方。

标签: jax-ws cxf esb mule spring-integration


【解决方案1】:

CXF 将使用反射来检查组件类的公共方法并公开 它们作为 wsdl 中的 SOAP 操作。

这句话直接来自 Mule In Action。 (第 58 页)

如果您尝试将类中的每个公共方法公开为 SOAP 操作,那么您应该采用这种方法。

从上面的显式调用看来,您可能想要实现一个 REST-ful 或类似 REST 的接口,而不是 SOAP 接口。您不会使用 cxf 来实现它。您可能需要查看http://www.mulesoft.org/display/MULE/Mule+RESTpack

【讨论】:

  • 您不只是将 SOAP 切换为 REST 或其他方式。它们不可互换。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-11-28
  • 1970-01-01
  • 1970-01-01
  • 2017-11-24
  • 1970-01-01
  • 2023-03-04
  • 1970-01-01
相关资源
最近更新 更多