You are viewing a plain text version of this content. The canonical link for it is here.
Posted to c-user@axis.apache.org by "Vijayaraghavan, Sriraam" <sv...@verisign.com> on 2006/12/08 06:37:47 UTC

[Axis 1.6b] How to catch / handle Transport Exception ?

Hi All,

 

We have integrated an app with Axis C++ 1.6b. Currently the app crashes
with the following partial stack trace

 

#0  0x400a0c01 in kill () from /lib/libc.so.6

(gdb) bt

#0  0x400a0c01 in kill () from /lib/libc.so.6

#1  0x4002625b in raise () from /lib/libpthread.so.0

#2  0x400a2182 in abort () from /lib/libc.so.6

#3  0x40620157 in __cxxabiv1::__terminate(void (*)())
(handler=0x804b7d4)

    at
/usr/local/src/gcc-3.2.3/libstdc++-v3/libsupc++/eh_terminate.cc:47

#4  0x406201a4 in std::terminate() () at
/usr/local/src/gcc-3.2.3/libstdc++-v3/l

#5  0x40620316 in __cxa_throw (obj=0x83618f8, tinfo=0x0, dest=0) at
/usr/local/s

#6  0x4069fbe7 in HTTPTransport::readHTTPHeader() (this=0xbf3ff2ec)

    at
/home/dev/svijayar/checkout/stuff/axis-c-1.6b-Linux-trace-src/src/transp
o

#7  0x4069c078 in HTTPTransport::getBytes(char*, int*) (this=0x83444b0,
pcBuffer

    at
/home/dev/svijayar/checkout/stuff/axis-c-1.6b-Linux-trace-src/src/transp
o

#8  0x401bc85e in SoapBinInputStream::readBytes(unsigned char*,
unsigned) ()

   from /home/dev/svijayar/checkout/axisbin/bin/libaxis_xmlparser.so

#9  0x404190be in xercesc_2_7::XMLReader::refreshRawBuffer()
(this=0x406b0010) a

#10 0x40415a89 in XMLReader (this=0x406b0010, pubId=0x0, sysId=0x0,
streamToAdop

    source=Source_Internal, throwAtEnd=false, calculateSrcOfs=false,
version=XML

#11 0x403a008c in
xercesc_2_7::ReaderMgr::createReader(xercesc_2_7::InputSource

LReader::Types, xercesc_2_7::XMLReader::Sources, bool) (this=0x8349200,
src=@0x8

    source=Source_External, calcSrcOfs=false) at ReaderMgr.cpp:426

