Never mind -- my build script wasn't properly rebuilding the client stub.

Thanks.

On 3/1/08, Michael Nelson <[EMAIL PROTECTED]> wrote:
>
> I am using CXF 2.0.4 on both client and server. I have a simple server
> interface derived from one of the samples (see below). When I try to call
> the "deleteCustomer" function using the CXF 2.0.4 wsdl2java client, the
> first element of the paramArray passed into
> org.apache.cxf.jaxws.JAXWSMethodInvoker.performInvocation() is null. If I
> use Microsoft's WCF, I don't have this problem.
>
> The difference between the two requests is the namespace prefix on the
> tags in the method invocation. If I remove them and do a manual post using
> wget, the call succeeds.
>
> WCF:
> <s:Envelope xmlns:s="
> http://schemas.xmlsoap.org/soap/envelope/";><s:Body><deleteCustomer<http://schemas.xmlsoap.org/soap/envelope/%22%3E%3Cs:Body%3E%3CdeleteCustomer>
> xmlns="
> http://customer.acme.com";><id>4300</id></deleteCustomer></s:Body></s:Envelope
> >
>
> CXF client:
>
> <soap:Envelope xmlns:soap="
> http://schemas.xmlsoap.org/soap/envelope/";><soap:Body><ns2:deleteCustomer<http://schemas.xmlsoap.org/soap/envelope/%22%3E%3Csoap:Body%3E%3Cns2:deleteCustomer>xmlns:ns2="
> http://customer.acme.com";><id>4300</id></ns2:deleteCustomer></soap:Body></soap:Envelope><s:Envelope
> xmlns:s="
> http://schemas.xmlsoap.org/soap/envelope/";><s:Body><deleteCustomer><id>4300</id></deleteCustomer>
> </s:Body></s:Envelope>
>
> Any ideas on how I might be able to solve this problem? Or is this just a
> bug?
>
> Thanks,
> -mike
>
> ===============================
>
> @WebService(targetNamespace = "http://customer.acme.com";)
> public interface CustomerService {
> [ ... Other methods ...]
>
>    @Delete
>     @HttpResource(location = "/customers/{id}")
>     void deleteCustomer(@WebParam(name = "id")
>                         long id) throws CustomerNotFoundFault;
>
> }
>
> The client interface that is generated from wsdl2java is:
>
> @WebService(targetNamespace = "http://customer.acme.com";, name =
> "CustomerService")
>
> public interface CustomerService {
> [... Other methods ...]
>
>     @RequestWrapper(localName = "deleteCustomer", targetNamespace = "
> http://customer.acme.com";, className = "com.acme.customer.DeleteCustomer")
>     @ResponseWrapper(localName = "deleteCustomerResponse", targetNamespace
> = "http://customer.acme.com";, className = "
> com.acme.customer.DeleteCustomerResponse")
>     @WebMethod
>     public void deleteCustomer(
>         @WebParam(name = "id", targetNamespace = "http://customer.acme.com
> ")
>         long id
>     );
> };
>
>
>

Reply via email to