java - JAXB编码

标签 java xml spring jaxb

我正在编写一个 JAXB 类来解析下面的 xml。我总是得到 trackinginfoList 的空值并且响应状态有值(value),我不确定这段代码有什么问题,你能告诉我吗?

@XmlRootElement(name = "CargoTrackingRespone")
   public class CargoTrackingRespone {

   private List<TrackingInfo> trackingInfoList;

   private ResponseStatus responseStatus;

   @XmlElements({@XmlElement(name = "TrackingInfo", type = TrackingInfo.class)} )
   @XmlElementWrapper(name = "TrackingInfoList" )
   public List<TrackingInfo> getTrackingInfoList() {
    return trackingInfoList;
  }

  public void setTrackingInfoList(List<TrackingInfo> trackingInfoList) {
    this.trackingInfoList = trackingInfoList;
  }

  @XmlElement(name = "Status")
  public ResponseStatus getResponseStatus() {
    return responseStatus;
  }

  public void setResponseStatus(ResponseStatus responseStatus) {
    this.responseStatus = responseStatus;
  }

}

XML 文件:

<?xml version="1.0" encoding="UTF-8"?>
<CargoTrackingRespone>
  <TrackingInfo>
    <TrackID>12345</TrackID>
    <TrackStatus>
      <Code>ERROR</Code>
      <Description>No tracking information found</Description>
      <StatusUpdateDateTime>2014-01-14T14:51:11.551-06:00</StatusUpdateDateTime>
    </TrackStatus>
  </TrackingInfo>
  <Status>
    <Code>ERROR</Code>
    <Description>No shipment information available</Description>
    <ReasonCode>No Shipment.</ReasonCode>
  </Status>
</CargoTrackingRespone>

最佳答案

您可以将该属性注释为以下以匹配您的 XML:

@XmlElement(name = "TrackingInfo")
public List<TrackingInfo> getTrackingInfoList() { 

了解更多信息

关于java - JAXB编码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21128089/

相关文章:

java - 在带有 Spring REST JPA 的自定义 REST Controller 中使用链接资源

java - 从 spring mvc 应用程序并行更新 oracle 表

java - Bug - ListView -> 项目 -> 按钮 OnClick : Change background color of parent

javascript - 从 iTunes Podcast XML feed 获取图像

c# - XmlWriter 使命名空间不正确

java - XMLPullParser 特殊字符

java - Spring JUnit 文件加载问题

java - 如何配置maven postman插件仅在测试失败时发送电子邮件

java - 线程池太多,每个池中的线程很少

java - 类似Java的JSci的C++统计包