我有一个 Spring MVC 项目,它通过 PUT 方法接受 XML 输入。XML 中的元素之一是dateTime
. 我正在使用 aJaxb2Marshaller
将 XML 解组为 bean。我有一个针对在服务器上运行的 webapp 运行的单元测试。
当我使用一切正常发送时间戳new GregorianCalendar(2012, 01, 02)
并且我的应用程序接收到对象时。
但是,如果我更新测试以使用new GregorianCalendar(2013, 01, 02)
Object 中的该字段,则返回为null
.
请注意,唯一的区别是年份,2012 年与 2013 年。我在应用程序日志、localhost 或 catalina.out 中没有看到任何错误消息。
想法?
编辑:附加信息...
我正在使用DataTypeConverter
转换dateTime
为Calendar
。所以我的架构具有以下内容(我正在使用 XJC 将架构转换为 Java 类)。
<annotation><appinfo><jaxb:globalBinding>
<jaxb:javaType name="java.util.Calendar" xmlType="dateTime"
parseMethod="javax.xml.bind.DatatypeConverter.parseDate"
printMethod="javax.xml.bind.DatatypeConverter.pringDate"/>
</jaxb:globalBinding></appinfo></annotation>