有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在Apache CXF WSDL2Java的后处理器上添加自定义注释

我需要通过WSDL2Java工具识别ApacheCXF在Soap Web服务中生成的文件。是否有一个后处理器,我可以操作这些生成文件的字节数据,在这些文件上添加自定义注释

以下是我的Maven插件配置

<plugin>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-codegen-plugin</artifactId>
            <version>${cxf.version}</version>
            <executions>
                <execution>
                    <id>generate-sources</id>
                    <phase>generate-sources</phase>
                    <configuration>
                        <strict>false</strict>
                        <sourceRoot>${basedir}/src/main/java</sourceRoot>
                        <wsdlOptions>
                            <wsdlOption>
                                <wsdl>${basedir}/src/main/resources/wsdl/CustomerService.wsdl</wsdl>
                                <extraargs>
                                    <extraarg>-xjc annox</extraarg>
                                </extraargs>
                                <bindingFiles>
                                    <bindingFile>${basedir}/src/main/resources/wsdl/binding.xml</bindingFile>
                                </bindingFiles>
                            </wsdlOption>
                        </wsdlOptions>
                        <plugins>
                            <plugin>
                                <groupId>org.jvnet.jaxb2_commons</groupId>
                                <artifactId>jaxb2-basics</artifactId>
                                <version>0.6.0</version>
                            </plugin>
                            <plugin>
                                <groupId>org.jvnet.jaxb2_commons</groupId>
                                <artifactId>jaxb2-basics-annotate</artifactId>
                                <version>0.6.0</version>
                            </plugin>
                        </plugins>
                    </configuration>
                    <goals>
                        <goal>wsdl2java</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

这是我的装订。xml

<jaxws:bindings xmlns:jaxws="http://java.sun.com/xml/ns/jaxws"
xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:annox="http://annox.dev.java.net">
<!-- <jaxws:enableAsyncMapping>true</jaxws:enableAsyncMapping> -->
<jaxws:enableWrapperStyle>true</jaxws:enableWrapperStyle>
<jaxws:bindings node="wsdl:definitions/wsdl:types/xs:schema">
    <jxb:globalBindings>
        <jxb:javaType name="java.util.Date" xmlType="xs:dateTime"
            parseMethod="org.apache.cxf.tools.common.DataTypeAdapter.parseDateTime"
            printMethod="org.apache.cxf.tools.common.DataTypeAdapter.printDateTime" />
        <jxb:javaType name="java.util.Date" xmlType="xs:date"
            parseMethod="org.apache.cxf.tools.common.DataTypeAdapter.parseDate"
            printMethod="org.apache.cxf.tools.common.DataTypeAdapter.printDate" />
    </jxb:globalBindings>

    <jxb:bindings node="/xs:complexType">
        <annox:annotate target="class">
            <annox:annotate annox:class="javax.xml.bind.annotation.XmlRootElement"
                name="GetRecordsType" />
        </annox:annotate>
    </jxb:bindings>
</jaxws:bindings>


共 (0) 个答案