axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Kevin J. Duling" <jatt...@hotmail.com>
Subject Re: typeMapping and Bad Types
Date Sun, 14 Nov 2004 18:05:36 GMT
I'm saying I can process single complex types in the response without my
client-config.wsdd being configured.  I believe this is because of the code
in the Stub class.  My next step is to try (again) to put something in the
client-config.wsdd that will understand this response.

However, when I get back two objects, serialization fails.

Here are two snippets of my log4j logs.  The first is when just a TResult
object is returned and successfully deserialized.  The second is when both a
TResult and a TCustomerFinancials object returns.  Finally, the SOAP XML
that fails is included at the bottom.  This current run is without anything
of interest in my client-config.wsdd.

Just a TResult:

100695 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializerImpl  - Set
value com.ncube.vod.bps.billing.obi.TResult@9dd in target
org.apache.axis.encoding.MethodTarget@12ef4c6
100695 [  ft2-7   ] DEBUG org.apache.axis.utils.NSStack  - NSPush (32)
100695 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializationContext  -
Exit: DeserializationContext::startElement()
100695 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializationContext  -
Enter: DeserializationContext::endElement(, return)
100695 [  ft2-7   ] DEBUG org.apache.axis.i18n.ProjectResourceBundle  -
org.apache.axis.i18n.resource::handleGetObject(popHandler00)
100695 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializationContext  -
Popping handler org.apache.axis.encoding.ser.BeanDeserializer@177060f
100695 [  ft2-7   ] DEBUG org.apache.axis.utils.NSStack  - NSPop (32)
100695 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializationContext  -
Popped element stack to
org.apache.axis.message.RPCElement:PurchaseRecurringCreateResponse
100695 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializationContext  -
Exit: DeserializationContext::endElement()
100695 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializationContext  -
Enter: DeserializationContext::endElement(urn:uOBI_Intf-IOBISMSClient,
PurchaseRecurringCreateResponse)
100695 [  ft2-7   ] DEBUG org.apache.axis.i18n.ProjectResourceBundle  -
org.apache.axis.i18n.resource::handleGetObject(popHandler00)
100695 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializationContext  -
Popping handler org.apache.axis.message.RPCHandler@17b79a6
100705 [  ft2-7   ] DEBUG org.apache.axis.i18n.ProjectResourceBundle  -
org.apache.axis.i18n.resource::handleGetObject(setProp00)
100705 [  ft2-7   ] DEBUG org.apache.axis.message.RPCHandler  - Setting
MessageContext property in RPCHandler.endElement().
100705 [  ft2-7   ] DEBUG org.apache.axis.i18n.ProjectResourceBundle  -
org.apache.axis.i18n.resource::handleGetObject(empty00)
100705 [  ft2-7   ] DEBUG org.apache.axis.utils.NSStack  - NSPop (empty)
100705 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializationContext  -
Popped element stack to org.apache.axis.message.SOAPBody:Body
100705 [  ft2-7   ] DEBUG org.apache.axis.encoding.DeserializationContext  -
Exit: DeserializationContext::endElement()
100705 [  ft2-7   ] DEBUG org.apache.axis.client.Call  - Exit:
Call::invoke(RPCElement)
100705 [  ft2-7   ] DEBUG org.apache.axis.client.Call  - Exit:
Call::invoke(ns, meth, args)
100705 [  ft2-7   ] DEBUG org.apache.axis.TIME  - axis.Call.invoke: 6219
{urn:uOBI_Intf-IOBISMSClient}PurchaseRecurringCreate


TResult and TCustomerFinancials:

6349 [main] DEBUG org.apache.axis.encoding.DeserializerImpl  - Set value
com.ncube.vod.bps.billing.obi.TResult@9dd in target
org.apache.axis.encoding.MethodTarget@873723
6349 [main] DEBUG org.apache.axis.utils.NSStack  - NSPush (32)
6349 [main] DEBUG org.apache.axis.encoding.DeserializationContext  - Exit:
DeserializationContext::startElement()
6349 [main] DEBUG org.apache.axis.encoding.DeserializationContext  - Enter:
DeserializationContext::endElement(, return)
6349 [main] DEBUG org.apache.axis.i18n.ProjectResourceBundle  -
org.apache.axis.i18n.resource::handleGetObject(popHandler00)
6349 [main] DEBUG org.apache.axis.encoding.DeserializationContext  - Popping
handler org.apache.axis.encoding.ser.BeanDeserializer@17c96a9
6349 [main] DEBUG org.apache.axis.utils.NSStack  - NSPop (32)
6349 [main] DEBUG org.apache.axis.encoding.DeserializationContext  - Popped
element stack to
org.apache.axis.message.RPCElement:CustomerFinancialGetResponse
6349 [main] DEBUG org.apache.axis.encoding.DeserializationContext  - Exit:
DeserializationContext::endElement()
6349 [main] DEBUG org.apache.axis.encoding.DeserializationContext  - Enter:
DeserializationContext::startElement(urn:uOBI_Intf, TCustomerFinancial)
6349 [main] DEBUG org.apache.axis.message.RPCHandler  - Enter:
RPCHandler.onStartChild()
6349 [main] DEBUG org.apache.axis.i18n.ProjectResourceBundle  -
org.apache.axis.i18n.resource::handleGetObject(typeFromAttr00)
6349 [main] DEBUG org.apache.axis.message.RPCHandler  - Type from attributes
is:  {urn:uOBI_Intf}TCustomerFinancial
6349 [main] DEBUG org.apache.axis.i18n.ProjectResourceBundle  -
org.apache.axis.i18n.resource::handleGetObject(exception00)
6349 [main] ERROR org.apache.axis.client.Call  - Exception:
org.xml.sax.SAXException: Bad types (class
com.ncube.vod.bps.billing.obi.TCustomerFinancial -> class
com.ncube.vod.bps.billing.obi.TResult)
 at org.apache.axis.message.RPCHandler.onStartChild(RPCHandler.java:282)
 at
