草庐IT

jaxb_lib

全部标签

xml - 在我的应用程序中用 JAXB 替换 XStream

目前在应用程序中,我们获得了一个SOAP响应xml,每个元素都附加了namespace。我已经硬编码到我的代码中,命名空间被忽略,因为应用程序需要干净的xml。但是经过测试,它被认为是一个薄弱的解决方案,因为namespace将来可能会发生变化。有人向我推荐使用jaxb。我目前使用的是xtream,因为我们可以直接读取xml。所以我开始研究jaxb。但是jaxb需要xsd。我已经理解了这个过程,但我不确定如何在我的应用程序中实现Jaxb,因为我收到了一个xml响应。所以,我的问题是在这种情况下可以用jaxb替换xtream吗?谢谢 最佳答案

java - 如何使用 JAXB 从 XML 写入和读取特殊字符和符号

有一个JavaRCP应用程序,它使用JAXB生成XML文件,它基本上从文本框中获取输入(以及特殊字符)以保存在xml中并显示相同的内容通过从xml解码。用户正在复制控制台输出(可能包含特殊字符)并粘贴到文本框中并将其保存到xml中。xmlversion="1.0"encoding="UTF-8"jaxbversionis2.1.10inJDK1.6_21.Whenunmarshalling,receivinganunmarshallexception:[org.xml.sax.SAXParseException:AninvalidXMLcharacter(Unicode:0x1b)wa

xml - 扩展注释类成员的 JAXB 命名空间问题

我有3个带注释的类(我故意删除了getter、setter等以使代码更具可读性):结果.java@XmlRootElement(name="resultat")@XmlType(propOrder={"state","content"})publicclassResult{protectedStatestate;protectedContentcontent;}内容.java:@XmlRootElement(name="content")@XmlSeeAlso({Job.class})publicclassContent{}和扩展内容的Job.java:@XmlType(name="j

java - 使用jaxb将xml字符串转换为java对象

我得到一个832edi文件,其中命名空间作为xml字符串,我需要从这个xml字符串中提取元素。所以我已经根据832edi文件生成了jaxb类。当我尝试存储xml字符串的内容时,出现以下异常javax.xml.bind.JAXBElementcannotbecasttoorg.bam.jaxb.Transaction834我正在使用下面的代码来解析xml字符串JAXBContextjaxbContext=JAXBContext.newInstance("org.bam.jaxb");Unmarshallerunmarshaller=jaxbContext.createUnmarshall

xml - JAXB 如何删除 JDK7 中的 ns2

在我的代码中,当XmlSchema只有命名空间属性时,我使用JAXB将对象转换为xmlstring,我可以得到我想要的。像这样的xml字符串:watersteak但是当我有xmlnsattr时,我得到这样的xml:watersteak代码:包信息.java@XmlSchema(namespace="http://www.something.com/something",elementFormDefault=XmlNsForm.QUALIFIED,xmlns={@XmlNs(namespaceURI="h",prefix="xsi")})//onlythismaketheresultdi

java - 从 JAXB 转换 null java.lang.Integer 产生 0,而不是 null

我有以下XML:TESTTESTMRM通过序列化以下类产生:packageanonymised.packagename;importjavax.xml.bind.annotation.XmlAccessType;importjavax.xml.bind.annotation.XmlAccessorType;importjavax.xml.bind.annotation.XmlElement;importjavax.xml.bind.annotation.XmlRootElement;importjavax.xml.bind.annotation.XmlSchemaType;import

java - 我们可以在解码期间在运行时决定 jaxb 类吗?

有什么方法可以在运行时决定我想将XML解码到哪个java类中?我试过用这种方式解码代码-publicObjectunmarshallXml(StringxmlReq,StringclassName){StringmyClass=className+".class";Objectinstances=null;try{JAXBContextjc=JAXBContext.newInstance(myClass);Unmarshalleru=jc.createUnmarshaller();StringBufferxmlStr=newStringBuffer(xmlReq);StringRead

java - 使用 JAXB 将 XML CDATA 字符串解码为文字

考虑以下简单的XML字符串:abcd下面的代码定义了2Java可用于生成上述Example.class的类(Value.class和XML)输出,对于字符串值abcd:@XmlRootElement(name="example")publicclassExample{privateValuevalue;privateExample(){}publicValuegetValue(){returnvalue;}publicvoidsetValue(Valuevalue){this.value=value;}@XmlAccessorType(XmlAccessType.FIELD)priva

xml - JAXB 绑定(bind) - 将 typesafeEnumBase 设置为空(将枚举转换为字符串)

根据linkIftypesafeEnumBaseissettoxsd:string,itwouldbeaglobalwaytospecifythatallsimpletypedefinitionsderivingdirectlyorindirectlyfromxsd:stringandhavingenumerationfacetsshouldbeboundbydefaulttoatypesafeenum.IftypesafeEnumBaseissettoanemptystring,"",nosimpletypedefinitionswouldeverbeboundtoatypesafe

java - JAXB 一步将集合编码为 XmlElement 和 XmlAttribute

我想将集合编码为嵌套属性。现在我有:@XmlElement(name="entry")publicCollectiongetSizes(){...}返回:12但我想得到:如果没有新类,这可能吗? 最佳答案 如果没有新类(class),似乎是不可能的。使用XmlAdapter:classEntryAdapterextendsXmlAdapter{publicEntryAdapter.Entrymarshal(Integerid){returnnewEntry(id);}publicIntegerunmarshal(Entrye){re