axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Anton Gusev <anton.gu...@ihep.ru>
Subject Re: receiving xsd__string
Date Fri, 23 Jul 2004 10:37:16 GMT
Ok, Thanks, but unfortunately it's don't help me.

  Files Channel.cpp, Channel.hpp, HttpTransport.cpp
was patched. Axis-c++ rebuilded (# cd $AXISCPP_HOME; sh build.sh), my 
application rebuilded as well. Same one exception occured again:

(gdb) info stack
#0  0xb7537576 in __cxa_begin_catch () from /usr/lib/libstdc++.so.5
#1  0xb7323916 in HttpTransport::HTTPValidate (this=0x804efb0, 
p_HttpPacket=@0x8053b00) at HttpTransport.cpp:679
#2  0xb7322518 in HttpTransport::operator>> (this=0x804efb0, 
pPayLoad=0x804f540) at HttpTransport.cpp:249
#3  0xb7324930 in Receiver::Recv (this=0x804f540) at Receiver.cpp:51
#4  0xb7326755 in AxisTransport::getBytes (this=0x804e388, pcBuffer=0x80532c8 
"", pSize=0xbfffae1c) at AxisTransport.cpp:241
#5  0xb756f16d in XMLParserExpat::parseNext (this=0x804fcb0) at 
XMLParserExpat.cpp:278
#6  0xb756f039 in XMLParserExpat::next (this=0x804fcb0, isCharData=false) at 
XMLParserExpat.cpp:165
#7  0xb75b7e38 in SoapDeSerializer::getEnvelope (this=0x804fc78) at 
SoapDeSerializer.cpp:112
#8  0xb75b87e4 in SoapDeSerializer::getVersion (this=0x804fc78) at 
SoapDeSerializer.cpp:459
#9  0xb7599c0b in ClientAxisEngine::invoke (this=0x804f558, pMsg=0x804f590) at 
ClientAxisEngine.cpp:168
#10 0xb75999b9 in ClientAxisEngine::process (this=0x804f558, pSoap=0x804e388) 
at ClientAxisEngine.cpp:92
#11 0xb75a21e8 in Call::invoke (this=0x804c428) at Call.cpp:102
#12 0x08049565 in ?? ()
#13 0x080497dc in AxisException::~AxisException ()
#14 0xb735f768 in __libc_start_main () from /lib/tls/libc.so.6
#15 0x08048f31 in ?? ()

May be I done some thing incorrectly?
Thanks for Your help.
 A.Gusev


