Thanks, Daniel.

The first one was indeed the issue. I can't get this customer to modify their 
response output (which they hand-code). So I ended up creating an 
in-interceptor that modifies the XML doc and then reinserts it. Ugly but but 
works.

Thanks!

Henk

On Jan 20, 2010, at 1:02 PM, Daniel Kulp wrote:

> 
> Two thoughts:
> 
> 1) Technically, that soap message would be invalid:
>       <OSSResponse>
> that element  is not namespace qualified and per soap spec, all direct 
> children of the soap:Body should be namespace qualified.   That alone may be 
> the issue.
> 
> 2) Try turning on schema validation:
> ((BindingProvider)proxy).getRequestContext().put(
>   "schema-validation-enabled", Boolean.TRUE);
> and seeing if it throws an exception.   
> 
> 
> Related to (2), make sure you are using CXF 2.2.5 with JAXB 2.1.12.    That 
> may also dump out some messages.
> 
> Dan
> 
> 
> 
> 
> On Tue January 19 2010 5:58:20 pm Henk Flipman wrote:
>> Hi,
>> 
>> I know this is probably a dumb question but here it goes.
>> 
>> I have a WSDL and XSD from a customer and have generated code using
>> Apache's wsdl2java. I then compiled that and wrote a little example
>> program to do a 'getLogin' call.
>> 
>> Apache CXF seems to have an issue parsing the response.
>> 
>> <soapenv:Envelope
>> xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/";> <soapenv:Body
>> xmlns:th="http://toolhost.example.com/ossapi";>
>>      <OSSResponse>
>>         <th:logins>
>>            <th:loginsItem>
>>               <th:accountNumber>8351100040007530</th:accountNumber>
>>               <th:domain>example.net</th:domain>
>>               <th:role>CHILD</th:role>
>>               <th:status>ACTIVE</th:status>
>>               <th:system>email</th:system>
>>               <th:username>[email protected]</th:username>
>>            </th:loginsItem>
>>            <th:loginsItem>
>>               <th:accountNumber>8351100040007530</th:accountNumber>
>>               <th:contactEmail>[email protected]</th:contactEmail>
>>               <th:domain/>
>>               <th:role/>
>>               <th:secQuestion>Favorite movie?</th:secQuestion>
>>               <th:status>ACTIVE</th:status>
>>               <th:system>member services</th:system>
>>               <th:username>test30</th:username>
>>            </th:loginsItem>
>>         </th:logins>
>>         <th:returnCode>0</th:returnCode>
>>         <th:returnString>Success</th:returnString>
>>         <th:roundTrip>0.175047</th:roundTrip>
>>      </OSSResponse>
>>   </soapenv:Body>
>> </soapenv:Envelope>
>> 
>> The resulting GetLoginResponse object has all fields left empty.
>> 
>> I'm not really sure how to begin to debug this. I can provide the WSDL and
>> XSD if necessary.
>> 
>> Thanks.
>> 
>> Henk
>> 
> 
> -- 
> Daniel Kulp
> [email protected]
> http://www.dankulp.com/blog

Reply via email to