首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从jax-ws客户端代码中去除ArrayOfString类

如何从jax-ws客户端代码中去除ArrayOfString类
EN

Stack Overflow用户
提问于 2011-06-24 11:25:57
回答 2查看 906关注 0票数 5

在使用wsimport从WSDL生成客户端代码时,我得到了很多ArrayOf*类。我想确保我得到的是String[]而不是ArrayOfString。

要实现这一点,需要进行哪些外部定制?

EN

回答 2

Stack Overflow用户

发布于 2011-07-01 14:07:11

到目前为止,我已经完成了一个变通方法,通过在实用程序方法中使用反射将ArrayOfXXX对象修改为XXX[]。

票数 2
EN

Stack Overflow用户

发布于 2014-01-22 06:44:07

我不确定这是否是您要问的,但是如果您在xml响应中看到了这些,那么您可能误用了JAX-WS生成的ObjectFactory类中的方法。

例如,下面这两行代码

代码语言:javascript
复制
factory.createArrayOfNameListItem(factory.createArrayOfNameListItem());

factory.createMyDataItemNames(arrayOfNameListItem);

生成相同类型的对象:

代码语言:javascript
复制
JAXBElement<ArrayOfNameListItem> objects

然而,

代码语言:javascript
复制
factory.createArrayOfNameListItem(factory.createArrayOfNameListItem());

序列化/呈现为:

代码语言:javascript
复制
<ArrayOfNameListItem>
<Names>
  <NameListItem>
    <FirstName>
      Homer
    </FirstName>
    <LastName>
      Simpson
    </LastName>
  </NameListItem>
</Names>
</ArrayOfNameListItem>

代码语言:javascript
复制
factory.createMyDataItemNames(arrayOfNameListItem);

序列化/呈现为:

代码语言:javascript
复制
<Names>
  <NameListItem>
    <FirstName>
      Homer
    </FirstName>
    <LastName>
      Simpson
    </LastName>
  </NameListItem>
</Names>

希望这对某些人有帮助。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6463000

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档