Класс упаковщика package.jaxws.methodName не найден. Вы запускали APT для их генерации?

Проблема

В разработке JAX-WS при развертывании следующей конечной точки службы

File: HelloWorld.java

package com.mkyong.ws;//Service Endpoint Interface
@WebService
public interface HelloWorld{

    @WebMethod String getHelloWorldAsString();
}

File: HelloWorldImpl.java

 //Service Implementation
package com.mkyong.ws;
@WebService(endpointInterface = "com.mkyong.ws.HelloWorld")
public class HelloWorldImpl implements HelloWorld{

    @Override
    public String getHelloWorldAsString() {
       //...
    }

}

Он сразу же попадает в следующее сообщение об ошибке?

Exception in thread "main" com.sun.xml.internal.ws.model.RuntimeModelerException:
    runtime modeler error:

        Wrapper class com.mkyong.ws.jaxws.GetHelloWorldAsString is not found.
        Have you run APT to generate them?

    at com.sun.xml.internal.ws.model.RuntimeModeler.getClass(RuntimeModeler.java:256)
   //...

Решение

Интерфейс конечной точки службы не аннотирован никаким @ SOAPBinding , поэтому для его публикации используется стиль документа по умолчанию . Для удобства чтения вы можете переписать его следующим образом:

 //Service Endpoint Interface
@WebService
@SOAPBinding(style = Style.DOCUMENT, use=Use.LITERAL)
public interface HelloWorld{

    @WebMethod String getHelloWorldAsString();
}

В стиле документа вам необходимо использовать инструмент « wsgen », чтобы сгенерировать все необходимые переносимые артефакты JAX-WS (классы отображения, схему wsdl или xsd) для публикации сервиса.

команда wsgen

Команда wsgen необходима для чтения класса реализации конечной точки службы:

wsgen -keep -cp . com.mkyong.ws.HelloWorldImpl

Он генерирует два класса для одного метода getHelloWorldAsString () в папке package.jaxws .

, GetHelloWorldAsString.java

, GetHelloWorldAsStringResponse.java

Скопируйте эти классы в правильную папку, в данном случае это « com.mkyong.ws.jaxws ». Попробуйте опубликовать это снова.

Ссылка

документация на инструмент]

ссылка://тег/jax-ws/[jax-ws]ссылка://тег/веб-сервисы/[веб-сервисы]

Related