SKIP THE SHIPPING
Use code NOSHIP during checkout to save 40% on eligible eBooks, now through January 5. Shop now.
Register your product to gain access to bonus material or receive a coupon.
Discover WTP, the New End-to-End Toolset for Java-Based Web Development
The Eclipse Web Tools Platform (WTP) seamlessly integrates all the tools today’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 Platform offers in-depth descriptions of every tool included in WTP, introducing powerful capabilities never before available in Eclipse. The authors cover the entire Web development process–from defining Web application architectures and development processes through testing and beyond. And if you’re seeking to extend WTP, this book provides an introduction to the platform’s rich APIs. The book also
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.
Organizing Your Eclipse Web Tools Platform Development Project
Java Web Application Development and Eclipse 3
What This Book Contains 4
How This Book Is Organized 5
Source Code Examples 8
Introducing League Planet 9
Summary 10
WTP Is Born 13
WTP Economics 15
The Structure of WTP 22
Contributing to WTP 37
Summary 40
Overview 41
Iteration 1: J2EE Web Applications 44
Iteration 2: Servlets and Scriptlets 60
Iteration 3: Database Access 71
Iteration 4: Web Services 82
Summary 88
Installing and Updating WTP 91
Configuring WTP 105
Summary 110
The Web Landscape 113
Web Applications 115
Service-Oriented Architecture (SOA) 130
Case Study: League Planet 133
Summary 135
Web Project Types and J2EE Applications 138
Advanced Web Projects 160
Example Projects 165
Summary 196
Introduction 199
Interaction Design 200
Graphic Design 203
The Structure of the Presentation Tier 204
Iteration 1: Static Web Projects, HTML, and the
Iteration 2: CSS 230
Iteration 3: JavaScript 234
Iteration 4: XML and XSLT 248
Iteration 5: DTD 257
Iteration 6: Servers, Dynamic Web Projects, and Servlets 261
Iteration 7: JSP 279
Iteration 8: Monitoring HTTP Sessions 289
Summary 295
A Common Business Tier Design 300
Iteration 1: The Domain Model 301
Iteration 2: Developing Session EJBs 325
Iteration 3: Message-Driven Beans 358
Summary 367
Designs for the Persistence Layer 370
Overview of Iterations 374
Iteration 1: Creating a Database 375
Iteration 2: Data Layer 386
Iteration 3: Entity Beans 392
Summary 418
WSDL 422
SOAP 423
REST 424
REST Style Web Services 426
Overview of Iterations 427
Iteration 1: Developing Web Services Top-Down 428
Iteration 2: Developing Web Services Bottom-Up 454
Iteration 3: Generating Web Service Client Proxies 464
Iteration 4: Testing Web Services for Interoperability 470
Iteration 5: Using Web Services in Web Applications 477
Iteration 6: Discovering and Publishing Web Services 494
Summary 508
Automated Testing 511
Overview of Iterations 512
Iteration 1: Unit Testing with JUnit 512
Iteration 2: Integration Testing with Cactus 520
Iteration 3: System Testing with HttpUnit 528
Iteration 4: Performance Testing with TPTP 533
Iteration 5: Profiling with TPTP 540
Summary 546
Overview of Adding a Generic Server Adapter 554
The GlassFish Server Runtime 554
Server Adapter Plug-Ins 556
Adding Support for a New Server Runtime 558
Adding a New Server Type for a Runtime 561
Adding a New Runtime Target Handler 562
Facets and Runtime Components 563
Extending the Server Tools UI 565
The Generic Server Definition 566
Publishers 570
Testing the Server Adapter 573
Summary 580
Creating the DocBook Extension Plug-In 585
The DocBook Validator 585
Creating a Custom Marker Type 598
Declaring the DocBook Content Type 601
Summary 605
Creating the WSDL Extension Plug-In 612
Extending the WSDL Editor 612
Extending WSDL Validation 635
Summary 644
Creating the Resource Resolution Extension Plug-In 647
Contributing Resources to the XML Catalog 648
Implementing a Custom Resource Resolution Strategy 657
Summary 665
Java Web Tools 669
Perl Web Tools 674
PHP Web Tools 674
Python Web Tools 675
Ruby Web Tools 675
Summary 675
Eclipse Data Tools Platform (DTP) Project 678
Eclipse JavaServer Faces (JSF) Tools Project 678
Eclipse Dali Java Persistence Architecture (JPA) Tools Project 679
Eclipse AJAX Tools Framework (ATF) Project 679
Java Enterprise Edition 5 679
Apache Axis2 and W3C WSDL 2.0 680
Eclipse PHP Development Tools Project 680
Eclipse SOA Tools Platform (STP) Project 681
Conclusion 681