我将Jax-ws与Java 7结合使用,并且尝试创建带有输入列表的请求。如果我使用的是HashMap,则没有问题,但是当我创建List>时,似乎无法将值绑定到参数中。这是我的代码示例。
@XmlRootElement(name = "SmsRequest")
@XmlAccessorType(XmlAccessType.FIELD)
public class SmsRequest {
//other parameters
@XmlElement(required = true)
private List<HashMap<String, String>> metadata;
//getter and setter methods
public List<HashMap<String, String>> getMetadata() {
return metadata;
}
public void setMetadata(List<HashMap<String, String>> metadata) {
this.metadata = metadata;
}
}
但是当我致电给我
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:ws="http://ws/">
<soapenv:Header/>
<soapenv:Body>
<ws:sendSmsMessage>
<!--Optional:-->
<SmsRequest>
<!-- Other parameters -->
<metadata>
<entry>
<key>category</key>
<value>service</value>
</entry>
</metadata>
<metadata>
<entry>
<key>group</key>
<value>group1</value>
</entry>
</metadata>
</SmsRequest>
</ws:sendSmsMessage>
</soapenv:Body>
</soapenv:Envelope>
服务返回了我
{
//other Parameters
"metadata" : [ { }, { } ],
}
我不明白为什么...