Hi,

When using CXF to construct a webservice  I see that my response xml always
gets an extra wrapper layer.
It always gets an extra   <return>   ... </return>   in the soap responses.

*


Actual soap response.*

<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
   <soap:Body>
      <ns1:deleteNetworkResponse xmlns:ns1="http://test.com/ble";>
         <return>
            <resultCode>-514</resultCode>
            <resultDescription>Not found</resultDescription>
         </return>
      </ns1:deleteNetworkResponse>
   </soap:Body>
</soap:Envelope


*Expected response*
**
<soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/";>
   <soap:Body>
      <ns1:deleteNetworkResponse xmlns:ns1="http://test.com/ble";>
            <resultCode>-514</resultCode>
            <resultDescription>Not found</resultDescription>
      </ns1:deleteNetworkResponse>
   </soap:Body>
</soap:Envelope

*java code*

@WebService( targetNamespace = "http://test.com/ble";)
public interface NetworkAdmin {

...
...

@WebMethod
    public generalResult deleteNetwork(
            @WebParam(name = "token") String token,
            @WebParam(name = "id") int id);



}

where
public class generalResult {

    protected int resultCode;
    protected String resultDescription;

   //+ getters/setters
}


I found no way to disable this.
Adding @ResponseWrapper  with no localname didn.t help -> still  <return>
... </return>
Adding @ResponseWrapper(localName = "deleteNetworkResponse")  didnt' help ->
still  <return> ... </return>
*
*
What is going on here ?
Does anyone know how to get the expected response ?


Regards,
Harm Verhagen

Reply via email to