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

Reply via email to