2

我正在使用一个轴 1.4 Web 服务,它返回我想使用 jaxb 注释解组到我的域对象中的肥皂响应。在某些返回的消息包含 multiRef 元素之前,我的初始测试运行良好。使用 multiRef 编组的对象在我的客户端注释模型对象中显示为 null。

我的问题是 JAXB 是否支持使用 multiRef 元素解组肥皂响应?如果是这样,怎么做?如果没有,是否有人知道将轴 1.4 肥皂响应解组到我在 java 中的域模型中的更好方法?

4

3 回答 3

1

在 Web 服务的情况下,JAXB 不是单独出现的,而是作为 ws 客户端框架的数据绑定部分。所以我假设您的问题是如何在轴 1.4 中使用 JAXB 作为数据绑定。一般来说,我认为没有简单的方法可以实现这一点,请查看轴用户邮件列表中的以下线程:Specify JAXB generated complex types to Axis web service

如果您可以升级以使用axis2 使用Web 服务,那么它应该会容易得多,因为axis2 带有可插入的数据绑定架构,包括集成的jaxb 实现。

于 2008-12-03T10:05:09.830 回答
0

如果 Web 服务的 Axis 端也在您的控制之下,那么也许您可以将该属性设置org.apache.axis.AxisEngine.PROP_DOMULTIREFS为 false。在这种情况下,Axis 不应创建 multiRef 元素。我已经在客户端 Axis 上使用了这个属性,希望它在服务器端也能以同样的方式工作。

于 2009-01-14T20:42:07.440 回答
0

如果您正在处理 MultiREFs ,那么您可能正在使用 RPC 服务。JAXB 适用于文档样式的 web 服务。

为了使用 RPC 风格的服务,不要使用任何外部绑定,如 JAXB、JIBX 或

使用普通的 JAX-RPC , wsdl2java Ant 任务可用于生成存根,并指定 nobinding 选项。

于 2009-07-10T20:31:28.690 回答