我正在尝试对JavaPOJO进行xml响应。在使用jaxb解组时出现日期和货币值问题
解组的结果是,货币字段值未映射(null),日期字段映射到一些数字(如1503979200000)
有人能告诉我哪里出了问题吗?提前感谢你的帮助。
下面是我的代码:unmarshall代码:JAXBContext jc=JAXBContext。newInstance(Item.class);解组器um=jc。createUnmarshaller();项目输出=(项目)um。解组(soapMessage.getSOAPBody()。extractContentAsDocument());
Pojo:
@XmlRootElement( name = "item" )
@XmlAccessorType(XmlAccessType.FIELD)
public class Item{
@XmlElement( name = "bl" )
@XmlJavaTypeAdapter(DateTimeAdapter.class)
private Date docDate;
@XmlElement( name = "sd" )
@XmlJavaTypeAdapter(DateTimeAdapter.class)
private Date dueDate;
@XmlElement( name = "bu" )
@XmlJavaTypeAdapter(DateTimeAdapter.class)
private Date postingDate;
@XmlElement( name = "wr" )
@XmlJavaTypeAdapter(CurrencyAdapter.class)
private Currency amount;
...
}
XML中的日期值的格式为yyyy MM dd
解组后的结果:金额=null docDate=1503979200000dueDate=1503979200000postingDate=1503979200000
背景: 我使用JAXB将XML解组为Java对象。最初,我只是使用JAXB来执行解组。然后对代码进行静态分析,并提出了XML外部实体注入的高关键性问题。经过一点研究,我发现了一个建议(https://www.owasp.org/index.php/XML_External_Entity_(XXE)_Prevention_Cheat_Sheet#JAXB_Unmarshaller)使用配置为防止解析
我有一个来自REST API的XML响应,如下所示: 我知道如何使用jaxb获取xml元素值,即“XYZ”,并绑定到bean。但我被困在知道如何获取资源的价值(即https://www.cyz.com),单位(“PH”),href(“ww.com”),div?内xmlns的值,然后将该值映射到对象属性。请帮助我。
为什么在使用JAXB时需要使用? 我的工作场景是这样的: 我正在做一个从.NET到Java的转换项目。在.NET中,类的编写与POJO类似。我只是在代码中添加了注释(如、等)。并解决了与注释相关的错误。 现在我犯了这样的错误: XML文件如下: POJO类:
我尝试解组一个XML文件到一个对象。 我得到了这个错误: 我的解组过程如下所示: 我的XML实体看起来像: 我的XMLFile看起来像: 那么,我的解组过程出了什么问题?XML实体是用xjc创建的。 我也尝试了简单的xml文件/对象。这对我来说很好。
问题内容: 我正在尝试创建一个非常简单的REST服务器。我只是有一个测试方法,它将返回字符串列表。这是代码: 它给出以下错误: 我希望JAXB对诸如String,Integer等简单类型具有默认设置。我想不是。这是我的想象: 使这种方法最简单的方法是什么? 问题答案: 我使用@LiorH的示例并将其扩展为: 注意,它使用泛型,因此您可以将其与String之外的其他类一起使用。现在,应用程序代码很简
问题内容: 我一直在尝试JAXB教程,并设法使代码能够从Java对象生成XML文件,然后能够使用XML生成Java对象。目前,它读取同一类的多个实例以创建一个类似于以下内容的XML文件 我希望能够使用JAXB技术来处理子类。例如:说我有一个Car,Van和Bicycle对象,它们是Vehicle的子类。我是否可以操纵我的JAXB类来编写一个会产生类似结果的XML文件?我在下面提供了我正在使用的代码