我正在使用来自各种标准webservice
的基本类型构建(多个)复合体。现在,我想将编译分解为更多步骤,最好是针对我正在使用的每个标准进行一个步骤。XSD
(GML, SWE, XLINK, etc)
好处:
1) 我可以添加创建工具库,我可以在每个标准的所有 Web 服务中重复使用这些工具库。
2) 我可以利用 的强大功能JAXB2 basics plugin
,它似乎与maven-jaxb2-plugin (org.jvnet.jaxb2.maven2)
和 创建例如接口绑定非常好用。这与 jaxws-maven-plugin 插件形成对比。
最后一步是使用org.jvnet.jax-ws-commons:maven-jaxb2-plugin
来创建我可以在 EJB 中实现的实际 Web 服务(或作为客户端调用)。
现在,该org.jvnet.jaxb2.maven2:maven-jaxb2-plugin
插件允许我通过它们的 maven 坐标来引用剧集,作为它的一部分,如下所示:
<episodes>
<episode>
<groupId>org.example</groupId>
<artifactId>jaxb2-basics-test-episodes-a</artifactId>
</episode>
</episodes>
我怎样才能做到这一点org.jvnet.jax-ws-commons:maven-jaxb2-plugin
?我搜索了很多,并进行了这样的实验:
<plugin>
<groupId>org.jvnet.jax-ws-commons</groupId>
<artifactId>>maven-jaxb2-plugin</artifactId>
<version>2.1</version>
<executions>
<execution>
<goals>
<goal>wsimport</goal>
</goals>
</execution>
</executions>
<configuration>
<wsdlDirectory>src/main/resources/</wsdlDirectory>
<wsdlFiles>
<wsdlFile>example.wsdl</wsdlFile>
</wsdlFiles>
<xjcArgs>
<xjcArg>-b</xjcArg>
<xjcArg>../cpt-xsd/target/generated-sources/xjc/META-INF/sun-jaxb.episode</xjcArg>
</xjcArgs>
<verbose>true</verbose>
</configuration>
</plugin>
它从(编译的)JAXB 依赖项目的目标目录中获取剧集文件。这有时甚至在 Maven 构建中失败(为什么我还没有弄清楚)。
我尝试使用目录文件进行映射,但是(我想我在某处看到了一个以 Maven 坐标为目标的目录映射),但还没有成功。