Eclipse Web Tools Platform Developing Java Web Applications

by ; ;
  • ISBN13:


  • ISBN10:


  • Edition: 1st
  • Format: Paperback
  • Copyright: 2007-05-21
  • Publisher: Addison-Wesley Professional
  • Purchase Benefits
  • Free Shipping On Orders Over $35!
    Your order must be $35 or more to qualify for free economy shipping. Bulk sales, PO's, Marketplace items, eBooks and apparel do not qualify for this offer.
  • Get Rewarded for Ordering Your Textbooks! Enroll Now
List Price: $59.99 Save up to $12.00
  • eBook
    Add to Cart


Supplemental Materials

What is included with this book?

  • The eBook copy of this book is not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.


Discover WTP, the New End-to-End Toolset for Java-Based Web Development The Eclipse Web Tools Platform (WTP) seamlessly integrates all the tools todayrs"s Java Web developer needs. WTP is both an unprecedented Open Source resource for working developers and a powerful foundation for state-of-the-art commercial products. Eclipse Web Tools Platformoffers in-depth descriptions of every tool included in WTP, introducing powerful capabilities never before available in Eclipse. The authors cover the entire Web development processfrom defining Web application architectures and development processes through testing and beyond. And if yours"re seeking to extend WTP, this book provides an introduction to the platformrs"s rich APIs. The book also Presents step-by-step coverage of developing persistence, business logic, and presentation tiers with WTP and Java Introduces best practices for multiple styles of Web and Java EE development Demonstrates JDBC database access and configuration Shows how to configure application servers for use with WTP Walks through creating Web service application interfaces Covers automated testing with JUnit and Cactus, and automated builds utilizing Ant, Maven, and CruiseControl Introduces testing and profiling Web applications with the Eclipse Test and Performance Tools Platform (TPTP) project Describes how to extend WTP with new servers, file types, and WSDL extensions Foreword Preface Acknowledgments About the Authors Part I: Getting Started Chapter 1: Introduction Chapter 2: About the Eclipse Web Tools Platform Project Chapter 3: Quick Tour Chapter 4: Setting Up Your Workspace Part II: Java Web Application Development Chapter 5: Web Application Architecture and Design Chapter 6: Organizing Your Development Project Chapter 7: The Presentation Tier Chapter 8: The Business Logic Tier Chapter 9: The Persistence Tier Chapter 10: Web Services Chapter 11: Testing Part III: Extending WTP Chapter 12: Adding New Servers Chapter 13: Supporting New File Types Chapter 14: Creating WSDL Extensions Chapter 15: Customizing Resource Resolution Part IV: Products and Plans Chapter 16: Other Web Tools Based on Eclipse Chapter 17: The Road Ahead Glossary References Index This book is an invaluable resource for every Eclipse and enterprise Java Web developer: both those who use Eclipse to build other Web applications, and those who build Eclipse technologies into their own products. Complete source code examples are available at www.eclipsewtp.org .

Author Biography

Naci Dai, chief scientist and founder of eteration, a.s., is a member of the WTP project management committee, leads its JST subproject, and leads the Open Source Lomboz project, which was a part of the initial code contributed to WTP to seed the project.

Lawrence Mandel, a software architect and developer at at the IBM Toronto Laboratory, is a WTP committer and served as the project’s ecosystem and documentation lead up until the 1.5.2 release.

Arthur Ryman, software architect and development manager at the IBM Toronto Laboratory, has a decade’s experience building Java Web development tools. He led the creation of the WTP project, and led the WST subproject up until the release of WTP 1.5.

Table of Contents