#12 0x403704c6 in
xercesc_2_7::IGXMLScanner::scanReset(xercesc_2_7::InputSource

    at IGXMLScanner2.cpp:1246

#13 0x4041c651 in
xercesc_2_7::XMLScanner::scanFirst(xercesc_2_7::InputSource co

    src=@0x0, toFill=@0x83480bc) at XMLScanner.cpp:589

#14 0x403ad38c in
xercesc_2_7::SAX2XMLReaderImpl::parseFirst(xercesc_2_7::InputS

    source=@0x0, toFill=@0x0) at SAX2XMLReaderImpl.cpp:488

#15 0x401bbfd1 in XMLParserXerces::next(bool) () from
/home/dev/svijayar/checkou

#16 0x081013d6 in axiscpp::SoapDeSerializer::getEnvelope() ()

#17 0x081020ff in axiscpp::SoapDeSerializer::getVersion() ()

#18 0x08115bd8 in
axiscpp::ClientAxisEngine::invoke(axiscpp::MessageData*) ()

#19 0x08115874 in
axiscpp::ClientAxisEngine::process(axiscpp::SOAPTransport*) ()

#20 0x080e9a71 in axiscpp::Call::invoke() ()

 

Apparently a HTTPTransportException seems to be thrown but I am unable
to catch it by putting  catch (AxisException & e) .

 

After some browsing , I came across these 2 relevant posts 

 

http://mail-archives.apache.org/mod_mbox/ws-axis-c-user/200503.mbox/%3CO
FA842E84F.89B7D629-ON80256FBF.005C742E-80256FBF.005CDBEF@uk.ibm.com%3E

 

https://issues.apache.org/jira/browse/AXISCPP-524

 

Mark Whitlock says that he fixed HTTPTransportException to derive from
AxisGenException. But in the latest Axis C++ 1.6b ,
HTTPTransportException still derives from AxisException. 

 

Are we missing something ?

 

Why does the above exception occur and how to currently handle it ?

 

Thanks in advance ,

Sriraam

 

 

 

 


Re: [Axis 1.6b] How to catch / handle Transport Exception ?

Posted by Nadir Amra <am...@us.ibm.com>.
You may want to download latest source and build it.  I believe this is 
fixed in the latest source. 

Nadir K. Amra


"Vijayaraghavan, Sriraam" <sv...@verisign.com> wrote on 
12/07/2006 11:37:47 PM:

> Hi All,
> 
> We have integrated an app with Axis C++ 1.6b. Currently the app 
> crashes with the following partial stack trace
> 
> #0  0x400a0c01 in kill () from /lib/libc.so.6
> (gdb) bt
> #0  0x400a0c01 in kill () from /lib/libc.so.6
> #1  0x4002625b in raise () from /lib/libpthread.so.0
> #2  0x400a2182 in abort () from /lib/libc.so.6
> #3  0x40620157 in __cxxabiv1::__terminate(void (*)()) 
(handler=0x804b7d4)
>     at 
/usr/local/src/gcc-3.2.3/libstdc++-v3/libsupc++/eh_terminate.cc:47
> #4  0x406201a4 in std::terminate() () at /usr/local/src/gcc-3.2.
> 3/libstdc++-v3/l
> #5  0x40620316 in __cxa_throw (obj=0x83618f8, tinfo=0x0, dest=0) at 
> /usr/local/s
> #6  0x4069fbe7 in HTTPTransport::readHTTPHeader() (this=0xbf3ff2ec)
>     at /home/dev/svijayar/checkout/stuff/axis-c-1.6b-Linux-trace-
> src/src/transpo
> #7  0x4069c078 in HTTPTransport::getBytes(char*, int*) 
> (this=0x83444b0, pcBuffer
>     at /home/dev/svijayar/checkout/stuff/axis-c-1.6b-Linux-trace-
> src/src/transpo
> #8  0x401bc85e in SoapBinInputStream::readBytes(unsigned char*, 
unsigned) ()
>    from /home/dev/svijayar/checkout/axisbin/bin/libaxis_xmlparser.so
> #9  0x404190be in xercesc_2_7::XMLReader::refreshRawBuffer() 
> (this=0x406b0010) a
> #10 0x40415a89 in XMLReader (this=0x406b0010, pubId=0x0, sysId=0x0, 
> streamToAdop
>     source=Source_Internal, throwAtEnd=false, calculateSrcOfs=false,
> version=XML
> #11 0x403a008c in xercesc_2_7::ReaderMgr::createReader(xercesc_2_7::
> InputSource
> LReader::Types, xercesc_2_7::XMLReader::Sources, bool) 
> (this=0x8349200, src=@0x8
>     source=Source_External, calcSrcOfs=false) at ReaderMgr.cpp:426
> #12 0x403704c6 in xercesc_2_7::IGXMLScanner::scanReset(xercesc_2_7::
> InputSource
>     at IGXMLScanner2.cpp:1246
> #13 0x4041c651 in xercesc_2_7::XMLScanner::scanFirst(xercesc_2_7::
> InputSource co
>     src=@0x0, toFill=@0x83480bc) at XMLScanner.cpp:589
> #14 0x403ad38c in xercesc_2_7::SAX2XMLReaderImpl::
> parseFirst(xercesc_2_7::InputS
>     source=@0x0, toFill=@0x0) at SAX2XMLReaderImpl.cpp:488
> #15 0x401bbfd1 in XMLParserXerces::next(bool) () from 
> /home/dev/svijayar/checkou
> #16 0x081013d6 in axiscpp::SoapDeSerializer::getEnvelope() ()
> #17 0x081020ff in axiscpp::SoapDeSerializer::getVersion() ()
> #18 0x08115bd8 in 
axiscpp::ClientAxisEngine::invoke(axiscpp::MessageData*) ()
> #19 0x08115874 in axiscpp::ClientAxisEngine::process(axiscpp::
> SOAPTransport*) ()
> #20 0x080e9a71 in axiscpp::Call::invoke() ()
> 
> Apparently a HTTPTransportException seems to be thrown but I am 
> unable to catch it by putting  catch (AxisException & e) .
> 
> After some browsing , I came across these 2 relevant posts 
> 
> http://mail-archives.apache.org/mod_mbox/ws-axis-c-user/200503.
> mbox/%3COFA842E84F.89B7D629-ON80256FBF.005C742E-80256FBF.
> 005CDBEF@uk.ibm.com%3E
> 
> https://issues.apache.org/jira/browse/AXISCPP-524
> 
> Mark Whitlock says that he fixed HTTPTransportException to derive 
> from AxisGenException. But in the latest Axis C++ 1.6b , 
> HTTPTransportException still derives from AxisException. 
> 
> Are we missing something ?
> 
> Why does the above exception occur and how to currently handle it ?
> 
> Thanks in advance ,
> Sriraam
> 
> 
> 
> 

---------------------------------------------------------------------
To unsubscribe, e-mail: axis-c-user-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-c-user-help@ws.apache.org