axis-c-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Michael Kenrich" <Michael.Kenr...@pss-systems.com>
Subject Axis C++ to Axis Java Interoperability?
Date Thu, 13 May 2004 15:28:18 GMT
I would like to have a Axis C++ client working with an Axis Java server
(JBoss).

Q: Does anyone have this scenario working? 

I have the calculator web service installed on JBoss 3.2.3(config=all)
which includes Axis (Java) 1.1. I can hit this web service using an Axis
Java client just fine but when I try an Axis C++ client I get the
following:

C:\axis-c-1-1-1-win32\bin>calcclient
execution break
m_MsgSize == 0, so return NULL
execution break
m_MsgSize == 0, so return NULL
add(123,456) = -1execution break
m_MsgSize == 0, so return NULL
sub(456,123) = -1execution break
m_MsgSize == 0, so return NULL
mul(123,456) = -1execution break
m_MsgSize == 0, so return NULL
div(333,111) = -1

I found the relevant code in Channel.cpp (see below) and it seems the
receive on the socket is returning zero bytes but not an error per se.

I will of course try to debug this further but I would love to hear from
someone that is going cross-platform like this.

Thanks for any feedback on this!

Mike Kenrich
mike@kenrich.com

C:\axis-c-src-1-1-1-win32\src\transport\axis\Channel.cpp(242): 

        if ((nByteRecv = recv(m_Sock, (char *) &buf, BUF_SIZE - 1, 0)) 
        == SOCKET_ERROR)
        {
            perror("recv SOCKET_ERROR");
                Error("Channel error while getting data.");
                /* CloseChannel(); */
                return *this;
                /* throw ChannelException("Input streaming error on
Channel " \
                 * "while getting data"); 
                 */
    }
        if(nByteRecv)
        {
        /* printf("nByteRecv:%d\n", nByteRecv); */
                buf[nByteRecv] = '\0';  
                /* got a part of the message, so add " \        "to form
*/
                msg = buf;
                /* printf("buf:%s\n", buf); */
    }
        else
            printf("execution break\n");




Mime
View raw message