axis-c-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From James Jose <jamej...@in.ibm.com>
Subject Re: Fw: Regarding addAnyObject and getAnyObject
Date Mon, 14 Mar 2005 09:40:01 GMT
Hi Mark,

   > Have you tried getting a user soap fault using getAnyObject?

       When I tried to get a SOAP FAULT, it throwing AxisException and 
getting following message-
"Cannot deserialize the requested element ".


Thanks & Regards
James
--------------------------------------------------
James Jose
Messaging Clients Team, WMQDDC
IBM Software Labs, India
Direct: 91-80- 25094331  Ext :2331
E-mail: jamejose@in.ibm.com





Mark Whitlock <mark_whitlock@uk.ibm.com> 
11/03/2005 19:56
Please respond to
"Apache AXIS C Developers List"


To
axis-c-dev@ws.apache.org
cc

Subject
Fw: Regarding addAnyObject and getAnyObject










Hi James,
Answering your questions..

1) passing NULL to addAnyObject() is an application error. Even if the
parameter that is being passed in is nil, it still needs to be encoded in
an XML string. I think it is reasonable to sigsegv here. I thought we were
not intending to police all parameters on all calls.
1) getAnyObject called before Call::invoke is also an application error.
There are no output parameters since the web service hasn't been called
yet. Axis could return NULL, or we could leave it throwing a sigsegv.
2) getAnyObject called more than twice. All these get methods (that return
output data from the service) are calling the XML parser to parse forwards
through the SOAP message. So calling getAnyObject twice will not return 
the
same data. Here I think we should return NULL to say that there is no more
data to return, instead of throwing a sigsegv.
3) Call::checkMessage moves the XML parser forward, checking the name of
the response message. So getAnyObject expects that checkMessage has 
already
been called. So calling getAnyObject before checkMessage is probably also 
a
user error. But this is more subtle and not obvious. It would be better to
return NULL or throw an AxisException in this situation so returning a
better error message.

Have you tried getting a user soap fault using getAnyObject?

Please raise a JIRA to cover these issues,
Thanks,
Markl
Mark Whitlock
IBM

----- Forwarded by Mark Whitlock/UK/IBM on 11/03/2005 13:46 -----
 
             James Jose 
             <jamejose@in.ibm. 
             com>                                                       To 

                                       axis-c-dev@ws.apache.org 
             11/03/2005 10:21                                           cc 

 
                                                                   Subject 

             Please respond to         Regarding addAnyObject and 
              "Apache AXIS C           getAnyObject 
             Developers List" 
 
 
 
 
 






Hai,

   I am working on getAnyObject() and addAnyObject() APIs in Call class 
and
getting some
exceptions in following cases.

addAnyObject(AnyType *param)
----------------------------

1.if NULL is passed as argument.

getAnyObject()
--------------

 1. If getAnyObject() is called before m_pCall->invoke() method.
 2. If getAnyObject() is called more than  twice.
 3. For the following code getting AxisException...

    if (AXIS_SUCCESS == m_pCall->invoke())
        {

                any= (AnyType*)m_pCall->getAnyObject();

                if(AXIS_SUCCESS == m_pCall->checkMessage("divResponse", "
http://localhost/axis/Calculator"))
                {

                        ------
                }

        }

Pls help me to sort out this issues..

Regards
James
--------------------------------------------------
James Jose
Messaging Clients Team, WMQDDC
IBM Software Labs, India
Direct: 91-80- 25094331  Ext :2331
E-mail: jamejose@in.ibm.com



Mime
View raw message