wsdl2java: добавьте аннотацию к методу WebService или позвольте WebService расширить интерфейс

В настоящее время мы работаем над платформой, которая использует SOAP с интерфейсом WSDL. Мы используем нисходящий подход и генерируем Java-классы из WSDL с JAX-WS.

Я хотел бы добавить аннотации к методам созданного интерфейса WebService. Если это невозможно, было бы хорошо, если бы я позволил сгенерированному интерфейсу WebService расширить другой интерфейс, который затем можно аннотировать.

В качестве примера возьмем следующий wsdl:

<portType name="SoapDemo">
    <operation name="search">
        <input message="tns:search" wsam:Action="http://example.org/soapDemo/searchRequestType">
        </input>
        <output message="tns:searchResponseType" wsam:Action="http://example.org/soapDemo/searchResponseType">
        </output>
        <fault name="DemoException" message="tns:DemoException" wsam:Action="http://example.org/soapDemo/DemoException">
        </fault>
    </operation>
</portType>

Теперь я хотел бы использовать пользовательскую привязку, чтобы получить что-то вроде следующего:

@WebService(name = "SoapDemo", targetNamespace = "http://example.org/soapDemo")
public interface ErnpSoap {

    @ImportantAnnotation
    @WebMethod
    @WebResult(targetNamespace = "")
    @RequestWrapper(localName = "search", targetNamespace = "http://example.org/soapDemo", className = "example.org.Search")
    @ResponseWrapper(localName = "searchResponseType", targetNamespace = "http://example.org/soapDemo", className = "example.org.SearchResponseType")
    public SearchResponse search(
        /* parameters go here */
        throws DemoException
    ;

Обратите внимание на @ImportantAnnotation, который я хочу добавить в интерфейс.

Это вообще возможно?

0 ответов

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