You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tuscany.apache.org by "Vamsavardhana Reddy (JIRA)" <tu...@ws.apache.org> on 2008/04/18 08:35:29 UTC

[jira] Commented: (TUSCANY-2218) Endpoint URI resolution precedence for binding.ws reference is incorrect

    [ https://issues.apache.org/jira/browse/TUSCANY-2218?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12590303#action_12590303 ] 

Vamsavardhana Reddy commented on TUSCANY-2218:
----------------------------------------------

Fixed in rev 649069.

> Endpoint URI resolution precedence for binding.ws reference is incorrect
> ------------------------------------------------------------------------
>
>                 Key: TUSCANY-2218
>                 URL: https://issues.apache.org/jira/browse/TUSCANY-2218
>             Project: Tuscany
>          Issue Type: Bug
>    Affects Versions: Java-SCA-1.0
>            Reporter: Lou Amodeo
>             Fix For: Java-SCA-Next
>
>         Attachments: TUSCANY-2218-testcase.patch, TUSCANY-2218.patch
>
>
> I believe the order of Endpoint URI resolution precedence is incorrect for binding.ws references.   What I am seeing is that the uri attribute is taking precedence over the location specified in the WSDL.  The spec indicates that the endpoint in the WSDL should take highest precedence.   
> Web Service Binding Spec....
> 2.1.1 Endpoint URI resolution
> 71 The rules for resolving the URI at which an SCA service is hosted, or SCA reference targets,
> 72 when used with binding.ws (in precedence order) are:
> 73 1. The URIs in the endpoint(s) of the referenced WSDL
> 74 or
> 75 The URI specified by the wsa:Address element of the wsa:EndpointReference,
> 76 2. The explicitly stated URI in the "uri" attribute of the binding.ws element, which may be
> 77 relative,
> 78 3. The implicit URI as defined by the Assembly specification
> In Axis2ServiceClient getPortLocation looks for uri first and returns it ahead of wsdl location if present. 
>  protected EndpointReference getPortLocationEPR(WebServiceBinding binding) {
>     	
>         String ep = binding.getURI();  WAS specific
>         if (ep == null && binding.getPort() != null) {
>             List<?> wsdlPortExtensions = binding.getPort().getExtensibilityElements();
>             for (final Object extension : wsdlPortExtensions) {
>                 if (extension instanceof SOAPAddress) {
>                     ep = ((SOAPAddress)extension).getLocationURI();
>                     break;
>                 }
>                 if (extension instanceof SOAP12Address) {
>                     SOAP12Address address = (SOAP12Address)extension;
>                     ep = address.getLocationURI();
>                     break;
>                 }
>             }
>         }
>         return ep == null || "".equals(ep) ? null : new EndpointReference(ep);
>     }

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


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