草庐IT

JAXB_FORMATTED_OUTPUT

全部标签

java - JAXB 绑定(bind)文件 : XmlAdapters and package name

我有这样一个绑定(bind)文件模式类在“example”中生成(正确),但XmlAdapters在“org.w3._2001.xmlschema”中生成(错误)。我该如何解决这个问题? 最佳答案 对于ApacheCXF用户,最干净的方法是使用-pwsdl2java提供的选项.-p[wsdl-namespace=]PackageNameSpecifieszero,ormore,packagenamestouseforthegeneratedcode.OptionallyspecifiestheWSDLnamespacetopacka

java - JAXB 注释在 getter、setter 和成员上的区别是什么?

标题说明了一切。我想知道在字段/getter/setter上放置JAXB注释(如@XmlElement)之间的主要区别是什么。在我看来(在简单的情况下)这无关紧要。例如让我们拿这个classA{privateStringa;publicStringgetA(){returna;}publicvoidsetA(Stringa){this.a=a;}}现在在我看来,将@XmlElement放在成员字段或getter/setter上并不重要。它只是编码好。当我需要有所作为并且重要时,是否有任何用例?当我去解码这个(xml回到A)时,JAXB具体做了什么?我正在使用JAXBMOXy实现谢谢

java - 如何在 GWT 的客户端使用 JAXB 注释?

我想像这样在我的类中使用JaxB注释:@XmlRootElementpublicclassItemExtensionimplementsSerializable{但是当我把它放在客户端时GWT会提示。[ERROR]Line4:Theimportjavax.xml.bindcannotberesolved[ERROR]Line14:XmlRootElementcannotberesolvedtoatype有解决方法还是我做错了什么? 最佳答案 我有一个项目在客户端GWT代码中使用带有JPA和JAXB注释的实体类。请参阅GWTDocum

java - 使用 Xpath 表达式和 jaxb 解码 XML

我是JAXB的新手,想知道是否有一种方法可以使用xpath表达式将XML解码到我的响应对象。问题是我正在调用第三方网络服务,我收到的响应有很多细节。我不希望将XML中的所有详细信息映射到我的响应对象。我只是希望从xml中映射一些细节,我可以使用这些细节来使用特定的XPath表达式并将它们映射到我的响应对象。是否有可以帮助我实现此目的的注释?例如考虑以下响应1IanMGRoad我只对检索街道名称感兴趣,所以我想使用xpath表达式使用“root/record/AddressDetails/street”获取街道的值并将其映射到我的响应对象publicclassResponse{//How

java - JAXB:为共享一个公共(public) XSD 的两个 XSD 生成类

我有2个服务XSD文件AService.xsd和BService.xsd,每个文件都有不同的targetNamespace。这两者都使用一个名为common.xsd的通用XSD。我使用JAXBMaven插件来生成类。方法如下,generate-packagegeneratetrueschema/Aservice.xsdschema/Bservice.xsdschema/*.xjbcom.schemasrc/main/java当我尝试运行它时,出现以下错误。ValidationType在common.xsd中定义org.xml.sax.SAXParseException:Aclass/i

java - 是否可以使用 JAXB 从模式映射到 java.util.Map?

我有一个现有的XML模式,其中包含我想使用JAXB映射到某种Java映射的类型。我的构建过程采用模式并创建bean。我想通过将模式中的一个复杂类型映射到java.util.Map来自定义此过程。我在某处读到JAXB“不能做接口(interface)”。我不确定这是否适用于这种情况,但如果适用,我会很好地映射到HashMap。此外,它不一定是映射到Map的复杂类型,如果需要的话,它可以是一个元素。我使用.xjb文件控制我的JAXB生成,所以我正在寻找一些放在那里。我尝试了以下方法,但它不起作用:编辑:我已经在我已经尝试过的上述绑定(bind)中添加了更多细节。它在架构编译期间生成以下错误

java - 为什么我的 ArrayList 没有用 JAXB 编码?

这是用例:@XmlRootElementpublicclassBook{publicStringtitle;publicBook(Stringt){this.title=t;}}@XmlRootElement@XmlSeeAlso({Book.class})publicclassBooksextendsArrayList{publicBooks(){this.add(newBook("TheSignoftheFour"));}}然后,我在做:JAXBContextctx=JAXBContext.newInstance(Books.class);Marshallermsh=ctx.cre

java - 带有 jdk8 和 maven-jaxb2-plugin 的 SAXParseException

如果你使用org.jvnet.jaxb2.maven2:maven-jaxb2-plugin之类的插件来解析你的xsd文件,从jdk7升级到jdk8时会遇到这个异常:org.xml.sax.SAXParseException;systemId:文件:/D:/Work/my/schema.xsd;行号:27;列号:133;schema_reference:无法读取架构文档“CoreComponentsTechnicalSpecification-1p0.xsd”,因为accessExternalSchema属性设置的限制不允许"file"访问。你如何让这个插件与jdk8一起工作?

java - 如何防止 JAXB 在编码期间写入未使用的 namespace

有人能够在使用JAXB编码对象期间删除未使用的命名空间吗?这是所请求功能的链接:https://github.com/javaee/jaxb-v2/issues/103(见说明)是否有为此配置JAXB的属性?这在MOXy中已经修复了吗?我目前正在遍历需要编码的对象,并将所有需要绑定(bind)的类提取到Class[]classesToBeBound中。然后我创建一个新的JAXBContext.newInstance(classesToBeBound)未使用的命名空间现在不包含在XML中。我知道xml验证即使对于未使用的命名空间也是有效的,但对我来说这是框架应该处理的事情。以下链接htt

java - JAXB XJC 代码生成 - Marshaller 生成的 xml 中缺少 "schemaLocation"

我使用XJC工具为我的XSD模式生成Java类。当我使用JAXBMarshaller将类编码为XML有效负载时,我在输出XML中缺少“schemaLocation”参数,但我在xsd文件中声明了该参数。如何在输出XML中强制执行“schemaLocation”参数?下面是用于代码生成的xsd架构文件的开头:Therequestforsystemcommandexecution.TheactionthattheVoiceSystemhastoproceed.问候 最佳答案 试试这个:marshaller.setProperty(Mar