Я использую Джерси как реализацию JSR 311. Объект я пытаюсь преобразовать JSON выглядит следующим образом:Джерси теряет поле id
@XmlRootElement
public class deliveryTimes{
private Integer id;
private Short type;
private Integer orderId;
/* ... more fields and autogenerated Getters & Setters ... */
}
результат JSON является:
{"deliveryTimes":
[{"type":"1","orderId":"30449",/* ... other fields ... */ },
/* ... */
]}
На словах: Поле «id» теряется. В моих других объектах id-поля имеют другие имена, такие как orderId, customerId, ... и эти поля не теряются.
Мой pom.xml выглядит следующим образом:
<!-- other stuff -->
<!-- JERSEY -->
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-server</artifactId>
<version>1.11</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-json</artifactId>
<version>1.11</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-grizzly2</artifactId>
<version>1.11</version>
</dependency>
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-servlet</artifactId>
<version>1.11</version>
</dependency>
<!-- Jersey + Spring -->
<dependency>
<groupId>com.sun.jersey.contribs</groupId>
<artifactId>jersey-spring</artifactId>
<version>1.11</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-beans</artifactId>
</exclusion>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</exclusion>
</exclusions>
</dependency>
<!-- other stuff -->
Там нет никаких дополнительных настроек. Я не нашел ничего полезного на сайте Джерси или через Google, поэтому я оказался здесь с моим первым сообщением.
Есть ли какой-либо вариант конфигурации, который мне не хватает? Как вы JSONify id-fields?
Спасибо за ваш ответ. Фактически я искал способ передачи нулевых значений (вы правильно догадались в # 1) и изменил тип данных «id» от int до Integer, но забыл setter. В следующий раз я дам репозитору IDE. Еще раз спасибо за подробный полезный ответ (я бы это сделал, если бы у меня была достаточно репутации)! –