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 "Shameera Rathnayaka (JIRA)" <ji...@apache.org> on 2013/08/10 17:53:48 UTC

[jira] [Commented] (AXIS2-5602) RequestURIBasedServiceDispatcher#findService is returning wrong axis service

    [ https://issues.apache.org/jira/browse/AXIS2-5602?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13735952#comment-13735952 ] 

Shameera Rathnayaka commented on AXIS2-5602:
--------------------------------------------

Hi Jayant,

Not only the service, endpoint may have operation name as well after the service name (see org.apache.axis2.dispatchers.RequestURIBasedOperationDispatcher) . With your patch operation name also set as part of service name.  

Thanks, 
Shameera.
                
> RequestURIBasedServiceDispatcher#findService is returning wrong axis service
> ----------------------------------------------------------------------------
>
>                 Key: AXIS2-5602
>                 URL: https://issues.apache.org/jira/browse/AXIS2-5602
>             Project: Axis2
>          Issue Type: Bug
>    Affects Versions: 1.6.2
>            Reporter: Jayant Vaish
>            Priority: Blocker
>         Attachments: AXIS_5602.patch
>
>
> I am having two services deployed on axis2-1.6.2 having following axisServiceName:
> 1. Service1/Start/WFmagic_cksXMrobEd2Fe4Kb1Aqw9Q
> 2. Service1/Start
> Passing messageContext in org.apache.axis2.dispatchers.RequestURIBasedServiceDispatcher.findService(MessageContext) 
> has following epr address:
>  
> EndpointReference toEPR = messageContext.getTo();
> toEPR.getAddress() is 
> http://localhost:8080/axis2/services/Service1/Start/WFmagic_cksXMrobEd2Fe4Kb1Aqw9Q
> So, expected axis service returned by org.apache.axis2.dispatchers.RequestURIBasedServiceDispatcher.findService(MessageContext)
> should be : "Service1/Start/WFmagic_cksXMrobEd2Fe4Kb1Aqw9Q"
> But I am getting "Service1/Start" which is wrong !!!
> Further looking into the code found the following snippet which seems to be the culprit:
> org.apache.axis2.dispatchers.RequestURIBasedServiceDispatcher.java
>               while (axisService == null && count < parts.length &&
>                         count < Constants.MAX_HIERARCHICAL_DEPTH) {
>                     serviceName = count == 0 ? serviceName + parts[count] :
>                             serviceName + "/" + parts[count];
>                     axisService = registry.getService(serviceName);
>                     count++;
>                 }

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: java-dev-unsubscribe@axis.apache.org
For additional commands, e-mail: java-dev-help@axis.apache.org