[
https://issues.apache.org/jira/browse/TUSCANY-2900?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12699235#action_12699235
]
Simon Laws commented on TUSCANY-2900:
-------------------------------------
At the moment there is no code in the binding-ws-wsdlgen module to generate the
JMS binding when binding.ws is configured in this way. The code may not be that
hard to generate however I think that the tricky part here is how to make any
generated WSDL available. In order to get at the WSDL through ?wsdl we need an
HTTP endpoint to point at.
If we have:
<service name="HelloWorldService">
<binding.ws uri="jms:..."/>
<binding.ws uri="http://myhost:80/myservice"/>
</service>
Then the OSOA spec does actually say that "A separate WSDL document is
generated for each SCA service" which would imply that you could get
http://myhost:80/myservice?wsdl and expect to find both http and jms bindings
there. I don't believe we do generate a WSDL document that covers all bindings
at the moment though so that would have to be changed it we went that way.
However I don't think this really helps because if we have:
<service name="HelloWorldService">
<binding.ws uri="jms:..."/>
</service>
Then we are are still struck. Also the more recent OASIS spec doesn't seem to
have these words about WSDL being generated for the service so it seems they
are moving away from the service based WSDL.
What we really need is a meta-data exchange protocol for a services but SCA
doesn't say anything about this kind of thing and it's a bit late for that
scale of change in 1.x. Some options.
1 - rely on hand generated WSDL in these cases
2 - create a utility that uses the runtime to dump out all of the
service/bindings WSDL into a directory. To be used manually before the runtime
is started for real.
3 - register a dummy service when the JMS case is in force that simply allows
?wsdl to be called.
Haven't though about these (particularly 2 & 3) in detail but posting this to
see if others have thought about it or have other suggestions.
Simon
> WSDL Generation does not respect all binding.ws entries
> -------------------------------------------------------
>
> Key: TUSCANY-2900
> URL: https://issues.apache.org/jira/browse/TUSCANY-2900
> Project: Tuscany
> Issue Type: Bug
> Components: Java SCA Axis Binding Extension
> Affects Versions: Java-SCA-1.4
> Environment: Linux x86_64 Weblogic 9.2.3 JDK 1.5.0_12
> Reporter: Dave Sowerby
> Fix For: Java-SCA-1.5
>
>
> If I modify the the helloworld-ws-reference-jms's helloworldwsjms.composite
> file so that the service entry is as follows:
> <service name="HelloWorldService">
> <interface.java interface="helloworld.HelloWorldService" />
> <binding.ws
> uri="jms:/queue.sample?transport.jms.ConnectionFactoryJNDIName=QueueConnectionFactory&java.naming.factory.initial=org.apache.activemq.jndi.ActiveMQInitialContextFactory&java.naming.provider.url=tcp://localhost:61619"/>
> <binding.ws />
> </service>
> I find that the generated ?wsdl does not include the binding for the JMS SOAP
> Endpoint - only the new <binding.ws />
> Also, there is no obvious way for accessing the original
> helloworld-ws-reference-jms service's generated WSDL.
--
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.