Невозможно пропустить оператор импорта с помощью cxf-codegen-plugin - PullRequest
0 голосов
/ 12 октября 2018

Я пытаюсь сгенерировать классы веб-сервиса из файла wsdl, используя apache cxf-codegen-plugin из maven.Мой wsdl-файл импортирует xsd, как показано ниже, используя

<wsdl:import namespace="http://www.example.com/aa/schemas/fileimport-instructions/1.0" location="wc_importexport/genericfileimportservicefacade/fileimport-instructions.xsd" />
<wsdl:import namespace="http://www.example.com/aa/schemas/filetranslation-info/1.0" location="wc_importexport/genericfileimportservicefacade/filetranslation-info.xsd" />

. Я не хочу включать дополнительный XSD в мой проект, потому что они присутствуют во внешней зависимости как их сгенерированные JAXB классы, но когда я пытаюсь запустить mvncompile У меня ошибка FileNotFound.

Я где-то читал, чтобы использовать -nexclude arg, чтобы игнорировать пространство имен, но у меня все еще есть ошибки такого рода.После настройки моего плагина pom.xml

      <plugin>
        <groupId>org.apache.cxf</groupId>
        <artifactId>cxf-codegen-plugin</artifactId>
        <version>3.1.17</version>
        <configuration>
          <wsdlOptions>
            <wsdlOption>
              <wsdl>${basedir}/src/main/resources/wsdl/importExportService.wsdl</wsdl>
              <packagenames> 
              <packagename>com.example.wsdl</packagename>
              </packagenames>
              <extraargs>
                <extraarg>-verbose</extraarg>
                <extraarg>-client</extraarg>
                <extraarg>-nexclude</extraarg>
                <extraarg>http://www.example.com/aa/schemas/fileimport-instructions/1.0=com.example.services.dto.fileimport.instructions</extraarg>
                <extraarg>-nexclude</extraarg>
                <extraarg>http://www.example.com/aa/schemas/filetranslation-info/1.0=com.example.services.dto.filetranslation.info</extraarg>
              </extraargs>
            </wsdlOption>
          </wsdlOptions>
        </configuration>
        <executions>
          <execution>
            <phase>generate-sources</phase>
            <goals>
              <goal>wsdl2java</goal>
            </goals>
          </execution>
        </executions>
      </plugin>

Что мне не хватает?Можно пропустить импорт и дать команду wsdl2java использовать внешнюю библиотеку вместо того, чтобы заново создавать все классы?

Tnx

...