java.util.HashMap 无法转换为 org.apache.axiom.om.OMElement

发布于 2025-01-03 04:52:49 字数 376 浏览 0 评论 0 原文

我创建了 WSDL 文件,并在 WS Client 类中尝试将 HashMap 作为参数发送,如下所示:

HashMap> map = new HashMap>(); verifyStub存根=新的VerifyStub(); 验证 vu = new verify(); vu.setHmap(map);

并且遇到上述错误消息“java.util.HashMap 无法转换为 org.apache.axiom.om.OMElement”。

我想知道是否可以将 HashMap 转换为 OMElement。

I created WSDL file and in the WS Client class am trying to send HashMap as the parameter as follows :

HashMap<String, ArrayList<User>> map = new HashMap<String, ArrayList<User>>();
VerifyStub stub = new VerifyStub();
Verify vu = new Verify();
vu.setHmap(map);

And am experiencing the above error message "java.util.HashMap cannot be cast to org.apache.axiom.om.OMElement".

May I know, whether I can convert HashMap to OMElement.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

栖竹 2025-01-10 04:52:49

您无法通过 wsdl 接口传递像 HashMap 这样的集合。

wsdl 中没有集合类型的映射。

传递这样的东西的最佳选择是传递数组。这可能意味着需要一层额外的包装器代码来将数据传送到 Web 服务层。

此链接虽然不完全是您的情况,但它对在 wsdl 中使用集合提供了一些启发,

http://www.ibm.com/developerworks/webservices/library/ws-tip-coding/index.html

You can't pass Collections like HashMap through a wsdl interface.

There is no mapping of collection types in wsdl.

Your best bet for passing things like that is to pass Arrays. This may mean an extra layer of wrapper code to bring your data out to the webservice layer though.

This link, whilst not exactly your case throws some light on using collections in a wsdl,

http://www.ibm.com/developerworks/webservices/library/ws-tip-coding/index.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文