Ошибка генерации WSDL в intellij: ClassNotFoundException: org. apache .woden.WSDLException - PullRequest
1 голос
/ 30 апреля 2020

У меня есть проблема в течение 2 дней, и я не знаю, как ее решить, у меня есть проект оси 2 под IntelliJ, и я хочу сгенерировать wsdl для клиента, но когда я пытаюсь с помощью Tools- > WebServices-> Генерировать Java код из WSDL ..

Генерировать Java код из wsdl ...

У меня следующая ошибка:

  Retrieving document at 'http://localhost:8080/Axis2_Server_war_exploded/services/HelloWorld?wsdl'.
 Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/woden/WSDLException
    at org.apache.axis2.description.WSDLToAxisServiceBuilder.<init>(WSDLToAxisServiceBuilder.java:103)
    at org.apache.axis2.description.WSDL11ToAxisServiceBuilder.<init> (WSDL11ToAxisServiceBuilder.java:225)
    at org.apache.axis2.description.WSDL11ToAllAxisServicesBuilder.<init> (WSDL11ToAllAxisServicesBuilder.java:63)
    at org.apache.axis2.wsdl.codegen.CodeGenerationEngine.<init>(CodeGenerationEngine.java:167)
    at org.apache.axis2.wsdl.WSDL2Code.main(WSDL2Code.java:50)
    at org.apache.axis2.wsdl.WSDL2Java.main(WSDL2Java.java:24)
 Caused by: java.lang.ClassNotFoundException: org.apache.woden.WSDLException
    at java.base/jdk.internal.loader.BuiltinClassLoader.loadClass(BuiltinClassLoader.java:581)
    at java.base/jdk.internal.loader.ClassLoaders$AppClassLoader.loadClass(ClassLoaders.java:178)
    at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:521)
    ... 6 more
 Done

Мой сервис на стороне сервера:

services. xml:

<serviceGroup>
<service name="HelloWorld">
    <parameter name="ServiceClass">HelloWorld.HelloWorld</parameter>
    <operation name="sayHelloWorldFrom">
        <messageReceiver class="org.apache.axis2.rpc.receivers.RPCMessageReceiver" />
    </operation>
</service>
</serviceGroup>

HelloWorld. java:

@WebService
 public class HelloWorld {
    @WebMethod
    public String sayHelloWorldFrom(String from) {
        String result = "Hello, world, from " + from;
        System.out.println(result);
        return result;
    }
 }

Клиент maven зависимостей:

    <dependencies>
    <dependency>
        <groupId>org.apache.woden</groupId>
        <artifactId>woden-core</artifactId>
        <version>1.0M10</version>
    </dependency>

    <dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-kernel</artifactId>
        <version>1.7.9</version>
        <scope>compile</scope>
    </dependency>

    <dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-transport-local</artifactId>
        <version>1.7.9</version>
    </dependency>

    <dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-adb</artifactId>
        <version>1.7.9</version>
        <scope>compile</scope>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.apache.axis2/axis2 -->
    <dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2</artifactId>
        <version>1.7.9</version>
        <type>pom</type>
    </dependency>

    <dependency>
        <groupId>org.apache.axis2</groupId>
        <artifactId>axis2-transport-http</artifactId>
        <version>1.7.9</version>
    </dependency>

</dependencies>

Спасибо за помощь!

1 Ответ

1 голос
/ 02 мая 2020

Я решил ее, выбрав Файл-> Настройки-> Инструменты-> Веб-службы и настроив правильное двоичное распределение axis2 :

http://www.apache.org/dyn/closer.lua/axis/axis2/java/core/1.7.9/axis2-1.7.9-bin.zip

(у меня был IntelliJ IDEA).

...