Java Open Source Programming: With XDoclet, JUnit, WebWork, Hibernate

  • 6h 23m
  • Ara Abrahamian, Joe Walnes, Mike Cannon-Brookes, Pat Lightbody
  • John Wiley & Sons (US)
  • 2004

Discover how to develop full-scale J2EE applications quickly and efficiently using the best Open Source tools. Written by leading authorities in the field, this book shows you how to leverage a suite of best-of-breed Open Source development tools to take the pain out of J2EE and build a complete Web-based application. you'll combine these tools to actually reduce the points of failure in your application, while increasing overall system stability and robustness. Along with the tools introduced here, you'll develop the PetSoar application, which follows the PetStore application used by Sun Microsystems to demonstrate features of J2EE. With PetSoar, the authors focus on developing a maintainable and flexible application, rather than showcasing the end result, so that you can apply the material in your own projects. In addition, the authors provide methods for utilizing Open Source software components for each stage of the development process. The Open Source products covered include: Hibernate to aid with simple,flexible, and speedy transparent object persistence OpenSymphony WebWork to allow for pluggable view technologies and extensible configuration JUnit and Mock Objects to assist with rapid and robust unit testing XDoclet to assist with generating code and configuration files automatically Jakarta Lucene to add Google-style smart search capabilities to data stores OpenSymphony SiteMesh to aid in the creation of large sites with a common look and feel OpenSymphony OSCache to easily cache slow dynamic sections of Web sites resulting in faster-loading pages.

About the Authors

Joe Walnes is a consultant for ThoughtWorks, a systems integration company that specializes in Agile development techniques for the enterprise. His areas of expertise lie in Extreme Programming coaching for developers, design techniques for object-oriented and component-oriented systems, and simplifying J2EE development. In his (minimal) spare time, he works on Open Source projects.

Ara Abrahamian is a freelance consultant specializing in developing Enterprise Java solutions. He’s been involved in various J2EE projects all around the globe, as a consultant or technical leader. His areas of expertise are code generation, attribute-oriented programming, and software automation techniques. He is also active in many Open Source projects, including XDoclet as the leader of the project. His other area of interest is adapting lightweight methodologies such as XP to large distributed teams.

Mike Cannon-Brookes is the founder of Atlassian, a cutting-edge J2EE applications and services company in Sydney, Australia. Atlassian makes top-class J2EE software applications including JIRA, a leading issue-tracking and project-management system. Mike specializes in building brilliantly simple, usable J2EE Web applications and also founded JavaBlogs, a Web-based, Java-focused blog aggregator. He also founded the OpenSymphony project and works on WebWork, SiteMesh, and other Open Source projects.

Pat Lightbody currently lives in San Francisco and works in Palo Alto at a startup company called Spoke Software, which specializes in enterprise software using social networking to enhance sales performance. Before that, he worked as a software engineer at Cisco Systems and attended the University of California, San Diego, where he received his B.S. in Computer Science. He also works on various Open Source projects, primarily WebWork, XWork, and OSWorkflow.

In this Book

  • Overview of the Book
  • Application Overview
  • Unit Testing with JUnit
  • Testing Object Interactions with Mocks
  • Storing Objects with Hibernate
  • Model View Controller with WebWork
  • Simplifying Layout with SiteMesh
  • Adding Search Capabilities with Lucene
  • Generating Configuration Files with XDoclet
  • Communication and Tools
  • Time-Saving Tools
  • Setting Up the Development Environment
  • Understanding Test Driven Development
  • Managing Lifecycles and Dependencies of Components
  • Defining the Domain Model
  • Creating a Web-Based Interface
  • Defining Navigation, Layout, Look, and Feel
  • Implementing Browse and Search Capabilities
  • Adding a Shopping Cart
  • Securing the Application


Rating 5.0 of 2 users Rating 5.0 of 2 users (2)
Rating 4.5 of 34 users Rating 4.5 of 34 users (34)