栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

我想在CXF Codegen上添加@XmlRoot批注

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

我想在CXF Codegen上添加@XmlRoot批注

我找到了解决方案。这很棘手,因为:

  1. 必须处理WSDL中内联的XSD。(技巧是schemaLocation =“ CP_Ablakido_1.wsdl#types1”。它告诉JAXB使用WSDL文件中的节点。)
  2. 必须配置CXF以使用XJC插件(annox)。

必须将以下片段添加到POM.XML:

<wsdlOption>    <wsdl>${basedir}/src/main/resources/wsdl/CP_Ablakido_1.wsdl</wsdl>    <bindingFiles>        <bindingFile>${basedir}/src/main/resources/wsdl/CP_Ablakido_1.xjb</bindingFile>     </bindingFiles>    <extraargs><extraarg>-xjc-Xannotate</extraarg></extraargs></wsdlOption>

和依赖项必须添加到插件:

<dependency>    <groupId>org.jvnet.jaxb2_commons</groupId>    <artifactId>jaxb2-basics-annotate</artifactId>    <version>0.6.0</version></dependency><dependency>    <groupId>org.apache.cxf.xjcplugins</groupId>    <artifactId>cxf-xjc-ts</artifactId>    <version>3.0.5</version></dependency>

XJB文件:

<?xml version="1.0" encoding="UTF-8" standalone="yes"?><jaxb:bindings version="2.0"     xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"    jaxb:extensionBindingPrefixes="annox xjc"    xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"     xmlns:xs="http://www.w3.org/2001/XMLSchema"    xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"    xmlns:annox="http://annox.dev.java.net"    xmlns:inheritance="http://jaxb2-commons.dev.java.net/basic/inheritance">  <jaxb:bindings schemaLocation="CP_Ablakido_1.wsdl#types1" node="/xs:schema">        <jaxb:bindings node="//xs:complexType[@name='InputMapping1']"> <annox:annotate target="class">     <annox:annotate annox: name="GetList_11"/>          </annox:annotate>      </jaxb:bindings>          <jaxb:bindings node="//xs:complexType[@name='OutputMapping1']"> <annox:annotate target="class">     <annox:annotate annox: name="GetList_11Response"/>          </annox:annotate>      </jaxb:bindings>   </jaxb:bindings></jaxb:bindings>


转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/509593.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号