【发布时间】:2017-11-16 10:19:02
【问题描述】:
我的 Spring MVC Web Service 代码如下。
模型类
@XmlRootElement(name="wrappedSecretData")
public class VendorData {
private long lKeyId;
@XmlElement(name="keyId")
public long getlKeyId() {
return lKeyId;
}
public void setlKeyId(long lKeyId) {
this.lKeyId = lKeyId;
}
}
控制器方法
@RequestMapping(value = "/vendor", method = RequestMethod.POST)
public String addVendor(@RequestBody VendorData vendorData) {
/*Checking recieved value*/
System.out.println(vendorData.getlKeyId());//**Returning 0 value **
return "Success";
}
Web 服务的 XML 请求正文
<wrappedVendorSecretsMetadata>
<keyId>1</keyId>
</wrappedVendorSecretsMetadata>
我在 lKeyId(粗体注释)中得到“0”值。 我在哪里做错了。 请提供使用 @XmlElement(name="keyId") 注释将 xml 元素绑定到对象成员的正确方法。
【问题讨论】:
-
用
VendorData类解组您的示例 XML 对我来说很好(包括lKeyId = 1)。所以,问题可能出在您没有显示的 Java 代码部分。 -
我已经添加了我的网络服务的完整代码。请帮助我我在哪里做错了。我在解组它时遇到问题。我该如何解组它?
-
wrappedSecretData!=wrappedVendorSecretsMetadata
标签: java xml spring-mvc jaxb unmarshalling