The message definitely looks ok there. Not sure what would be going on. I'd probably need to see a testcase that shows the problem to really be able to debug that.
Dan On Mon August 10 2009 12:04:52 pm [email protected] wrote: > Daniel, thanks for reply. > WSDL is large, here is a part related to one method > int[] getPermissionIdsByUserId(String userId) > > <?xml version='1.0' encoding='UTF-8'?><wsdl:definitions > name="ServiceImplService" > targetNamespace="http://WebServices.dbServices.a.com/" > xmlns:ns1="http://cxf.apache.org/bindings/xformat" > xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" > xmlns:tns="http://WebServices.dbServices.a.com/" > xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" > xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <wsdl:types> > <xsd:schema attributeFormDefault="qualified" elementFormDefault="qualified" > targetNamespace="http://naming.javax" xmlns:ns0="http://lang.java" > xmlns:ns1="http://util.java" xmlns:tns="http://naming.javax" > xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <xsd:import > namespace="http://lang.java" /> > <xsd:import namespace="http://util.java" /> > > > <xsd:element name="getPermissionIdsByUserId" > type="tns:getPermissionIdsByUserId"/> − > <xsd:complexType name="getPermissionIdsByUserId"> > − > <xsd:sequence> > <xsd:element minOccurs="0" name="userId" type="xsd:string"/> > </xsd:sequence> > </xsd:complexType> > <xsd:element name="getPermissionIdsByUserIdResponse" > type="tns:getPermissionIdsByUserIdResponse"/> − > <xsd:complexType name="getPermissionIdsByUserIdResponse"> > − > <xsd:sequence> > <xsd:element name="return" type="tns:ArrayOfInt"/> > </xsd:sequence> > </xsd:complexType> > > <wsdl:message name="getPermissionIdsByUserIdResponse"> > <wsdl:part element="tns:getPermissionIdsByUserIdResponse" > name="parameters"> </wsdl:part> > </wsdl:message> > > <wsdl:message name="getPermissionIdsByUserIdResponse"> > <wsdl:part element="tns:getPermissionIdsByUserIdResponse" > name="parameters"> </wsdl:part> > </wsdl:message> > > <wsdl:operation name="getPermissionIdsByUserId"> > <wsdl:input message="tns:getPermissionIdsByUserId" > name="getPermissionIdsByUserId"> </wsdl:input> > <wsdl:output message="tns:getPermissionIdsByUserIdResponse" > name="getPermissionIdsByUserIdResponse"> </wsdl:output> > </wsdl:operation> > > <wsdl:operation name="getPermissionIdsByUserId"> > <soap:operation soapAction="" style="document"/> > − > <wsdl:input name="getPermissionIdsByUserId"> > <soap:body use="literal"/> > </wsdl:input> > − > <wsdl:output name="getPermissionIdsByUserIdResponse"> > <soap:body use="literal"/> > </wsdl:output> > </wsdl:operation> > > > And here is a soap message from CXF logger: > > <?xml version="1.0" encoding="utf-8"?><soap:Envelope > xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" > xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" > xmlns:xsd="http://www.w3.org/2001/XMLSchema"> > <soap:Body><getPermissionIdsByUserId > xmlns="http://WebServices.dbServices.a.com"> > <userId>testuser</userId></getPermissionIdsByUserId> > </soap:Body></soap:Envelope> > > > instead of testuser I get null in java method. > If you need additional information, please let me know. > > 10.08.09, 18:37, "Daniel Kulp" <[email protected]>: > > On Mon August 10 2009 9:15:16 am [email protected] wrote: > > > Hi I've created java webservice with .NET client with CXF. I have no > > > problems with import of the WSDL to .NET client. But when I make some > > > requests I see parameters in logged XML request. But when I check this > > > parameters in the debugger there are nulls for all of them. > > > @WebParam(name="...") annotations were added, correct methods are > > > invoked, but parameters are null. How can I fix it? Thanks! > > > > Can you attach the wsdl/schemas and the soap message? USUALLY, this is > > due to the incoming soap message not actually matching the schema. -- Daniel Kulp [email protected] http://www.dankulp.com/blog
