[ http://issues.apache.org/jira/browse/AXIS2-1381?page=comments#action_12444151 ] Brennan Spies commented on AXIS2-1381: --------------------------------------
I wouldn't mind supplying a patch to do this myself, if no one there has the bandwidth to do so. A) There are essentially two approaches for creating the stub default endpoint: 1. Treat the jms:address as an UnknownExtensibilityElement, and manually parse the required elements to build the endpoint string. 2. Use the JMS extensions for WSIF. Add an "else if" block to copyExtensibleElements in WSDL11ToAxisServiceBuilder so that if the element is an instanceof JMSAddress, it then constructs an endpoint string using calls to JMSAddress. This approach involves some slight modifications to the existing JMS extensions code in WSIF; this could then be packaged a jar. Either way, the endpoint URL string would be set on the AxisService via setEndpoint(). The second approach seems much better/robust since it can be then used when "writing out" the new WSDL files that are generated under /resources. B) To add the appropriate elements to the services.xml: 1. The generated XML (prior to XSL processing) inside the AxisServiceBasedMultiLanguageEmitter.getServiceElement() would be altered to add the appropriate properties (destination and connection factory), probably as attributes on the <interface>. 2. The jms:address would then be retrieved from axisService field via getParameter(WSDLConstants.WSDL_4_J_DEFINITION), etc. in order to get the properties to add. 3. The ServiceXMLTemplate.xsl would then have to be altered so that it added these two as <property> elements (commented out so that user can uncomment them?), and the <transports> block as well. BTW, JMS is not necessarily Java-specific. This depends on the vendor. Tibco EMS, for example, has client bindings for C/C++ and .NET. So does ActiveMQ. Thoughts? > Need to enhance code generation from WSDL to support JMS extensions > ------------------------------------------------------------------- > > Key: AXIS2-1381 > URL: http://issues.apache.org/jira/browse/AXIS2-1381 > Project: Apache Axis 2.0 (Axis2) > Issue Type: New Feature > Components: codegen > Affects Versions: 1.1 > Environment: All > Reporter: Brennan Spies > Assigned To: Davanum Srinivas > Attachments: files.zip > > > Currently, there is no support for JMS WSDL extensions in Axis 2.0. Code > generation for a WSDL service with JMS bindings succeeds, but the client stub > is missing a default JMS endpoint reference, and transport elements and > appropriate properties from <jms:address> should be placed into the generated > services.xml file. > To do this, the appropriate extension elements for JMS in the WSDL must be > recognized. This requires adding them to WSDL4J's extensibility mechanism. > The appropriate implementations already exist in the Apache WSIF project: > http://ws.apache.org/wsif/providers/wsdl_extensions/jms_extension.html. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
