Re: Null paramaters using CXF when deployed to jetty with CXFServlet
Yes, I am using the jaxws client, and also SOAP UI. I get the same problem with both front ends. I used java2wsdl. This is the message that is getting sent: soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; soap:Body ns2:createPersonTypeInfo xmlns:ns2=http://student.kuali.org/poc/wsdl/personidentity/person; personTypeInfo name=PersonType1 setList set name=AttrSet1 attributeTypes name=Attr1 typeSTRING/type labelAttribute 1 Label/label /attributeTypes attributeTypes name=Attr2 typeDATE/type labelAttribute 2 Label/label /attributeTypes /set /setList /ns2:personTypeInfo /ns2:createPersonTypeInfo /soap:Body /soap:Envelope This results in a null parameter being set in the DocLiteralInInterceptor, but when I add the namespace and change the line personTypeInfo name=PersonType1 to ns2:personTypeInfo name=PersonType1, the parameters get set correctly. Strange! I removed the @XmlRootElement from my PersonTypeInfo class and it works now without the namespace prefix. Glen Mazza-2 wrote: Are you using CXF's simple front end instead of its jaxws front end? I think you want the latter for CXF. That might explain the problem. (Also, did you run wsdl2java to generate the JAXB mappings to the XSDs in the WSDL?) Glen Am Dienstag, den 01.04.2008, 12:21 -0700 schrieb depstei2: Hello, I have a web service that works fine when using cxf on Tomcat, but when I try to deploy on embedded jetty using the org.apache.cxf.transport.servlet.CXFServlet, I get null parameters in my service method calls, even though the cxf logger shows that the payloads of the messages contain correct data. When I switch to using sun's jaxws-rt's com.sun.xml.ws.transport.http.servlet.WSSpringServlet, the service will work as expected on jetty embedded. The null parameter does not occur when the parameter is a primitive type, but happens for all other parameter types. Has anyone come across this problem? Any ideas? -- View this message in context: http://www.nabble.com/Null-paramaters-using-CXF-when-deployed-to-jetty-with-CXFServlet-tp16422010p16447084.html Sent from the cxf-user mailing list archive at Nabble.com.
Re: Webservice client sending null parameters to host
Hi Dan, thanks for your help, You were right about the qualified vs unqualified issue. The weird thing is, if I deploy in tomcat or jetty as a WAR it works fine, but if I deploy in jetty embedded it fails. The message being sent was this: soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; soap:Body ns2:createPersonTypeInfo xmlns:ns2=http://myNamespace; personTypeInfo name=PersonType1 and it causes null parameters, so using soap UI I changed the message by adding a namespace prefix: soap:Envelope xmlns:soap=http://schemas.xmlsoap.org/soap/envelope/; soap:Body ns2:createPersonTypeInfo xmlns:ns2=http://myNamespace; ns2:personTypeInfo name=PersonType1 and it worked. I then removed @XmlRootElement from my PersonTypeInfo class and it works without using the namespace prefix. I wonder why jetty embedded is causing problems! Thanks again, -Daniel dkulp wrote: I'm pretty sure that if your hitting this, the soap message is invalid for the service. Usually, it's one of two things: 1) A qualified vs unqualified issue. The elements are coming in non-qulalified when the service is expecting qualified or vice-versa. 2) The elements are coming in the wrong order. I think one of the perl soap toolkits does this sometimes. In anycase, a testcase would be a big help. Dan -- View this message in context: http://www.nabble.com/Webservice-client-sending-null-parameters-to-host-tp15368060p16447092.html Sent from the cxf-user mailing list archive at Nabble.com.
Null paramaters using CXF when deployed to jetty with CXFServlet
Hello, I have a web service that works fine when using cxf on Tomcat, but when I try to deploy on embedded jetty using the org.apache.cxf.transport.servlet.CXFServlet, I get null parameters in my service method calls, even though the cxf logger shows that the payloads of the messages contain correct data. When I switch to using sun's jaxws-rt's com.sun.xml.ws.transport.http.servlet.WSSpringServlet, the service will work as expected on jetty embedded. The null parameter does not occur when the parameter is a primitive type, but happens for all other parameter types. Has anyone come across this problem? Any ideas? -- View this message in context: http://www.nabble.com/Null-paramaters-using-CXF-when-deployed-to-jetty-with-CXFServlet-tp16422010p16422010.html Sent from the cxf-user mailing list archive at Nabble.com.
Re: Webservice client sending null parameters to host
I am getting the same error, and after debugging I have come to the same piece of code in DocLiteralInInterceptor. Has anyone come up with a solution? Mayank Mishra-2 wrote: G'day all, I faced the same problem using JAXB binding, I debuged it, The code in method getPara() of DocLiteralInInterceptor class parameters.put(part, null); puts null parameters in the MessageContentsLists instance. replacing it with, parameters.put(part, dr.read(part, xmlReader)); results in right behavior. I may be wrong, but sharing my own experience with you all. With Regards, Mayank Daniel Kulp wrote: Any chance you can send a sample project that shows the problem? Kind of hard to diagnos this without more details. What version of CXF? Code first/wsdl first? Can I see the wsdl? Can you capture the soap message? JAXB/Aegis? etc Dan On Friday 08 February 2008, mrsv wrote: I have a cxf webservice and a client generated using wsdl2java. When the client tries to contact the service the parameters are being null. I am unable to figure out the reason.Tried including all the jars from cxf. Any answers are appreciated. Thanks -- View this message in context: http://www.nabble.com/Webservice-client-sending-null-parameters-to-host-tp15368060p16424980.html Sent from the cxf-user mailing list archive at Nabble.com.