Forewordp. xvii
Prefacep. xix
Acknowledgmentsp. xxiii
About the Authorsp. xxv
Getting Startedp. 1
Introductionp. 3
Java Web Application Development and Eclipsep. 3
What This Book Containsp. 4
How This Book Is Organizedp. 5
Source Code Examplesp. 8
Introducing League Planetp. 9
Summaryp. 10
About the Eclipse Web Tools Platform Projectp. 13
WTP Is Bornp. 13
WTP Economicsp. 15
The Structure of WTPp. 22
Contributing to WTPp. 37
Summaryp. 40
Tourp. 41
Overviewp. 41
J2EE Web Applicationsp. 44
Servlets and Scriptletsp. 60
Database Accessp. 71
Web Servicesp. 82
Summaryp. 88
Up Your Workspacep. 91
Installing and Updating WTPp. 91
Configuring WTPp. 105
Summaryp. 110
Web Application Developmentp. 111
Web Application Architecture and Designp. 113
The Web Landscapep. 113
Web Applicationsp. 115
Service-Oriented Architecture (SOA)p. 130
Case Study: League Planetp. 133
Summaryp. 135
Your Development Projectp. 137
Web Project Types and J2EE Applicationsp. 138
Advanced Web Projectsp. 160
Example Projectsp. 165
Summaryp. 196
The Presentation Tierp. 199
Introductionp. 199
Interaction Designp. 200
Graphic Designp. 203
The Structure of the Presentation Tierp. 204
Static Web Projects, HTML, and the Iteration 2: CSSp. 230
JavaScriptp. 234
XML and XSLTp. 248
DTDp. 257
Servers, Dynamic Web Projects, and Servletsp. 261
JSPp. 279
Monitoring HTTP Sessionsp. 289
Summaryp. 295
The Business Logic Tierp. 297
A Common Business Tier Designp. 300
The Domain Modelp. 301
Developing Session EJBsp. 325
Message-Driven Beansp. 358
Summaryp. 367
The Persistence Tierp. 369
Designs for the Persistence Layerp. 370
Overview of Iterationsp. 374
Creating a Databasep. 375
Data Layerp. 386
Entity Beansp. 392
Summaryp. 418
Web Servicesp. 421
WSDLp. 422
SOAPp. 423
p. 424
REST Style Web Servicesp. 426
Overview of Iterationsp. 427
Developing Web Services Top-Downp. 428
Developing Web Services Bottom-Upp. 454
Generating Web Service Client Proxiesp. 464
Testing Web Services for Interoperabilityp. 470
Using Web Services in Web Applicationsp. 477
Iteration 6p. 494
Testingp. 509
Automated Testingp. 511
Overview of Iterationsp. 512
Unit Testing with JUnitp. 512
Integration Testing with Cactusp. 520
System Testing with HttpUnitp. 528
Performance Testing with TPTPp. 533
Profiling with TPTPp. 540
Summaryp. 546
WTPp. 549
Adding New Serversp. 551
Overview of Adding a Generic Server Adapterp. 554
The GlassFish Server Runtimep. 554
Server Adapter Plug-Insp. 556
Adding Support for a New Server Runtimep. 558
Adding a New Server Type for a Runtimep. 561
Adding a New Runtime Target Handlerp. 562
Facets and Runtime Componentsp. 563
Extending the Server Tools UIp. 565
The Generic Server Definitionp. 566
Publishersp. 570
Testing the Server Adapterp. 573
Summaryp. 580
New File Typesp. 583
Creating the DocBook Extension Plug-Inp. 585
The DocBook Validatorp. 585
Creating a Custom Marker Typep. 598
Declaring the DocBook Content Typep. 601
Summaryp. 605
WSDL Extensionsp. 607
Creating the WSDL Extension Plug-Inp. 612
Extending the WSDL
Table of Contents provided by Publisher. All Rights Reserved.


Our goal in writing this book was to help build the community around the Eclipse Web Tools Platform (WTP) Project. We decided to write this book soon after WTP was approved by the Eclipse Foundation. At that time, the project was in its formative stages and there was virtually nothing written about WTP. We believed that a book on how to use and extend WTP would help promote its adoption.We naively hoped that we would have this book finished soon after WTP 0.7 was released in July 2005. However, since we were all actively engaged in developing WTP, work on this book got delayed. Also, many significant changes in the design of WTP were planned, so we felt it was better to have the book describe the next major version, WTP 1.5, which was part of the Eclipse 3.2 Callisto simultaneous release in June 2006.Allowing WTP to mature also gave us more time to develop and refine the material in this book. Much of the material in this book has been test-driven at several major software development conferences including EclipseCon, EclipseWorld, Rational Software Development Conference, and Colorado Software Summit. Attendees at those events provided valuable feedback that has improved the content of this book.Since the WTP 1.5 release, there has been increasing adoption of WTP by both commercial and Open Source tool developers. This activity has generated a stream of maintenance releases. As we went into production, this book accurately reflected the content of WTP 1.5.2, but by the time it appears in print, the latest release should be WTP 1.5.3. However, each maintenance release should only contain bug fixes and not affect the user interface. This book should therefore also be accurate for WTP 1.5.3 and future maintenance releases. And although WTP 2.0, which is planned for June 2007, will certainly contain many enhancements, we expect that most of the content of this book will still be valid. About This BookThis book is divided into four parts: Getting Started, Java Web Application Development, Extending WTP, and Products and Plans.In Part I, Getting Started, we introduce you to WTP. We give a brief overview of the history and architecture of the project and discuss how you can contribute to its development. By being an active contributor as well as a user, you can help improve WTP and ensure its long-term success. We also introduce you to League Planet, a fictitious amateur sport Web site, which serves as the inspiration for the programming examples in the rest of the book. Next we take you on a Quick Tour of WTP in which you build a simple Web application that includes dynamic content generated by servlets and JSPs running on Tomcat, JDBC database access to Derby, and Web services running on Axis. We conclude with a detailed discussion of how to install WTP and tailor it to your needs using its many preferences. At the end of this part, you'll be able to start building your own Java Web applications with WTP.Part II, Java Web Application Development, is for Java Web application developers. We describe the architecture of Java Web applications and how to build them using WTP. We start with a discussion of how to set up your project, including the use of Maven for automated builds. We then discuss architecture in some detail. Java Web applications have a multi-tiered architecture, and each of the presentation, business logic, and persistence tiers is addressed in its own chapter. The presentation tier chapter covers tools for HTML, CSS, JavaScript, XML, DTD, and XSLT. The business logic tier chapter discusses tools for EJBs and XDoclet. The persistence tier chapter describes tools for SQL. Next we focus on developing Web services, including tools for SOAP, WSDL, XSD, and UDDI. We close with a discussion of testing, including JUnit, Cactus, HttpUnit, and the Eclipse Test and Performance Tools Platform (TPTP).In Part III, Extending WTP, we shift attention to developing

Rewards Program

Write a Review