Пользовательская привязка JAXB с интерфейсом - PullRequest
0 голосов
/ 28 марта 2012

Я пытаюсь запустить это: Интерфейс JAXB

Но я всегда получаю сообщение об ошибке: Неподдерживаемое связывание пространства имен "http://jaxb2 -commons.dev.java.net / basic/ наследование».Возможно, вы имели в виду "http://jaxb.dev.java.net/plugin/code-injector"?

Есть ли какой-то новый способ, позволяющий сгенерированным компонентам реализовывать интерфейсы?

РЕДАКТИРОВАТЬ: я также получаю предупреждение unrecognized parameter -Xinheritance в моем POM с cxf версии 2.4.0

 <plugin>
            <groupId>org.apache.cxf</groupId>
            <artifactId>cxf-xjc-plugin</artifactId>
            <version>2.4.0</version>
            <configuration>
                <extensions>
                    <extension>org.apache.cxf.xjcplugins:cxf-xjc-boolean:2.4.0</extension>
                <extension>org.apache.cxf.xjcplugins:cxf-xjc-bug671:2.4.0</extension>
                    <extension>org.apache.cxf.xjcplugins:cxf-xjc-dv:2.4.0</extension>
                    <extension>org.apache.cxf.xjcplugins:cxf-xjc-ts:2.4.0</extension>
                      <extension>org.apache.cxf.xjcplugins:cxf-xjc-pl:2.4.0</extension>
                       <extension>org.apache.cxf.xjcplugins:cxf-xjc-ts:2.4.0</extension>
                    <extension>org.apache.cxf.xjcplugins:cxf-xjc-wsdlextension:2.4.0</extension>
                </extensions>
            </configuration>
            <executions>
                <execution>
                    <id>generate-sources</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>xsdtojava</goal>
                    </goals>
                    <configuration>
                        <xsdOptions>
                            <xsdOption>
                                <extension>true</extension>
                                <xsd>some.xsd</xsd>
                                <packagename>somepackage</packagename>
                         <bindingFile>src\main\resources\bindings\bindings.xml</bindingFile>  
                            <extensionArgs>
                            <arg>-Xdv</arg>
                            <arg>-Xinheritance</arg>
                        </extensionArgs>                             
                            </xsdOption>
                        </xsdOptions>
                    </configuration>
                </execution>
                 <execution>
                  <configuration>
            </configuration>
                 </execution>
            </executions>
   <dependencies>
<dependency>
    <groupId>org.jvnet.jaxb2_commons</groupId>
    <artifactId>jaxb2-basics-runtime</artifactId>
    <version>0.6.3</version>
</dependency>

1 Ответ

2 голосов
/ 28 марта 2012

Вам необходимо добавить плагин jaxb2-basics в качестве зависимости от плагина CXF. Смотрите пример 6 здесь http://cxf.apache.org/docs/maven-cxf-codegen-plugin-wsdl-to-java.html.

например, добавить это в конце

  <dependencies>
    <dependency>
        <groupId>org.jvnet.jaxb2_commons</groupId>
        <artifactId>jaxb2-basics-runtime</artifactId>
        <version><!-- Current version --></version>
    </dependency>
   </dependencies>
</plugin>
...