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

Andreas Veithen commented on AXIS2-4346:
----------------------------------------

I think it is actually both a valid URI and URL. The problem here is actually 
that java.net.URL doesn't recognize jms as a protocol (since there is obviously 
no URL stream handler for JMS).

Anyway, java.net.URL is definitely not the right class to represent an endpoint 
address. We then have two options: use java.net.URI, as you suggest, or just 
plain strings. The rest of the Axis2 API in general uses String to represent 
endpoint URI/URLs, so for consistency we should probably do the same in 
Java2WSDLBuilder.setServiceEPR(), Utils.addSoap12Endpoint(), 
Utils.addSoap11Endpoint() and Utils.addHttpEndpoint().

Note that all this code has been introduced by AXIS2-3523 (r633485). Probably 
we can get away by just changing the types without introducing compatibility 
methods.




> Java2WSDLBuilder.setServiceEPR() and Utils.addSoap11Endpoint() should use URI 
> not URL
> -------------------------------------------------------------------------------------
>
>                 Key: AXIS2-4346
>                 URL: https://issues.apache.org/jira/browse/AXIS2-4346
>             Project: Axis 2.0 (Axis2)
>          Issue Type: Bug
>          Components: wsdl
>    Affects Versions: 1.4
>         Environment: All
>            Reporter: Ben Reif
>            Priority: Minor
>   Original Estimate: 24h
>  Remaining Estimate: 24h
>
> The Java2WSDLBuilder.setServiceEPR(), Utils.addSoap12Endpoint(), and 
> Utils.addSoap11Endpoint() methods should use URI instead of URL. The WSDL 
> specification says that the location attribute for a SOAP address needs to be 
> a URI, not a URL. The existing code causes a MalformedURLException when you 
> are defining a JMS endpoint with certain parameters in the URI value. For 
> example:
> jms:/myMDB.JMSQueue?transport.jms.DestinationType=queue&transport.jms.ConnectionFactoryJNDIName=my.jms.queue.connection.factory&java.naming.factory.initial=weblogic.jndi.WLInitialContextFactory&java.naming.provider.url=t3://localhost:7001
> I don't think it likes the 'jms:/' and also the last value for the 
> java.naming.provider.url parameter
> This is a valid URI, however.

-- 
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