Eclipse Web Tools
by Lawrence Mandel, Jeffrey Liu
10/05/2005
The release of the Eclipse Web Tools Platform (WTP) Version 0.7 in July 2005 marks a significant milestone in open
source web and J2EE
development. The WTP project, seeded by contributions from the
IBM Rational Application Developer for WebSphere and ObjectWeb Lomboz,
provides a set of well-rounded and tightly integrated tools that
simplify the creation of often complex web and J2EE applications.
These tools also form the foundation of an integrated web and J2EE
tools platform that offers great flexibility to vendors who want to
add their own extensions and customization.
This article will give you an overview of the WTP project, take
you on a tour of the great tools it has to offer, and provide a
glimpse into the WTP 1.0 release currently scheduled for December 2005.
The Web Tools Platform Project
The WTP is a new Eclipse top-level project, released for the
first time on top of Eclipse
3.1, that contains tools and a platform that support both web
and J2EE development. The WTP consists of two subprojects: Web
Standard Tools (WST) and J2EE Standard Tools (JST). The WST project
contains tools for programming-language-neutral standards such as
HTML, XML, and web services. The JST project contains tools
specific to the Java language and its J2EE platform such as EJB,
servlet and JavaServer Pages (JSP), and Java web services.
The WTP project has three key goals that speak directly to its
tools' users and platform extenders.
- Performance. The tools will be "lean and mean": they
will minimize memory requirements without sacrificing
responsiveness.
- Usability. The tools will be easy to learn and require
little knowledge of the underlying technologies, facilitating the
creation of sophisticated applications by all developers.
- Quality. The tools will be of industrial quality and the
API
will be of platform (read "very high") quality.
The WTP 0.7 release includes tools for:
- Data access and manipulation
- Server support
- XML, including
XML schema, WSDL,
and DTD, editing and validation
- J2EE
application building, including editors and wizards for servlets, and JSP and EJB components
- Web services tools for creating, consuming, testing,
publishing, and discovering web services, and testing conformance
to the Web Services Interoperability
(WS-I) profiles
From a web and J2EE platform perspective, the second part of
Goal 3 is a platform-quality API. This goal is targeted for the 1.0
release-- seeFrom WTP 1.0 to 0.7 and Back
Again for an explanation. The WTP API will define WTP as a
platform and allow independent software vendors (ISVs) to develop
their own enhancements to the Eclipse web tools.
When adopting an open source project, ISVs should primarily
consider longevity. With companies such as BEA, IBM,
and Oracle already committed to
the WTP, the platform already has the support it needs to last a
long time.
A Tour of the Eclipse Web Tools
The first release of WTP provides a well-integrated and
easy-to-use development environment for web and J2EE developers of
various levels of experience. It makes the tasks of development,
testing, and deployment of web and J2EE applications, which can be
rather complex, straightforward for developers not deeply immersed
in J2EE specifics. Consider a typical J2EE application that
provides both business-to-business (B2B) and business-to-client
(B2C) services. Figure 1 illustrates how such applications can be
architected.

Figure 1. Overview of a Typical J2EE Application
For simplicity and scalability, a typical application will use a
database management
system (DBMS) for data storage. An Enterprise JavaBeans (EJB)
component together with a Java database connection
(JDBC) driver can be used to access data from the DBMS. To
satisfy the B2B requirement, the EJB component can be exposed as a
web service to achieve a platform-neutral and highly interoperable
integration point. Finally, the presentation layer between the
application and clients can be implemented using a combination of
HyperText Markup Language (HTML) and JSP technology. Such an
application may look complex on the outside, but using the WTP you
can develop it quickly and without a great depth of knowledge about
all of the technologies mentioned above.