2016-07-11 2 views
0

En cours de mise à niveau des fichiers CXF de 2.2.12 à 3.1.6, je suis confronté à un problème avec l'attribut "exclude = true" dans l'annotation @ javax.jws.WebMethod lors de la construction de mon projet. Je reçois l'exception suivante.Quelle est la solution alternative pour @ javax.jws.WebMethod (exclude = true)?


[java] Error: java.lang.RuntimeException: org.apache.cxf.jaxws.JaxWsConfigurationException: The @javax.jws.WebMethod(exclude=true) cannot be used on a service endpoint interface. Method: deleteFileInternal [java] Use the verbose setting to show the stacktrace of this error [java] JavaToWS Error: org.apache.cxf.tools.common.ToolException: org.apache.cxf.jaxws.JaxWsConfigurationException: The @javax.jws.WebMethod(exclude=true) cannot be used on a service endpoint interface.


Cela est dû, CXF 3.1.6 ne supporte pas l'attribut "exclure = true" tandis que la génération WSDL de la classe java si classe avec l'annotation @ annotées javax.jws.WebService. Est-ce que quelqu'un peut suggérer la solution alternative pour cela?

Répondre

0

Ne pas utiliser @javax.jws.WebMethod(exclude=true) sur l'interface, il suffit d'utiliser sur la mise en œuvre

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

    } 
} 

vous pouvez également supprimer la méthode de l'interface