The project has been created. Please visit the project page.

eclipse web tools platform project


This project proposal is in the Proposal Phase and is posted here to solicit additional project participation and ways the project can be leveraged from the Eclipse membership-at-large. You are invited to comment on and/or join the project. Please send all feedback to the eclipse.webtools newsgroup or the wtp-proposal mailing list.

Project Organization

The Eclipse Web Tools Platform Project is an open source project of eclipse.org, overseen by a Project Management Committee (PMC) and project leaders. The PMC Planning Council coordinates identified resources of the project against a Project Development Plan. The work is done in subprojects working against a CVS repository*. The Eclipse Web Tools Platform Project Charter describes the organization of the project, roles and responsibilities of the participants, and top-level development process for the project. Frequently asked questions and corresponding answers may be found in the Project FAQ page.

Project Principles

Among the key principles on which this project has been initiated, and will be run, are the following:

Extension of the Eclipse value proposition The Eclipse Project has set a high standard for technical excellence, functional innovation and overall extensibility within the Java IDE domain. We intend to apply these same standards to the Web/J2EE application-tooling domain.

Vendor ecosystem A major goal of this project is to support a vital application development tools market. Its exemplary functionality will be useful on its own but it will be designed from the start to be extensible so commercial vendors can use what this project delivers as a foundation for their own product innovation and development efficiency.

Vendor neutrality Vendor neutrality will be at the core of this project. We aim to encourage Eclipse participation and drive Eclipse market acceptance by strengthening the long-term product value propositions of the widest possible range of application development vendors.

Standards-based innovation This project will deliver an extensible, standards-based tooling foundation on which the widest possible range of vendors can create value-added development products for their customers and end-users. Where standards exist, we will adhere to them. At least, at first, where standards are emerging, we will wait for them to emerge; this can be re-evaluated later according to user needs and contributor availability. Where multiple technologies are widely used for a given functional need, we will attempt to support each, subject only to technical feasibility and our goal of providing the most capable and extensible foundation long term.

Agile development Our aim is to incorporate into our planning process the innovations that arise once a project is underway, and the feedback from our user community on our achievements to date. We think an agile development and planning process, in which progress is incremental, near-term deliverables are focused, and long-term planning is flexible, will be the best way to achieve this.

Inclusiveness & diversity We aim to assimilate the best ideas from the largest number of participants representing the needs of the widest range of end-users. So we will encourage organizations across a broad range of technical, market and geographical domains to participate in this project.

Project Scope

The Eclipse Web Tools Platform Project will initially focus on infrastructure for tools used to build applications for standards-based Web and Java runtime environments. (See diagram for illustration.) Outside the project's scope, at least at first, will be support for vendor-specific application architectures, such as ASP.Net and ColdFusion, or for extensions not backed by the JCP, such as Apache Struts. This can be re-evaluated later according to user needs and contributor availability and may lead to the creation of a new subproject.


TheEclipseWebToolsPlatformProjectHomePage/subprojects.gif

The project will be further limited to providing infrastructure for tooling proper, in contrast to infrastructure related to the application run-time. We will typically use a simple litmus test to set the boundary between tooling and run-time. Application artifacts, once developed, have no execution dependencies on the relevant tooling framework, while the converse would be true for run-time frameworks. In keeping with our objective of maximizing vendor-neutrality, where multiple frameworks exist in the market for a given functional domain, we will attempt to develop tooling based on a common abstraction (or superset) to the extent feasible.

The ultimate objective of the project is to support tooling that allows developers to produce applications providing a high degree of extensibility and reuse with increasing development efficiency. The tooling foundation the project will deliver will support these values by enforcing appropriate separations of concern in application architecture, raising the level of technical abstraction in application development and enabling repeatability in development processes. These values, however, will be achieved incrementally over time. Early deliverables will focus on an extensible foundation supporting the most widely used Web and Java standards and technologies.

In addition, we expect the Web Tools Platform Project to produce functional requirements that are more appropriately satisfied through the Eclipse Project or other Eclipse foundational subprojects. Areas in which we might expect to see these elaborated requirements would be in working with components, or supporting complex project layouts. In such case, the Web Tools Platform Project PMC will coordinate the corresponding Project PMCs the design and implementation of the corresponding contribution.

Subprojects

Web Standard Tools*

The Web Standard Tools subproject aims to provide common infrastructure available to any Eclipse-based development environment targeting Web-enabled applications. Within scope will be tools for the development of three-tier (presentation, business and data logic) and server publication of corresponding system artifacts. Outside scope will be language or web framework specific technology, which will be left to other subprojects like the J2EE Web Tools subproject.

Tools provided will include editors, validators and document generators for artifacts developed in a wide range of standard languages (for example, HTML/xHMTL, Web services, XQueries, SQL, etc.) Supporting infrastructure will likely comprise a specialized workbench supporting actions such as publish, run, start and stop of Web application code across target server environments.

As an integrated set of capabilities, the Web Standard Tools would support use cases such as "- Develop and publish a static HTML site, - Deploy an applet on a given http server, - Develop and publish a WSDL schema on a UDDI registry".

Read more on the Web Standard Tools subproject

J2EE Standard Tools*

The initial scope of the J2EE Standard Tools subproject will be to provide a basic Eclipse plug-in for developing applications based on J2EE 1.4 targeting J2EE-compliant application servers, as well as a generic J2EE tooling infrastructure for other Eclipse-based development products.

Within scope will be a workbench providing a framework for developing, deploying, testing and debugging J2EE applications on JCP-compliant server environments, as well as an exemplary implementation of a plug-in for at least one JSR-88 compliant J2EE Server. Included will be a range of tools simplifying development with J2EE APIs including EJB, Servlet, JSP, JCA, JDBC, JTA, JMS, JMX, JNDI, and Web Services. This infrastructure will be architected for extensibility for higher-level development constructs providing architectural separations of concern and technical abstraction above the level of the J2EE specifications

The integrated workbench to be delivered would support use cases such as " - Develop a JSP page, Enhance the "PetStore" blue-print application, Expose a Session Bean as a Web Service".

Read more on the J2EE Standard Tools subproject

* Suggestions for alternative subproject names are very welcome and should be made on the WTP forum

Project Documentation

General Resources

Planning and Activities:

Related Eclipse Projects:

  • XSD XML Schema Infoset Model.
  • WSVT Web Service Validation Tools.
  • GMT Generative Model Transformer (MDA).

Developer Resources:

Style Guidelines:

* Bug report, Mailing lists, and CVS repository infrastructure will be made available after project creation

J2EE is a trademark of Sun Microsystems, Inc.