axis-java-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Joe Johannsen <>
Subject RE: REPOST - RE: calling gSoap server from Axis client - "method not implemented" error
Date Wed, 26 Feb 2003 17:25:42 GMT
Thanks, Mike and Roy! This worked like a charm, and can see it all with 
tcpmon. I'm not sure how you could tell from the source code I provided 
that "urn:MagicSquare" was the namespace....

Can someone point me in the right direction as far as passing values? I'm 
trying to pass an int to the gSoap WS but haven't figured out how to do 
that with Axis - only strings.

-- Joe

At 12:25 PM 2/21/2003 -0500, Mike Burati wrote:
>QName is simply a holder for qualified names (local name plus namespace URI).
>I don't know anything about gSoap and have never used it, but a quick 
>glance of their sample source for the magic server, leads me to believe 
>that the namespace URI that they're using for the "magic" method 
>is  "urn:MagicSquare" , not 
>"<>" which you were trying to 
>use below.
>             call.setOperationName(new QName("urn:MagicSquare", "magic"));
>-----Original Message-----
>From: Joe Johannsen []
>Sent: Friday, February 21, 2003 10:37 AM
>Subject: REPOST - RE: calling gSoap server from Axis client - "method not 
>implemented" error
>Didn't get any suggestions on this so thought I'd ping one more time. Does 
>gSoap work well with Axis? What are some debugging tips for me? Where can 
>I read about QName()?
>At 01:10 PM 2/19/2003 -0800, Joe Johannsen wrote:
>>What I meant is I'm calling a web service called magic on my test server. 
>>The method name is magic ... this is one of the gSoap examples; here's 
>>the gSoap sample client C++ code snippet:
>>const char magicserver[] = "";
>>   matrix *A = soap_new_matrix(&soap, -1);
>>   r = rand()%20;
>>   if (soap_call_ns1__magic(&soap, magicserver, NULL, r, A))....
>>I could understand if I got an error about the parameters, as I think I 
>>need to be accepting a return value that's a matrix, not a string. But 
>>the error "method not implemented" seems to indicate it's not finding it 
>>at all. Could it be that the method signature is different because I have 
>>the i/o params wrong?
>>At 03:47 PM 2/19/2003 -0500, Mike Burati wrote:
>>>Your email description says you're calling a "server" named magic, but 
>>>in the code you set the service operation name (eg, RPC method name) to 
>>>"magic".  Are you sure that operation shouldn't be something like:
>>>            call.setOperationName(new QName("", 
>>> "echoString"));
>>>-----Original Message-----
>>>From: Joe Johannsen []
>>>Sent: Wednesday, February 19, 2003 3:37 PM
>>>Subject: calling gSoap server from Axis client - "method not 
>>>implemented" error
>>>I've looked thru archives and see quite a few questions about 
>>>compatibility with gSoap and not too many answers to the questions. I am 
>>>using Axis 1.1 RC 1 and gSoap 2.2.2, trying to call the example gSoap 
>>>server named "magic" from vanilla java code (below). I have verified the 
>>>server responds using a gSoap client, but cannot get my Axis client to 
>>>work with it. The error I get back is "Method 'ns1:magic' not implemented".
>>>1. How compatible are Axis and gSoap?
>>>2. why doesn't it work? How can I look more deeply at this problem?
>>>3. As a newbie to Axis I could also use tips on where I can read 
>>>something in detail on QName() - I don't have an understanding of what 
>>>that is doing or why is referenced there.
>>>import org.apache.axis.client.Call;
>>>import org.apache.axis.client.Service;
>>>import javax.xml.namespace.QName;
>>>public class TestClient {
>>>    public static void main(String [] args) {
>>>        try {
>>>            String endpoint =
>>>                     "";
>>>            Service  service = new Service();
>>>            Call     call    = (Call) service.createCall();
>>>            call.setTargetEndpointAddress( new );
>>>            call.setOperationName(new QName("", 
>>> "magic"));
>>>            String ret = (String) call.invoke( new Object[] { "4" } );
>>>            System.out.println("Sent '4', got '" + ret + "'");
>>>        } catch (Exception e) {
>>>            System.err.println(e.toString());
>>>        }
>>>    }

View raw message