如何公开 EJB JAX-WS Web 方法以接收 commonj.SDO DataObject 类型的对象

How to expose EJB JAX-WS web method to receive object of commonj.SDO DataObject type

我对 Java 中的 Web 服务几乎是陌生的。 我们公司以前使用IBM Process Server 来处理SCA 对象之间的交互。由于某些原因,我们决定放弃 IBM Process Server,因此我们开始将当前的集成迁移到 EJB。 为了让自己更清楚,我附上了一个简单的模式来描述我当前的任务。这是部署在 IBM Process Server 上的流程:

我需要开发一个 EJB,它也充当 JAX-WS Web 服务并从 JAX-WS 客户端服务接收 SDO DataObject,然后进行一些额外的逻辑并将 SOAP 请求发送到另一个 Web 服务. 我完全不知道如何让我的 EJB 通过 SOAP 接收 DataObject。我有一个 WSDL 文件,描述了 SOAP 请求和响应格式。 我还找到了一篇 article,描述了使用 IBM RAD JAX-RPC web 服务从带有 SDO 门面的 WSDL 解决这个问题的方法,但这篇文章似乎已经过时了。 有没有什么方法可以在不使用 JAXB 边界 POJO 而使用 SDO 的情况下创建服务?如果不是,如何以正确的方式使用 JAXB 处理它?提前致谢。

已解决! 在我的搜索过程中,我发现有必要生成一个 bean 框架,更改所有要接收的 Web 方法签名和 return JAXB 绑定的 POJO,从 WSDL 生成,然后在需要时将其转换为数据对象。 JAXB 负责所有 marshalling/unmarshalling 员工。我只需要一点点 RTFM。