Hello Dimuthu,

I read the reference and think to understand it better now. As it works for me it is no problem to fix the request uri.

I also monitored the SOAP messages sent (the only difference is the request uri):

POST /axis2/services/DAQStatus/getStatus HTTP/1.1
Content-Type: application/soap+xml; charset=UTF-8; action="urn:getStatus"
User-Agent: Axis2
Host: 192.168.12.100:9090
Transfer-Encoding: chunked

93
<?xml version='1.0' encoding='UTF-8'?><soapenv:Envelope xmlns:soapenv="http://www.w3.org/2003/05/soap-envelope";><soapenv:Body /></soapenv:Envelope>
0

If I understand everything right the SOAP-Action (action="urn:getStatus") is sent but not working in the axis2c server. But I don't see WS-Addressing in the request - must it not be in the soapenv? So have I done something wrong by generating the stubs? I used the:

$AXIS2_HOME/bin/wsdl2java.sh -uri DAQStatus.wsdl -u

command.

Regards Michael

Dimuthu Gamage wrote:
Hi Michael,

Please see the inline comments,

On Dec 17, 2007 4:30 PM, Michael Sutter <[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>> wrote:

    Hello Dimuthu,

    thanks for your help. I've done what you said, installed the SVN
    version
    and tested your client. Everything worked fine.

    But normally I want to access the service with a Java client. So I
    implemented a client using the generated stubs from the Java snapshot
    version from Friday. When accessing the service I also get the
    Operation
    Not Found exception. So I tried what you said in your last mail and
    added the method name to the endpoint.
    So everything worked fine.

    Is this a new requirement for accessing service with Java client?


No it should not be. The thing is there are 4 dispatching methods in axis2. (both c and java), Check the reference[1]

HTTP request uri (this is what I suggested last mail)
SOAPAction (sent with http headers, Java codegen generated code for java is default set to this) QName of the first child of SOAP Body element (Well, your request doesn't have anything in soap body, so invalid in your case) WS-Addressing (In generated code for c set the address to the same name as SOAPAction)

I think in axis2-c 1.1 both WS-Addressing and SOAPAction in soap 1.2 dispatching is not working. Now WS-Addressing is fixed but SOAPAction for soap 1.2 is not working at least in the generated code. (Please someone correct me if I m wrong)

So since java client is not sending ws-addressing information, the only working way to dispatch the soap body is uri dispatching which I suggest you in the last mail.


Thanks,
Dimuthu


[1] http://wso2.org/library/176

    Regards Michael

    Dimuthu Gamage wrote:
    > Hi,
    > In addition to the above suggestion, you may able to use
    > http://your_host_name/axis2/services/DAQStatus/getStatus
    <http://your_host_name/axis2/services/DAQStatus/getStatus> as your
    > endpoint. I.e. service name followed by the operation name.
    >
    > Thanks
    > Dimuthu
    >
    >
    > On Dec 14, 2007 10:45 PM, Dimuthu Gamage < [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    > <mailto:[EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>>> wrote:
    >
    >     Hi Michael,
    >     I tested your wsdl with the generated code from latest svn(The
    >     today's snapshot would be the same) and axis2/c svn, and it
    worked.
    >     I have attached the worked stub and skel here.
    >
    >     There were some improvements in the generated services.xml
    (adding
    >     wsamapping parameter which identify the operation even if the
    >     request node is empty as your case), but that should work even
    >     with axis2/c 1.1 in theory. But IIRC there was a bug in action
    >     dispatching code sometime ago. May be that was also in the
    axis2/c 1.1
    >
    >     So first please test the attached stub and skel which worked
    in my
    >     computer with the latest axis2/c svn. If it is too not
    working in
    >     your computer, better move to latest svn, or to axis2/c 1.2,
    most
    >     probably to be released by next week
    >
    >     Thanks
    >     Dimuthu
    >
    >
    >
    >     On Dec 14, 2007 9:47 PM, Michael Sutter <
    [EMAIL PROTECTED] <mailto:[EMAIL PROTECTED]>
    >     <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>> wrote:
    >
    >         Hello list,
    >
    >         I have a problem with a generated service. My service
    has no input
    >         parameter and several output parameters. After implementing
    >         the service
    >         I always get the error message: Operation Not Found. So I
    >         searched
    >         through the generated code and found, that in the
    svc_skel of
    >         my service
    >         it is searched for the right function of my service but
    it is
    >         not called
    >         in the invoke function:
    >
    >         if (op_name)
    >                  {
    >                        if ( axutil_strcmp(op_name, "getStatus")
    == 0 )
    >                        {
    >
    >                        }
    >                     }
    >
    >         If I understand right the error belongs to the code
    generation
    >         - am I
    >         right? If this is so I think it is a bug - what has to
    be done
    >         to fix
    >         it? For code generation I firstly used a snapshot of AXIS2
    >         from some
    >         weeks ago. After detecting the error I also used a snapshot
    >         from today.
    >         There is the needed code in the svc_skel, but the error
    >         message is the
    >         same. Maybe I'm doing something wrong? Btw I found that the
    >         generated
    >         code from the actual version contains much more
    functions and the
    >         service.xml has different content - maybe it is not possible
    >         to host
    >         such a service in a AXIS2C 1.1 server?
    >
    >         Attached is the WSDL and the code generated from the
    snapshot
    >         version
    >         some weeks ago.
    >
    >         Regards Michael
    >
> ---------------------------------------------------------------------
    >         To unsubscribe, e-mail:
    [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >         <mailto:[EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >         For additional commands, e-mail:
    >         [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    >         <mailto: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>>
    >
    >
    >

    ---------------------------------------------------------------------
    To unsubscribe, e-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>
    For additional commands, e-mail: [EMAIL PROTECTED]
    <mailto:[EMAIL PROTECTED]>



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to