草庐IT

JaxB2Marshaller

全部标签

xml - 使用 JAXB 验证模式

我一直在寻找解决这个问题的方法太久了,考虑到它听起来很简单,所以我来寻求帮助。我有一个XML架构,我已将其与xjc一起使用来创建我的JAXB绑定(bind)。当XML格式正确时,这会很好地工作。不幸的是,当XML格式不正确时,它也不会提示。当我尝试解码XML文件时,我无法弄清楚如何针对模式进行正确的完整验证。我已经设法使用ValidationEventCollector来处理事件,它适用于XML解析错误,例如不匹配的标签,但在需要标签但完全不存在时不会引发任何事件。据我所知,可以针对模式进行验证,但您必须知道模式的路径才能将其传递给setSchema()方法。我遇到的问题是模式的路径存

xml - 让 JAXB 运行得更快

我有一个8兆的文件。使用JAXB编码需要1082毫秒,使用DOM需要862毫秒,使用SAX需要438毫秒。这是使用JDK1.6的所有默认设置,没有使用额外的配置,例如使用woodstox。为了从JAXB获得更好的性能,我尝试通过以下方式使其使用SAX解析...FileReaderfr=newFileReader("myfile.xml");JAXBContextjc=JAXBContext.newInstance(MyObjectList.class);Unmarshallerunmarshaller=jc.createUnmarshaller();XMLInputFactoryxml

xml - Java JaxB - 对象到 XML 字符串到对象

我在Netbeans7.1.2中使用JaxB时遇到问题。我已经使用JaxB(新JaxB绑定(bind))从模式自动生成了我的类。我正在创建将使用Marshaller序列化为XML字符串的对象,然后从XML字符串返回到新的对象实例。但是,我得到以下异常:javax.xml.bind.UnmarshalException:unexpectedelement(uri:"http://www.somewhere.com/some/path",local:"MyQueryComplexTypeQuery").Expectedelementsare(none)XML字符串的编码/序列化工作正常。导

xml - JAXB Unmarshal 创建了一个空对象

我正在使用JAXB将XML文件解码为对象树。根对象是非空的,但它的所有成员都是空的,即使XML文件中有数据也是如此。我的对象类是使用来自wsdls的Axis2生成的。我有ObjectFactory类、jaxb.in​​dex类、package.info注释等。我的问题和这个讨论一样:http://old.nabble.com/AXIS2,-JAXB---Unmarshalling-td26847419.html首先也是最重要的:有没有办法让它正确填充数据?如果没有,是否有一个很好的Axis2或JAXB替代库,它们可以做同样的事情,但可以很好地相互配合? 最佳

xml - 如何将 xml 属性添加到 jaxb 注释类 XmlElementWrapper?

我有一个带有XmlElementWrapper注释的类,例如:...@XmlElementWrapper(name="myList")@XmlElements({@XmlElement(name="myElement")})privateListsomeList=newLinkedList();...此代码生成类似的XML到目前为止还不错。但是现在我需要给列表标签添加属性来获取类似XML的是否有一种“无需创建包含表示列表的新类即可实现此目的的智能方法?” 最佳答案 我为您的问题找到了更好的解决方案。要制作XmlJava对象,请使用以

xml - 在模块路径或类路径上未找到 JAXB-API 的 javax.xml.bind.JAXBException 实现

我正在尝试在Java9上运行我的SpringBoot应用程序,我遇到了JAXB问题,该问题在指南中有所描述,但对我不起作用。我添加了对JAXBapi的依赖,应用程序开始工作。如果由于使用Java版本>=9缺少JAXB缺少实现而出现以下异常:javax.xml.bind.JAXBException:ImplementationofJAXB-APIhasnotbeenfoundonmodulepathorclasspath.atjavax.xml.bind.ContextFinder.newInstance(ContextFinder.java:177)~[jaxb-api-2.3.0.j

xml - JAXB:如何编码列表中的对象?

也许是个愚蠢的问题:我有一个List类型我想将其编码到一个XML文件中。这是我的课Database包含ArrayList...@XmlRootElementpublicclassDatabase{Listrecords=newArrayList();publicListgetRecords(){returnrecords;}publicvoidsetRecords(Listrecords){this.records=records;}}...这是类数据://@XmlRootElementpublicclassData{Stringname;Stringaddress;publicStr

java - Windows 上的 Marshaller 在文件末尾添加新行

我有一个项目使用JAXB编码的XML文件来比较不同环境的配置状态。我注意到Windows下JAXB编码器的实现与Unix版本肯定存在一些差异。当我比较在不同平台上创建的2个文件时,我的比较工具总是在文件末尾标记一个差异。在Windows上创建的文件在文件末尾有一个新行(CR和LF),而Unix版本没有。请注意,该问题与两个平台之间换行符的差异无关!Windows编码器有效地在文件末尾添加了一个“新行”,而Unix编码器在根标记的结束“>”后停止。是否有任何参数我可以传递给编码器以防止这个额外的行,或者我是否必须在Windows上编码后显式删除它,以便我的比较工具不会标记差异?这是编码代

c# - C# 中的 Jaxb 等价物

在Java中使用JAXB可以很容易地从xml模式文件生成一组Java类,符合该模式的xml可以反序列化为这些类。是否有一些C#等同于JAXB?我知道Linq可以将类序列化和反序列化到xml文件或从xml文件反序列化。但是我如何从xml模式文件生成C#类,然后将这些类与linq一起使用? 最佳答案 如果您使用的是VisualStudio,试试XMLSchemaDefinitionTool.它采用您的模式定义并生成C#类——或者它可以采用其他方式并从类中生成模式定义。它还具有许多其他与XML相关的转换。

php - 用于 PHP 的 JAXB(PAXB?)

PHP是否有像JAXB这样的框架?我需要一个框架,作为JAXB,从一个对象创建一个XML文件。该框架必须知道如何将对象映射到XML,并在需要时遵守其结构(子对象、列表等)。此外,它还需要进行逆向工程,即将(有效的)XML文件转换为原始对象。换句话说,框架必须能够编码一个对象和解编一个XML文件。我知道JAXB有多棒,但我不能在我目前正在做的这个项目中使用Java,这真的很糟糕。 最佳答案 我认为您正在寻找PHP对象XML序列化器/反序列化器。这可能有帮助:PHPObjectasXMLDocument