org.apache.axis.encoding.DeserializationContext.startElement(Deserialization
Context.java:1025)
 at
org.apache.axis.message.SAX2EventRecorder.replay(SAX2EventRecorder.java:159)
 at
org.apache.axis.message.MessageElement.publishToHandler(MessageElement.java:
1138)
 at org.apache.axis.message.RPCElement.deserialize(RPCElement.java:308)
 at org.apache.axis.message.RPCElement.getParams(RPCElement.java:342)
 at org.apache.axis.client.Call.invoke(Call.java:2420)
 at org.apache.axis.client.Call.invoke(Call.java:2319)
 at org.apache.axis.client.Call.invoke(Call.java:1776)
 at
com.ncube.vod.bps.billing.obi.IOBISMSClientbindingStub.customerFinancialGet(
IOBISMSClientbindingStub.java:524)
 at Deserialize.main(Deserialize.java:51)


SOAP XML:

HTTP/1.1 200 OK
Connection: keep-alive
Content-Type: text/xml
Content-Length: 1543
Server: Indy/9.0.11

<?xml version="1.0" encoding="UTF-8"?>
   <SOAP-ENV:Envelope
xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/">
      <SOAP-ENV:Body
SOAP-ENC:encodingStyle="http://schemas.xmlsoap.org/soap/envelope/">
         <NS1:CustomerFinancialGetResponse
xmlns:NS1="urn:uOBI_Intf-IOBISMSClient" xmlns:NS2="urn:uGlobalSOAPTypes"
xmlns:NS3="urn:uOBI_Intf">
            <NS2:TResult id="1" xsi:type="NS2:TResult">
               <ResultCode xsi:type="xsd:int">0</ResultCode>
               <ResultText xsi:type="xsd:string">OK</ResultText>
            </NS2:TResult>
            <return href="#1"/>
            <NS3:TCustomerFinancial id="2"
xsi:type="NS3:TCustomerFinancial">
               <RemainingCreditLimit
xsi:type="xsd:double">199.99</RemainingCreditLimit>
               <CurrentBalance xsi:type="xsd:double">0</CurrentBalance>
               <MonthlyCreditLimit
xsi:type="xsd:double">0</MonthlyCreditLimit>
               <LastBillAmt xsi:type="xsd:double">0</LastBillAmt>
               <LastBillDate xsi:nil="true"/>
               <LastCycleCloseDate xsi:nil="true"/>
               <LastPaymentAmt xsi:type="xsd:double">0</LastPaymentAmt>
               <LastPaymentDate xsi:nil="true"/>
               <TotalBalanceDue xsi:type="xsd:double">0</TotalBalanceDue>
               <Due30 xsi:type="xsd:double">0</Due30>
               <Due60 xsi:type="xsd:double">0</Due60>
               <Due90 xsi:type="xsd:double">0</Due90>
               <Due120 xsi:type="xsd:double">0</Due120>
               <MetadataList xsi:type="SOAP-ENC:Array"
SOAP-ENC:arrayType="NS2:TMetadata[0]"/>
            </NS3:TCustomerFinancial>
            <CustomerFinancial href="#2"/>
         </NS1:CustomerFinancialGetResponse>
      </SOAP-ENV:Body>
   </SOAP-ENV:Envelope>



----- Original Message ----- 
From: "John Menke" <john.menke@eagleinfosystems.com>
To: <axis-user@ws.apache.org>
Sent: Saturday, November 13, 2004 6:38 PM
Subject: RE: typeMapping and Bad Types


> I have not been able to debug the parsing process.  Do you have log4j
> configured so you can see what's going on during the parsing of the wsdd
> file?  If so can you tell me how you configured this?  Also, the names you
> use in the beanMapping look like the names i'm getting in my .wsdl file
when
> i deploy my service through a wsdd file that doesn't have beanMappings. Is
> this because you deployed first and then customized the names to match the
> wsdl or is there a way to figure out how to name the items so that they
> match the wsdl... i'm thoroughly confused...you say your not using the
> beanMappings and it's generating anyway... is beanMapping obsolete?
>

Mime
View raw message