I got everything working under Axis by changing the response data from <ns1:GetAdapInfoResponse> <AdapterInfo xsi:type="ns1:AdapterInfo"> <IoctlError xsi:type="xsd:int">0</IoctlError> <QueryError xsi:type="xsd:int">0</QueryError> <AdapterID xsi:type="xsd:int">1</AdapterID> <MemBase xsi:type="xsd:int">-335544320</MemBase> <IoBase xsi:type="xsd:int">-144719872</IoBase> </AdapterInfo> </ns1:GetAdapInfoResponse>
to <ns1:GetAdapInfoResponse> <AdapterInfo xsi:type="ns1:AdapterInfo"> <ioctlError xsi:type="xsd:int">0</ioctlError> <queryError xsi:type="xsd:int">0</queryError> <adapterID xsi:type="xsd:int">1</adapterID> <memBase xsi:type="xsd:int">-335544320</memBase> <ioBase xsi:type="xsd:int">-144719872</ioBase> </AdapterInfo> </ns1:GetAdapInfoResponse> It appears the BeanSerializer does not match 'IoctlError' to 'ioctlError' in the HashMap. It wants fields that begin with a lower case letter... Weird...