2

我正在尝试创建返回 vo 列表的 web 服务。我可以返回 VO 列表。但我需要以特定方式的 xml 结构。

我不知道如何使用 Eclipse 轴来做到这一点。

我的配置

  • 日食 3.4
  • 爪哇 1.6
  • 轴运行时间
  • 雄猫 6

我的VO结构

看VO

名称:字符串

标识:字符串

我在 webservice 类中有方法 getGroupLookVO

我得到一个返回 xml 作为

<getGroupLookVOResponse>
<getGroupLookVOReturn>
<name>one</name>
<id>1</id>
</getGroupLookVOReturn>
<getGroupLookVOReturn>
<name>two</name>
<id>2</id>
</getGroupLookVOReturn>
<getGroupLookVOReturn>
<name>three</name>
<id>3</id>
</getGroupLookVOReturn>
</getGroupLookVOResponse>

我需要的xml结构是

<getGroupLookVOResponse>
<getGroupLookVOReturn>
<LookVO>
<name>one</name>
<id>1</id>
</LookVO>
<LookVO>
<name>two</name>
<id>2</id>
</LookVO>
<LookVO>
<name>three</name>
<id>3</id>
</LookVO>
</getGroupLookVOReturn>
</getGroupLookVOResponse>

方法签名是

public LookVO[] getGroupLookVO()

我尝试编辑 wsdl,但一旦我重新生成客户端,wsdl 就会被重写。我也不擅长WSDl。

有人可以帮助我并指出正确的方向吗

4

1 回答 1

1

如果我遇到了你的问题,你应该重新生成 web 服务,而不是客户端。

1)更改THE WEBSERVICE中的方法(而不是客户端!)以获得您需要的行为

2) 右键单击​​您的 WS 包,然后新建 -> 其他 -> Web 服务 -> Web 服务

3)按照向导添加您要发布的所有方法

4)在服务器上部署您的网络服务

接着

5) 从新的 wsdl 重新生成客户端


只是个人评论,但这是一个品味问题。在 XML 中,不应该存在同一列表中元素顺序的概念,因为通过 XML 模式进行的验证不提供这种可能性。您可以按您想要的顺序生成元素,但如果您是精心设计的 XML 的“纯粹主义者”,则不应依赖同一列表中标签的顺序。但是,我不想对此感到太烦人:))

于 2012-08-07T15:40:18.483 回答