Какое альтернативное решение для @javax.jws.WebMethod(exclude=true)?

В процессе обновления JX CXF с 2.2.12 до 3.1.6 я сталкиваюсь с проблемой с атрибутом "exclude=true" в аннотации @javax.jws.WebMethod при создании моего проекта. Я получаю следующее исключение.


[java] Ошибка: java.lang.RuntimeException: org.apache.cxf.jaxws.JaxWsConfigurationException: @javax.jws.WebMethod(exclude=true) нельзя использовать в интерфейсе конечной точки службы. Метод: deleteFileInternal [java] Используйте подробный параметр, чтобы показать трассировку стека этой ошибки [java] Ошибка JavaToWS: org.apache.cxf.tools.common.ToolException: org.apache.cxf.jaxws.JaxWsConfigurationException: @javax.jws.WebMethod(exclude=true) нельзя использовать в интерфейсе конечной точки службы.


Это связано с тем, что CXF 3.1.6 не поддерживает атрибут "exclude=true" при генерации WSDL из класса java, если класс аннотируется аннотацией @javax.jws.WebService.

Может кто-нибудь предложить альтернативное решение для этого?

1 ответ

Не использовать @javax.jws.WebMethod(exclude=true) на интерфейсе, просто используйте его на реализацию

public class MyWebServiceImpl implements MyWebService {
    ...
    @WebMethod(exclude = true)
    String methodToExclude(String s) {

    }
} 

Также вы можете удалить метод из интерфейса

Другие вопросы по тегам