On Friday 23 July 2004 11:33, John Hawkins wrote:
> If you are building the code then you can use these patches - >
>
> (See attached file: Channel.cpp.patch)(See attached file:
> Channel.hpp.patch)(See attached file: HttpTransport.cpp.patch)
> We should be able to put them into cvs within the next 6 hours.
>
> cheers,
> John.
>
>
> Hi!
> Thanks.
>
> Exception is below:
>
> #0  0xb7538676 in __cxa_throw () from /usr/lib/libstdc++.so.5
> #1  0xb732684c in AxisTransport::getBytes (this=0x804e4f0,
> pcBuffer=0x8053830
> "", pSize=0xbfff9b5c) at AxisTransport.cpp:246
> #2  0xb756f16d in XMLParserExpat::parseNext (this=0x804fe18) at
> XMLParserExpat.cpp:278
> #3  0xb756efce in XMLParserExpat::next (this=0x804fe18, isCharData=true) at
>
> XMLParserExpat.cpp:182
> #4  0xb75bc88e in SoapDeSerializer::getElementAsString (this=0x804fde0,
> pName=0x8049dcc "getEventsReturn", pNamespace=0x0) at
> SoapDeSerializer.cpp:2275
> #5  0xb75a27f6 in Call::getElementAsString (this=0x804e744, pName=0x8049dcc
>
> "getEventsReturn", pNamespace=0x0) at Call.cpp:359
> #6  0x080495ae in ?? ()
> #7  0x080497dc in AxisException::~AxisException ()
> #8  0xb735f768 in __libc_start_main () from /lib/tls/libc.so.6
> #9  0x08048f31 in ?? ()
>
> And what I need to do in this case?
> Thanks for Your help.
>  A.Gusev
>
> On Thursday 22 July 2004 18:12, John Hawkins wrote:
> > What is the exception you get?
> >
> > If it starts in the Xerces parser and looks kinda like this ->
> >
> > .....
> > #2  0xb725c527 in __cxa_call_unexpected () from /usr/lib/libstdc++.so.5
> > #3  0xb725c574 in std::terminate () from /usr/lib/libstdc++.so.5
> > #4  0xb725c6e6 in __cxa_throw () from /usr/lib/libstdc++.so.5
> > #5  0xb73d5a2e in xercesc_2_2::IGXMLScanner::scanNext ()
> >    from /usr/cwss/PreReqs/libxerces-c.so.22
> > #6  0xb7409dbb in xercesc_2_2::SAX2XMLReaderImpl::parseNext ()
> >    from /usr/cwss/PreReqs/libxerces-c.so.22
> > #7  0xb75675fc in XMLParserXerces::next (this=0x8051910,
>
> isCharData=false)
>
> >     at XMLParserXerces.cpp:91
> > #8  0xb75b4000 in SoapDeSerializer::getEnvelope (this=0x8050b18)
> >     at SoapDeSerializer.cpp:114
> > #9  0xb75b4b00 in SoapDeSerializer::getVersion (this=0x8050b18)
> >     at SoapDeSerializer.cpp:424
> > #10 0xb75949ee in ClientAxisEngine::invoke (this=0x80503f8,
>
> pMsg=0x8050430)
>
> >     at ClientAxisEngine.cpp:168
> > #11 0xb75947a1 in ClientAxisEngine::process (this=0x80503f8,
> > pSoap=0x804ccd0)
> >     at ClientAxisEngine.cpp:92
> > #12 0xb759cfc4 in Call::invoke (this=0x804b3f0) at Call.cpp:105
> >
> >
> > then it could be because of an issue that the code currently has with
>
> long
>
> > reply msgs coming back from the web service. Fred Preston just sent in a
> > fix earlier to day. Which we need a committer to put into the code.
> >
> >
> >
> >
> >
> >
> > John Hawkins
> >
> >
> >
> >
> >
> >              Anton
> >              <anton.gusev@ihep
> >              .ru>
>
> To
>
> >                                        Apache AXIS C User List
> >              22/07/2004 16:23          <axis-c-user@ws.apache.org>
>
> cc
>
> >              Please respond to
>
> Subject
>
> >               "Apache AXIS C           receiving xsd__string
> >                 User List"
> >
> >
> >
> >
> >
> >
> >
> >
> >
> > Hi dear!
> >           I have problem with my ws-client app. For some reasons I can't
> > receive value of xsd__string variable from WS, wich is so long (I don't
> > know
> > critical length value).
> >
> > My code:
> > ======================
> > File    EventManageService.h
> > ======================
> > ..
> > class EventManageService :public Stub
> > {
> > public:
> >         const char* pchDefaultEndpoint;
> > public:
> >         EventManageService(const char* pchEndpointUri,
> >                         AXIS_PROTOCOL_TYPE eProtocol=APTHTTP);
> >         EventManageService();
> > public:
> >         virtual ~EventManageService();
> > public:
> >         void sendEvent(xsd__string Value0);
> >         xsd__string getLatestEvent();
> >         xsd__string getEvents(xsd__string Value0);
> >         int getFaultDetail(char** ppcDetail);
> > };
> > ..
> >
> >
> > ==================
> > File    EMSClient.cpp
> > ==================
> > #include "EventManageService.h"
> > ..
> > int main(int argc, const char* argv[]){
> >
> >         EventManageService *emsFORWORK = initConnect(argc, argv);
> >
> >         if( emsFORWORK == NULL )
> >                 return  -1;
> >         else{
> >                 try{
> >                         emsFORWORK->getLatestEvent(  );
> > ...
> >
> >
> > Ok, I use SOAP-monitor and can see, when WS return long string to me,
> > exception occured, and if string not very long - it's work well.
> >
> > Please Help Me.
> > Thanks in advance.
> > A.Gusev


Mime
View raw message