[ 
https://issues.apache.org/jira/browse/AXIS2-4479?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Isuru Eranga Suriarachchi updated AXIS2-4479:
---------------------------------------------

    Attachment: hierarchical_dispatching.patch

This new patch contains the changes to support '/' character in the service 
name to indicate the service hierarchy. I've removed the previously used '!' 
character and used the algorithm discussed in the mail thread to support '/' 
character which is the natural way of indicating the hierarchy.

In addition to that, I've added dispatching tests to cover all the scenarios of 
incoming request URLs.

> Supporting hierarchical service deployment in Axis2
> ---------------------------------------------------
>
>                 Key: AXIS2-4479
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4479
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Improvement
>          Components: deployment
>            Reporter: Isuru Eranga Suriarachchi
>            Assignee: Isuru Eranga Suriarachchi
>         Attachments: hierarchical_deployment.patch, 
> hierarchical_deployment_special_char.patch, hierarchical_dispatching.patch
>
>
> Currently Axis2 can only deploy services at the repository/services level. 
> This makes it impossible to deploy several versions of the same service.
> Therefore, I've improved our deployment engine to deploy services by looking 
> at the hierarchical path of the service. For example this allows us to deploy 
> a service repository/services/foo/bar/version.aar. And also this allows us to 
> deploy any number of services as follows.
> repository/services/versionService/1.0.0/version.aar
> repository/services/versionService/1.0.1/version.aar
> In the implementation, I've attached the hierarchical part of the service 
> (versionService/1.0.1/) in front of the service name which is read from the 
> services.xml. And also I've fixed the URI based dispatching logics to 
> dispatch the services correctly.
> This improvement doesn't affect any of the existing functionalities. The only 
> limitation of this is we can't deploy a RESTful service in this manner. Those 
> can only be supported at repository/service level. That is because, incoming 
> URL of a RESTful service can contain '/' separated parameters to the service.
> I'm attaching the patch with this.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to