草庐IT

JAXB_FORMATTED_OUTPUT

全部标签

java - Jaxb UnMarshal 错误 : unexpected element (uri :"", 本地 :"processedSalesOrderTypeList")。预期的元素是

我正在尝试解码XML文件。我创建了Jaxb类,但是当我尝试解码时,它给了我:Exceptioninthread"main"javax.xml.bind.UnmarshalException:unexpectedelement(uri:"",local:"processedSalesOrderTypeList").Expectedelementsare,,,,,这是我的ObjectFactory.java类:@XmlRegistrypublicclassObjectFactory{privatefinalstaticQName_ProcessedSalesOrderMessage_QNA

java - JAXB SchemaFactory 源顺序必须遵循模式之间的导入顺序?

使用最新的JAXB(Sun)并具有架构层次结构,该架构在架构之间使用导入指令来共享类型定义。在JAXB中对Marshaller/Unmarshaller的setSchema调用激活模式验证,这应该将验证推迟到Xerces(使用Java1.5)。在使用SchemaFactory创建架构对象时,我不想知道架构之间导入指令的顺序。不幸的是,我还没有找到允许这样做的Xerces特性/属性。例如,如果通过导入将a.xsd拉入b.xsd,则以下代码不起作用:FileInputStreama=newFileInputStream("a.xsd");FileInputStreamb=newFileIn

java - JAXB - 生成的类实现接口(interface)

有没有办法配置JAXB以便生成的类实现指定的接口(interface)?我打算将JAXB生成的类用作DAO,它们应该能够实现我的DAO接口(interface)。 最佳答案 不幸的是,其他一些答案中提到的接口(interface)注入(inject)插件似乎不再得到很好的支持。事实上,我找不到要下载的JAR。谢天谢地,JAXB2BasicsPlugins提供了一种类似的机制来向生成的JAXBstub添加接口(interface)(请参阅Inheritanceplugin)。JAXB2BasicsPlugins文档包含有关将插件与An

java - JAXB Marshaller 没有值为 null 的元素

当我使用JAXB编码器编码java对象时,编码器不会为java对象中的空文件创建空元素。例如,我有以下java对象:publicclassPersonTraining{@XmlElement(name="Val1",required=true)protectedBigDecimalval1;@XmlElement(name="Val2",required=true,nillable=true)protectedBigDecimalval2;@XmlElement(name="Val3",required=true,nillable=true)@XmlSchemaType(name="d

java - JAXB 生成的 xml 中的 "xsi:type"和 "xmlns:xsi"

我使用JAXB创建文件夹和文件层次结构我的模型:@XmlRootElementpublicclassRoot{@XmlAttributeprivateStringpath;@XmlElement(name="dir")privateArrayListrootContentDirs=null;@XmlElement(name="file")privateArrayListrootContentFiles=null;publicvoidsetRootContentDirs(ArrayListrootContentDirs){this.rootContentDirs=rootContentD

java - JAXB-Unmarshalling 期间的 ObjectFactory 角色是什么?

我正在使用JAXB2.2.2来解析一个简单的XML-REST流。这是一段代码:JAXBContextjc=JAXBContext.newInstance("com.example.entities");Unmarshalleru=jc.createUnmarshaller();r=(Response)u.unmarshal(inputStream);对象工厂类:@XmlRegistrypublicclassObjectFactory{publicResponsecreateRsp(){returnnewResponse();}}响应类:@XmlAccessorType(XmlAcces

java - 我可以用代码替换 jaxb.properties 吗?

Iamusingsomenon-standardextensions从EclipseLink的JAXB实现中,为了启用该实现,我必须使用jaxb.properties对其进行配置。效果很好。然而,由于构建错误,属性文件没有包含在正确的位置,导致使用默认的JAXB,它没有任何错误只是继续解析XML文件,忽略非标准扩展,留下我有一个不工作的bean。为了使其更加稳健,我想摆脱属性文件并在代码中指定上下文配置。由于它们的注释,我已经对EclipseLink有编译时依赖性,我不需要在部署时配置这部分(事实上,看到可能出错的地方,我不希望它可配置)。 最佳答案

java - 抑制 JAXB 生成类的编译器警告

这可能是这个问题(AvoidingCompilerwarningsoncodegeneratedbyxjc)的重复,但由于我不太精通XJC/JAXB自定义绑定(bind)特性,所以我假设我可能误解了上述问题。我的问题似乎很简单-如何向生成的JAXB类添加@SuppressWarnings("all")注释?我们的项目有0个警告策略,在JAXB生成步骤之后,我们最终得到350多个警告,这些警告简直是可怕的噪音。我希望XJC上有一个简单的标志,或者至少是一种提供此类信息的简单方法,但我找不到。根据我在旅行中所见,人们会做以下事情之一:@lexicore的JAXB2AnnotatePlugi

java - 使用 Maven 构建时在运行时缺少 jaxb.properties

我有一个项目,我想在其中使用JAXB从XSD生成的一组类。对于这些类,我想从XML和JSON编码/解码。我发现我需要MoxyEclipselink来完成我需要的事情。我将我的类和过程作为Ant项目进行了测试,然后我决定将其移至Maven以进行更好的管理。但是,jaxb.properties文件似乎在运行时无法识别。我的项目有一个用于对象的MavenArtifact,还有一个用于逻辑/处理的Artifact。我一直在绞尽脑汁想弄清楚将jaxb.properties放在哪里以便可以读取它。我试过了对象项目/src/main/resources/jaxb.properties/src/mai

java - JAXB 解码 XML 元素以映射

我有一个XML文件。在此文件中,某些元素的属性会发生变化。我想将这些属性放入map中。我该怎么做?我的XML是:9831138683Delayedpayment100.5619831138684hiHere2在此,VARS元素可以具有变化的属性,我事先不知道这些元素是什么。我为此创建了一个类:@XmlRootElement(name="ROW")@XmlAccessorType(XmlAccessType.FIELD)publicclassSMSDetail{@XmlAttributeprivateintid;@XmlElement(name="MOBILE")privateintmo