Uh-oh, it looks like your Internet Explorer is out of date.

For a better shopping experience, please upgrade now.

Practical JBoss Seam Projects / Edition 1

Practical JBoss Seam Projects / Edition 1

by James Farley

ISBN-10: 1590598636

ISBN-13: 9781590598634

Pub. Date: 08/02/2007

Publisher: Apress

Practical JBoss® Seam Projects, written by renowned author and enterprise Java practitioner Jim Farley, is the first practical projects book of its kind on this groundbreaking open-source lightweight JSF-EJB3 framework.

  • Practical application scenarios are used to demonstrate the nature of the JBoss Seam framework, its


Practical JBoss® Seam Projects, written by renowned author and enterprise Java practitioner Jim Farley, is the first practical projects book of its kind on this groundbreaking open-source lightweight JSF-EJB3 framework.

  • Practical application scenarios are used to demonstrate the nature of the JBoss Seam framework, its efficacy, and its limitations
  • The series of scenarios and cases demonstrate key elements of the framework (e.g., basic web application development, rich web clients with Ajax, and so forth)
  • Real-world case studies offer valuable insight into the new practices of JBoss Seam Web 2.0 development

What you’ll learn

  • How to use the open source lightweight standards-based Seam framework in the context of the Java EE 5 environment
  • Aquick, broad primer on Seam by examining a “canonical” web application
  • To appreciate the JSF extension capabilities offered by Seam (including conversations and breadcrumbs), the use of EJB3 session backing beans, and general persistence management
  • Practical help from case studies, such as a PayPal-like web application project
  • Understand page-flow management provided by Seam's jPDL through a working case study
  • Design rich web user interfaces using Seam and Ajax in another working case study
  • Discover the workflow and BPM support provided by Seams integration with jBPM

Who this book is for

Intermediate Java developers with fundamental knowledge of enterprise issues and frameworks. Experience or a basic understanding of J2EE/Java EE 5 should suffice.

Table of Contents

  1. Introducing Seam
  2. Seam Configuration and Administration
  3. Component Fundamentals
  4. Contexts and Conversations
  5. Structured Pageflow
  6. Security
  7. Business Process Management
  8. Rich Web Clients

Product Details

Publication date:
Expert's Voice Series
Edition description:
Product dimensions:
7.50(w) x 9.00(h) x 0.53(d)

Table of Contents

About the Author     xiii
About the Technical Reviewer     xv
Acknowledgments     xvii
Introduction     xix
Introducing Seam     1
Seam Simplifies Java EE     1
The Seam Component Model     3
Running Example: A Gadget Catalog     4
The Gadget Catalog Without Seam     5
The Gadget Catalog with JBoss Seam     15
Seam Extends Java EE     16
Seam Component Services     16
Integrated Pageflow with jPDL     18
Integrated Business Processes with jBPM and JBoss Rules     18
Rich Internet Applications (aka Web 2.0)     19
Read On     19
Summary     20
Seam Configuration and Administration     21
Preparing the Application Server     21
Java 5.0 Required     21
JavaServer Faces     22
Enterprise JavaBeans 3.0     22
Configuring JBoss 4     25
Installation in a Generic Java EE 5.0 Environment     26
Installation in a Generic J2EE 1.4 Environment     28
Configuring a Seam Application     28
Install Seam Core Libraries     29
Configure Facelets     30
Web Component Configuration     31
EJB Component Configuration     33
Seam Configuration Files     37
Summary     37
Component Fundamentals     39
Seam Component Types     39
Form Backing Beans     40
Action Listeners     41
Browser-Accessible Components     41
Extending the Gadget Catalog: Managing Types     42
Component Services     43
Component Name Binding     43
Life Cycle and Callbacks     47
Using EJBs As JSF Managed Beans     49
Bijection     60
Summary     66
Contexts and Conversations     67
Seam Component Contexts     67
Seam Contexts and the JSF Life Cycle     69
Gadget Catalog: Conversational Gadgets     72
Conversation Basics     74
The Motivation for Conversations     74
Conversations and Other Contexts     75
Conversation Life Cycle     75
Implicit vs. Explicit Conversations     77
Starting and Ending Conversations     78
Joining Conversations     88
Nesting Conversations     90
Workspaces: Managing Concurrent Conversations     93
Summary     98
Structured Pageflow     99
The Basics of Pageflow with jPDL     100
The Language of jPDL     100
When to Use jBPM Pageflow     103
Gadget Catalog: The "New Gadget" Wizard     105
Seam's Pageflow Model     106
Configuring jPDL Pageflows     106
Making Sense of "Pages" in Seam, jBPM, and JSF     107
Initiating Pageflows     108
Starting Pageflows with Annotations     109
Starting Pageflows with Page Links     111
Defining Page Nodes and Transitions     113
Conditional Flow     117
Managing the Back Button     119
Ending Pageflows     121
Advantages of jPDL     122
Flexible Pageflow Through Encapsulation     122
Expressiveness of jPDL     124
Summary     124
Security     127
Seam Security Support     127
Authentication     127
Authorization     128
Seam Security vs. Java EE Security     128
Gadget Catalog: Expansion Through Security     129
User Interface Access Control      130
Data Model Changes     131
Configuring Seam Security     132
Minimal Configuration     132
Security EL Expressions     133
JBoss Rules     134
Authentication Services     134
Enabling the Authentication Services     134
Creating the Login Form     135
Creating the Login Handler     137
Adding Login and Logout Links     142
Restricting Pages     143
Handling Authentication Exceptions     144
Making a Smarter Login     145
Authorization Services     146
Assigning Roles to Users     147
Specifying Page Access Rights     150
Component-Level Restrictions     151
Advanced Authorization     153
Summary     156
Business Process Management     159
Business Processes, jBPM, and Seam     159
Business Process Concepts     159
Business Processes + Java = jBPM     161
Integration of jBPM and Seam     165
Gadget Catalog: Verifying New Gadgets     167
Configuring jBPM in Seam     170
Avoiding Conflicts with JBoss Transaction Management     171
Setting the Hibernate DataSource     173
Defining Process Flows     174
Starting a Business Process     177
Business Process Data     178
Executing Tasks     183
Assigning Tasks to Users     183
Starting and Ending Tasks     188
Summary     191
Rich Web Clients     193
What Is a Rich Web Client?     193
Seam's Remoting Services     194
Gadget Catalog: Improving the User Experience     196
Configuring Seam Remoting     196
Server-Side Configuration     196
Client-Side Configuration     197
Enabling Access to Server Components     198
Basic Java Type Mappings     198
Executable Stubs     199
Type Stubs     207
The Seam JavaScript Object     208
Seam.Component     208
Seam.Remoting     209
Implementing the Auto-Complete Search Box     210
Integration with AJAX Libraries     214
Summary     217
Index     219

Customer Reviews

Average Review:

Post to your social network


Most Helpful Customer Reviews

See all customer reviews