草庐IT

JaxB2Marshaller

全部标签

java - 通过 JAXB 将链接插入到 RESTEasy XML 结果中

我想通过RESTeasy/JAXB将链接插入到XML中。我尝试使用documentation对于我的代码,但这不起作用,所以我只是对文档中给定的示例进行编码:它仍然不起作用,我不知道为什么。背景:为了在我的JBossRESTEasyAPI中实现HATEOAS原则,我必须将链接插入到我的JAXBXML结果中,以便客户可以在API中导航。我现在正试图了解如何做到这一点,但我不确定documentation是否充满错误或者我无法理解示例和解释:不清楚的东西:据我了解,您必须使用@AddLinks来声明结果应该插入链接。然后我必须再次冗余(!?)使用@LinkResource和“有时”指定UR

java - JAXB 是否存在内存使用问题?

我正在使用JAXB进行xml解析,是否存在任何性能或内存使用问题? 最佳答案 需要注意的是JAXBContext.newInstance()是一个非常慢的操作。这是发生大量反射和类生成的地方,导致duffymo提到的perm空间问题。值得庆幸的是,JAXBContext是线程安全的,所以cacheoneawayandreuseit没问题。.否则,我认为可以肯定地说JAXB内存使用将与完整的DOM相当(或可能更少),当然也比SAX大。如果您有非常大的文档,可以processtheminchunkswithJAXB.JAXBRIdist

java - 对于少数小型 POJO,JAXB 值得吗?

我正在实现一个小型的RESTfulWeb服务,并想我会返回XMLblob来表示资源,这些资源相当直接地映射到我拥有的一些Java类。我可以为每个类做自定义XML编码器,但我偶然发现了JAXB(我从未使用过),这似乎是一种避免编写必须保持同步的繁琐编码逻辑的干净方法如果我向任何类添加新属性。那么,我的问题是:对于像这样简单的事情,JAXB是否太重量级了?将基本结构、bean集合等映射到XML文档是否值得使用?编辑:我正在使用Jersey来构建服务。 最佳答案 注意:我是EclipseLinkJAXB(MOXy)领导,以及JAXB(JS

java - JAXB 将空列表映射到空集合?

我有一个webservicesoap服务,它将一个带有可选列表的对象作为xml参数:@XmlElement(required=false)privateListlist;publicListgetList(){returnlist;}如果客户端未提供列表标记,是否可以告诉JAXB始终返回/使用空集合而不是null列表?或者我是否总是必须在服务器端为永远不应为null的列表定义一个惰性getter(我希望始终如此)?publicListgetList(){if(list==null){list=newArrayList();}returnlist;} 最佳答案

java - JAXB 问题,Marshal,无法编码类型 “java.lang.String”

当我运行编码操作时,出现以下错误:javax.xml.bind.MarshalException-withlinkedexception:[com.sun.istack.internal.SAXException2:unabletomarshaltype"java.lang.String"asanelementbecauseitismissingan@XmlRootElementannotation]...Causedby:com.sun.istack.internal.SAXException2:unabletomarshaltype"java.lang.String"asanele

java - 文件中未编码对象的 JAXB 位置

我有一些对象被JAXB从XML文件中解码。是否可以让JAXB告诉我或以某种方式找出每个对象在XML文件(行和列)中的位置?此信息有时可用,因为JAXB在模式验证错误期间将其提供给我。但我也希望它可用于经过验证的对象。 最佳答案 您可以在JAXB中利用XMLStreamReader和Unmarshaller.Listener执行此操作:演示packageforum383861;importjava.io.FileInputStream;importjava.util.HashMap;importjava.util.Map;import

java - Jaxb2Marshaller 模式验证似乎不起作用

IexperiencedthatJaxb2MarshallerfailedtovalidatemyinvalidXMLagainsttheXSDwhiledoingtheunmarshalling.I'musingSpring4.0.0.RELEASEandJava7.Hereisanexample:TheXSDfile:fruit.xsdIgeneratedtheJAXBPOJOsfromthisXSDwithSpringToolSuitetocom.testraptor.xml.jaxbpackage.MyinvalidXMLfile:invalid.xmlAsyoucanseeI

java - 如何使用 JAXB 将 HashTable<String, String> 序列化为 XML?

我正在尝试使用JAXB序列化HashTable到XML。我是Java的新手(来自C#),所以我对这个任务有点困惑。我看到了下面的代码:publicstaticStringObjectToXml(Tobject,ClassclassType)throwsJAXBException{JAXBContextjaxbContext=JAXBContext.newInstance(classType);StringWriterwriterTo=newStringWriter();Marshallermarshaller=jaxbContext.createMarshaller();marshal

java - 在 maven jaxb codegen 期间将 DTMManagerDefault 转换为 DTMManager 的 ClassCastException

在尝试运行使用jaxb2插件执行JAXB代码生成的Maven构建时,我遇到了一个奇怪的问题(请参阅下面的堆栈跟踪)。我能想到的最好的是,有一些DTMManager的实现是从与xalan-2.7.1中不同的JAR加载类的;但是,我已经验证用于运行jaxb:generate目标的类路径只有一个包含DTMManager或DTMManagerDefault的xalan-2.7.1.jar-所以我不知道还有什么可能会阻碍.最后一个数据点:我们的构建指定了一个“快照”配置文件,它实际上仅用于将源代码JAR(使用maven-source-plugin)并将它们发布为工件。我在上面描述的失败场景仅发生

java - JAXB 非法注释异常

我是第一次使用JAXB,在理解它要我做什么时遇到了一些问题。我已经设置了一个类,它将成为一个相当大的XML的一部分-这个类将代表XML文档的“标题”部分。packagecom.somecompany.jscentral.xml.integrator.soc;importjavax.xml.bind.JAXBException;importjavax.xml.bind.annotation.XmlAccessType;importjavax.xml.bind.annotation.XmlAccessorType;importjavax.xml.bind.annotation.XmlEle