3

我正在尝试使用 JAXB 从我的类路径中的模式生成 java 类。对于 CXF,我从类路径中的 wsdl 生成 java 类,如下所示:

<wsdlOptions>
    <wsdlOption>
        <wsdl>classpath:wsdl/MetsInterfaceService.wsdl</wsdl>
    </wsdlOption>
</wsdlOptions>

我希望 JAXB 存在类似的东西。我确实尝试过使用目录,但是当模式(存储在同一个 Maven 模块中)在类路径中导入另一个模式时,这似乎更符合要求。

任何帮助,将不胜感激!-萨尔

4

1 回答 1

2

CXF XJC Maven 插件似乎classpath:支持.

XsdOption 对象用于为要处理的每个 XSD 文件传递​​特定选项和配置。

该站点上的示例显示classpath:<xsdOption>路径中以多种方式使用<xsd><bindingFile><catalog>路径:

<configuration>
    <sourceRoot>${basedir}/target/generated/src/main/java</sourceRoot>
    <xsdOptions>
        <xsdOption>
            <xsd>classpath:/schemas/wsdl/http.xsd</xsd>
            <bindingFile>classpath:/schemas/wsdl/http.xjb</bindingFile>
            <catalog>${basedir}/src/main/build-resources/catalog.cat</catalog>
        </xsdOption>
        <xsdOption>
            <xsd>classpath:/schemas/wsdl/ws-addr.xsd</xsd>
            <packagename>org.apache.cxf.ws.addressing</packagename>
        </xsdOption>
        <xsdOption>
            <xsd>classpath:/schemas/wsdl/addressing.xsd</xsd>
            <bindingFile>classpath:/schemas/wsdl/addressing.xjb</bindingFile>
        </xsdOption>
        <xsdOption>
            <xsd>classpath:/schemas/configuration/security.xsd</xsd>
            <bindingFile>classpath:/schemas/configuration/security.xjb</bindingFile>
            <catalog>${basedir}/src/main/build-resources/catalog.cat</catalog>
            <extensionArgs>
                <extensionArg>-Xdv</extensionArg>
            </extensionArgs>
        </xsdOption>
        <xsdOption>
            <xsd>classpath:/schemas/wsdl/ws-addr-wsdl.xsd</xsd>
            <bindingFile>classpath:/schemas/wsdl/ws-addr-wsdl.xjb</bindingFile>
            <extension>true</extension>
        </xsdOption>
        <xsdOption>
            <xsd>classpath:/schemas/wsdl/addressing200403.xsd</xsd>
            <bindingFile>classpath:/schemas/wsdl/addressing200403.xjb</bindingFile>
        </xsdOption>
    </xsdOptions>
</configuration>
于 2012-09-07T00:40:17.977 回答