Sorry to bump this topic again....
I understand there can be multiple operations at one endpoint. Is there a
way to seperate the calls to a different library
Services file from Calculator:
<service name="Calculator">
<parameter name="ServiceClass" locked="xsd:false">Calculator</parameter>
<description>
This is a testing service, named 'Calculator' to test dynamic client
</description>
<operation name="add">
<!--messageReceiver class="axis2_receivers" /-->
<parameter name="wsamapping" >Calculator#add</parameter>
</operation>
<operation name="sub">
<!--messageReceiver class="axis2_receivers" /-->
<parameter name="wsamapping" >Calculator#sub</parameter>
</operation>
</service>
Above example separates out the calls at the invoke function based on an
element. Can the call be re-directed to a different library by the
dispatchers themselves ? (i.e. prevent parsing message to find out which
operation was requested) PS : I am dealing with a Non WS* compliant entity.
What is the significance of messageReceiver ?
Thanks!
On Wed, Oct 6, 2010 at 5:04 PM, Rico M <[email protected]> wrote:
> Oh Boy! How did i miss that :)
>
> Thanks damitha :))
>
>
> On Wed, Oct 6, 2010 at 1:59 PM, Damitha Kumarage <[email protected]> wrote:
>
>> Hi Rico,
>> If you look at the following two lines in the log you sent, you will get
>> the answer.
>>
>>
>> [Wed Oct 6 11:45:52 2010] [debug] soap_body_disp.c(115) Checking for
>> service using SOAP message body's first child's namespace URI :
>> http://ws.apache.org/axis2/services/math
>> [Wed Oct 6 11:45:52 2010] [debug] soap_body_disp.c(138) Service found
>> using SOAP messagebody's first child's namespace URI
>>
>> Damitha
>>
>> Rico M wrote:
>>
>>> Thanks damitha,
>>> That does help me get an idea. I was changing the configuration to
>>> understand how the invocation works. I am working with one of the examples
>>> packaged with axis2 kit - Math.
>>>
>>> I cannot understand the following. axis_install_dir/math/services.xml has
>>> the following entry :
>>>
>>> <service name="math">
>>> <parameter name="ServiceClass" locked="xsd:false">math</parameter>
>>> <description>
>>> This is a testing service, named 'math' to test multiple
>>> operations in the same service
>>> </description>
>>> <operation name="add">
>>> <!--messageReceiver class="axis2_receivers" /-->
>>> </operation>
>>> <operation name="sub">
>>> <!--messageReceiver class="axis2_receivers" /-->
>>> </operation>
>>> <operation name="mul">
>>> <!--messageReceiver class="axis2_receivers" /-->
>>> </operation>
>>> <operation name="div">
>>> <!--messageReceiver class="axis2_receivers" /-->
>>> </operation>
>>> </service>
>>>
>>>
>>> I understand that the service is invoked with the following EPR : address
>>> = "http://localhost:9090/axis2/services/math";
>>>
>>> Now if i change the following to anything... in my client.....
>>> math_client.c
>>>
>>> "http://localhost:9090/axis2/services/ccccccccHTNGmathia";
>>>
>>> The invocation is still successful ! I am not sure about this , am i
>>> missing something ??
>>>
>>> [Wed Oct 6 11:45:52 2010] [debug] apache2_worker.c(241)
>>> http://localhost:9090/axis2/services/ccccccccHTNGmathia
>>> [Wed Oct 6 11:45:52 2010] [debug] apache2_worker.c(299) Client HTTP
>>> version HTTP/1.1
>>> [Wed Oct 6 11:45:52 2010] [debug] soap_builder.c(894) identified soap
>>> version is soap12
>>> [Wed Oct 6 11:45:52 2010] [debug] phase.c(202) Invoke the handler
>>> request_uri_based_dispatcher within the phase Transport
>>> [Wed Oct 6 11:45:52 2010] [debug] req_uri_disp.c(97) Checking for
>>> service using target endpoint address :
>>> http://localhost:9090/axis2/services/ccccccccHTNGmathia
>>> [Wed Oct 6 11:45:52 2010] [debug] phase.c(202) Invoke the handler
>>> addressing_based_dispatcher within the phase Transport
>>> [Wed Oct 6 11:45:52 2010] [debug] addr_disp.c(103) Checking for service
>>> using WSA enpoint address :
>>> http://localhost:9090/axis2/services/ccccccccHTNGmathia
>>> [Wed Oct 6 11:45:52 2010] [debug] phase.c(202) Invoke the handler
>>> rest_dispatcher within the phase Dispatch
>>> [Wed Oct 6 11:45:52 2010] [debug] phase.c(202) Invoke the handler
>>> soap_message_body_based_dispatcher within the phase Dispatch
>>> [Wed Oct 6 11:45:52 2010] [debug] soap_body_disp.c(115) Checking for
>>> service using SOAP message body's first child's namespace URI :
>>> http://ws.apache.org/axis2/services/math
>>> [Wed Oct 6 11:45:52 2010] [debug] soap_body_disp.c(138) Service found
>>> using SOAP messagebody's first child's namespace URI
>>> [Wed Oct 6 11:45:52 2010] [debug] soap_body_disp.c(200) Checking for
>>> operation using SOAP messagebody's first child's local name : add
>>> [Wed Oct 6 11:45:52 2010] [debug] soap_body_disp.c(207) Operation found
>>> using SOAP message body's first child's local name
>>> [Wed Oct 6 11:45:52 2010] [debug] phase.c(202) Invoke the handler
>>> soap_action_based_dispatcher within the phase Dispatch
>>> [Wed Oct 6 11:45:52 2010] [debug] phase.c(202) Invoke the handler
>>> dispatch_post_conditions_evaluator within the phase PostDispatch
>>> [Wed Oct 6 11:45:52 2010] [debug] phase.c(202) Invoke the handler
>>> context_handler within the phase PostDispatch
>>> [Wed Oct 6 11:45:52 2010] [warning] msg_ctx.c(1384) session-table not
>>> set in message context
>>>
>>> Thanks & Regards!
>>>
>>>
>>> On Wed, Sep 29, 2010 at 2:03 AM, Damitha Kumarage <[email protected]<mailto:
>>> [email protected]>> wrote:
>>>
>>> Does this answer [1] and [2] your question?
>>> Thanks,
>>> Damitha
>>>
>>> [1] http://wso2.org/library/176
>>> [2]
>>>
>>> http://damithakumarage.wordpress.com/2008/02/12/soap-action-and-addressing-action/
>>>
>>> Rico M wrote:
>>>
>>> Hi,
>>>
>>> I wanted to understand how endpoints & soap action are used to
>>> call a
>>> web service in axis2c. For ex: I am reaching an endpoint :
>>> http://abc.org and calling the soapAction :
>>> http://mno.org/ServiceA.
>>> How can the following be configured in my webserver ? All current
>>> calls I am making are via a endpoint url which doubles for
>>> both action
>>> & endpoint URL : http://localhost:90/services/hello.
>>>
>>> <service name="hello">
>>> <parameter name="ServiceClass"
>>> locked="xsd:false">hello</parameter>
>>> <description>
>>> Quick start guide hello service sample.
>>> </description>
>>> <operation name="greet"/>
>>> </service>
>>>
>>>
>>> Cheers!
>>>
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [email protected]
>>> <mailto:[email protected]>
>>>
>>> For additional commands, e-mail: [email protected]
>>> <mailto:[email protected]>
>>>
>>>
>>>
>>>
>>>
>>>
>>> --
>>> __________________________________________________________________
>>>
>>> Damitha Kumarage
>>> Technical Lead; WSO2 Inc.
>>> "Oxygenating the Web Service Platform; " http://www.wso2.com/
>>>
>>> blog: " http://damithakumarage.wordpress.com/
>>> __________________________________________________________________
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [email protected]
>>> <mailto:[email protected]>
>>>
>>> For additional commands, e-mail: [email protected]
>>> <mailto:[email protected]>
>>>
>>>
>>>
>>
>> --
>> __________________________________________________________________
>>
>> Damitha Kumarage
>> Technical Lead; WSO2 Inc.
>> "Oxygenating the Web Service Platform; " http://www.wso2.com/
>>
>> blog: " http://damithakumarage.wordpress.com/
>> __________________________________________________________________
>>
>> ---------------------------------------------------------------------
>> To unsubscribe, e-mail: [email protected]
>> For additional commands, e-mail: [email protected]
>>
>>
>