2016-05-25 14 views
0

ich habe eine Methode deleteProduct:Apache CXF und javax.ws.rs.core.Response

 @Override 
     public Response deleteProduct(String productId) { 
      Response response = Response 
        .status(Response.Status.FORBIDDEN) 
        .entity(new IllegalAccessError("This is a JAXB object with an error string")) 
        .build(); 
      return response; 
     } 

mein Problem ist immer bekomme ich diese Antwort:

 <ns2:deleteProductResponse xmlns:ns2="http://ws.cxf.test.com/"> 
     <return/> 
     </ns2:deleteProductResponse> 

warum nicht ich meine Meldung Error ?

+0

würden Sie bitte überprüfen Sie die Anmerkungen richtig http://cxf.apache.org/docs/developing-a-service.html –

+0

Annotation, was die Antwort ist ein javax.ws.rs.core.Response Objekt –

Antwort

1

Ich glaube, Sie sind verwirrt zwischen JAX-RS und JAX-WS. Wenn dies SOAP-UI gemeint ist, heißt das, dass Sie SOAP-basierte Webdienste erstellen oder, mit anderen Worten, SOA - serviceorientierte Architektur verwenden, die mit dem SOAP-Protokoll und nicht mit HTTP arbeitet. Daher kommen hier keine HTTP-Status-Codes oder darauf basierende Fehlermeldungen zum Tragen.

Wenn Sie jedoch einen RESTful-Webdienst erstellen (einer, der auf JAX-RS basiert), hat er alles mit HTTP zu tun.

Entscheiden Sie zunächst anhand der Projektanforderungen, welches Framework zu verwenden ist, und codieren Sie dann entsprechend.

+0

danke genau –

Verwandte Themen