Woden Eclipse Plug-in Proposal

This proposal is for the creation of a Woden Eclipse plug-in to add functionality to the Eclipse platform. This proposal is related to the Woden OSGi Proposal.

Relation to the Woden OSGi Proposal

The Woden OSGi proposal proposes the creation of a Woden OSGi bundle. Since v3.0, Eclipse has been based on OSGi. The Woden OSGi proposal would create a bundle capable of exposing Woden's functionality for use by Eclipse plug-ins. This proposal is to create an Eclipse plug-in that exposes specific Woden functionality in the Eclipse IDE.

Proposed Functionality

There are three proposed functional additions to the Eclipse IDE by the Woden Eclipse plug-in:

1. WSDL 2.0 validation The Eclipse Web Tools Platform (WTP) project contains a validation framework and a number of validators including a WSDL 1.1 validator. The Woden Eclipse plug-in would provide a WSDL 2.0 validator in the Eclipse IDE by extending the WTP validation framework.

2. WSDL 1.1 to 2.0 conversion Woden's WSDL 1.1 to 2.0 conversion tool would be provided as the context menu item "Convert to WSDL 2.0" for WSDL 1.1 files. The Woden Eclipse plug-in would provide the conversion tool by contributing to the context menu via the Eclipse platform's extension point. *Note: Woden's converter tool is currently out-of-date with respect to the WSDL 2.0 specification and will need to be udpated before being exposed as an end user tool.

3. WSDL 2.0 Pretty Printing Woden's pretty printer would be exposed as the context menu item "Generate WSDL Documentation" for WSDL 2.0 files. The Woden Eclipse plug-in would provide the pretty printer by contributing to the context menu via the Eclipse platform's extension point.

Plug-in Structure

There are three possible structures for this proposal:

1. Bundle all the Eclipse specific functionality in the Woden OSGi bundle and create optional dependencies that will expose the functionality if in the Eclipse IDE. This has the advantage of a single bundle but the drawback that clients wanting to use Woden must expose the Woden Eclipse functionality. The single bundle would probably be
org.apache.woden

2. Create a Woden Plug-in that requires the Woden OSGi bundle. This option separates the Woden Eclipse contributions from the Woden's core bundle. Woden can follow Axis2's example and create a tools download that users can download and install in the Eclipse IDE. The two bundles would likely be
org.apache.woden
org.apache.woden.tools

3. Create separate Woden Plug-ins for each option in the functionality section. This option would require three Eclipse plug-ins and provides users with the ability to install only the functionality they want. However, the size of the code should be very small so installing functionality that won't be used shouldn't be a problem. Menu items can be restricted by using Eclipse's built in capability support as opposed to creating separate plug-ins. The bundles in this case would likely be
org.apache.woden
org.apache.woden.validation
org.apache.woden.conversion
org.apache.woden.prettyprinter

It is recommended to proceed with option 2 and create a Woden OSGi bundle and a Woden Eclipse plug-in (a second OSGi bundle).

Woden Eclipse Plug-in Requirements

Building the Eclipse plug-in will require certain Eclipse plug-ins from the Eclipse platform and WTP on the Woden build path at compile time.

FrontPage/Woden/WodenEclipse (last edited 2009-09-20 22:49:06 by localhost)