Daniel,

Daniel Kulp wrote:
Most likely, the response isn't correct compared to what CXF is expecting (actually, in this case, JAXB as CXF has nothing to do with this part). The usual culprit for this is element qualification issues and without seeing the wsdl/schema and the actual soap message, it would be hard for me to diagnose. Double check the soap message to make sure the child elements are qualified or not qualified as per the schema in the wsdl. If the schema has elementFormDefault=unqualified (or no elementFormDefault), the elements should be unqualifed. If the schema says elementFormDefault=qualified, they need to be qualified.

Thanks!!! In the wsdl it specifies elementFormDefault="qualified"(twice, once for request namespace and once for response namespace). In the response, the namespace is only defined once in the first element of the data within the response, and it isn't the same namespace as the one defined for the response in the WSDL. So the namespace in the response not matching the namespace in the request was the problem.

I just verified that was the case by changing the response's namespace in the WSDL to match the namespace of the actual response and it finally works!!! (I'm now waiting on our guys to see if they can make the response namespace match the one that is defined for the response in the WSDL.)

Thanks again!!!


An additional mystery (which may have something to do with it?) is that I've found that when I don't setAllowChunking(false) on a policy and set on the conduit, I get a server error back from the service I'm calling.


Some of the older services toolkits don't support chunking. Turning chunking off drops performance by nearly 10% in some cases and consumes more memory, but is required when working with some older toolkits.


Thanks! I'll make sure to try to get a request in for them to update their service to support chunking.

Gary

--
Gary Weaver
Internet Framework Services
Office of Information Technology
Duke University

Reply via email to