You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by HaoRan Zheng <hr...@gmail.com> on 2005/08/11 11:12:24 UTC

[AXIS2] What is the motivation to introduce provider-per-operation in axis2?

Hi, dear devs,

In Axis 1.x, there is only one provider that can be specified for each
service, which means all the operations in a service must use a common
provider. However, in Axis2, it is allowed to specify different
provider(MessageReceiver) for each operation. I just cannot see the
benefits of this design. IMHO, it seems to be more flexible than axis
1.x, but it also makes thing complex.
Can any one give me some reason or related scenario for this design?
Thanks very much:)

Regards, 
HaoRan Zheng

RE: [AXIS2] What is the motivation to introduce provider-per-operation in axis2?

Posted by Eran Chinthaka <ch...@opensource.lk>.

> 
> Hi, dear devs,
> 
> In Axis 1.x, there is only one provider that can be specified for each
> service, which means all the operations in a service must use a common
> provider. However, in Axis2, it is allowed to specify different
> provider(MessageReceiver) for each operation. I just cannot see the
> benefits of this design. 

The reason behind this is to support custom MEPs. Axis 1.x can handle only
IN OUT meps, so you could use simple provider. But we extend this
functionality by making enough room to support custom MEPs. 

MessageReceiver will handle the message pattern depending on the MEP
provided in the WSDL.

But this will not hinder one from using the same provider for the one
particular MEP. If you are a request-response fan, just go ahead and use the
InOutMessageReceiver.



> IMHO, it seems to be more flexible than axis
> 1.x, but it also makes thing complex.

I do agree that this is bit complex for a light user, but we have not made
the simplest case complex.

-- Chinthaka

> Can any one give me some reason or related scenario for this design?
> Thanks very much:)
> 
> Regards,
> HaoRan Zheng