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

时间:2012-02-07 21:33:55

标签: java web-services java-ee hashmap

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

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

我遇到上述错误消息&#34; java.util.HashMap无法转换为org.apache.axiom.om.OMElement&#34;。

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

1 个答案:

答案 0 :(得分:2)

你不能通过wsdl接口传递像HashMap这样的集合。

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

传递这样的东西最好的选择是通过阵列。这可能意味着额外的一层包装器代码,可以将您的数据输出到Web服务层。

这个链接,虽然不完全是你的情况,但在wsdl中使用集合会有所启发,

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