SmartSellTM - The New Way to Sell Online

Shop over a million Toys in our Huge New Range

Seam Framework


Product Description
Product Details

Table of Contents

About This Book xviiAbout the Authors xixAcknowledgments xxi Part I: Getting Started 1 Chapter 1: What Is Seam? 31.1: Integrating and Enhancing Java EE Frameworks 41.2: A Web Framework That Understands ORM 51.3: Supporting Stateful Web Applications 61.4: Web 2.0 Ready 71.5: POJO Services via Dependency Bijection 71.6: Convention over Configuration 81.7: Avoiding XML Abuse 81.8: Designed for Testing 91.9: Great Tools Support 101.10: Let's Start Coding! 10 Chapter 2: Seam Hello World 112.1: Create a Data Model 132.2: Map the Data Model to a Web Form 132.3: Handle Web Events 142.4: Navigate to the Next Page 152.5: EJB3 Bean Interface and Mandatory Method 162.6: More on the Seam Programming Model 172.7: Configuration and Packaging 202.8: How Is This Simple? 25 Chapter 3: Recommended JSF Enhancements 273.1: An Introduction to Facelets 283.2: Seam JSF Enhancements 343.3: Add Facelets and Seam UI Support 383.4: PDF, Email, and Rich Text 403.5: Internationalization 46 Chapter 4: Seam without EJB3 474.1: A Seam POJO Example 474.2: Configuration 484.3: Packaging 504.4: POJO Trade-Offs 52 Chapter 5: Rapid Application Development Tools 535.1: Prerequisites 545.2: A Quick Tutorial 545.3: Working with IDEs 635.4: Generating a CRUD Application from a Database 725.5: Seam-gen Command Reference 73 Part II: Stateful Applications Made Easy 75 Chapter 6: An Introduction to Stateful Framework 776.1: Correct Usage of ORM 776.2: Better Performance 796.3: Better Browser Navigation Support 816.4: Fewer Memory Leaks 826.5: High Granularity Component Lifecycle 836.6: Reducing Boilerplate Code 84 Chapter 7: Thinking in Components 877.1: Stateful Components 877.2: Managing Stateful Components 927.3: Configuring Components through XML 977.4: Page Navigation Flow 99 Chapter 8: Conversations 1018.1: What Is a Conversation? 1028.2: Long-Running Conversations 1068.3: Managing Long-Running Conversations 1128.4: New Frontiers 124 Chapter 9: Workspaces and Concurrent Conversations 1259.1: What Is a Workspace? 1259.2: Workspace Management 1299.3: Natural Conversations 1349.4: Workspace Timeout 1409.5: Desktop Features in a Stateless Web 143 Chapter 10: Nested Conversations 14510.1: Why Are Nested Conversations Needed? 14510.2: Continuing the Conversation 14710.3: The Conversation Stack 15210.4: Fine-Grained State Management 157 Chapter 11: Transactions and Persistence 15911.1: Seam-Managed Transactions 16011.2: Atomic Conversation (Web Transaction) 165 Part III: Integrating Web and Data Components 175 Chapter 12: Validating Input Data 17712.1: Form Validation Basics 17712.2: Validation Annotations on Entity Beans 17912.3: Triggering the Validation Action 18112.4: Displaying Error Messages on the Web Form 18312.5: Using JSF Custom Validators 185 Chapter 13: Clickable Data Tables 18713.1: Implementing a Clickable Data Table 18813.2: Seam Data-Binding Framework 191 Chapter 14: Decoupling Components Using Events 19314.1: The Observer Pattern 19314.2: Component-Driven Events 196 Chapter 15: Bookmarkable Web Pages 20315.1: Using Page Parameters 20415.2: The Java-Centric Approach 20715.3: RESTful Web Services 211 Chapter 16: The Seam CRUD Application Framework 21316.1: Data Access Objects (DAOs) 21316.2: Seam CRUD DAOs Are POJOs 21416.3: A Declarative Seam DAO Component 21516.4: Queries 218 Chapter 17: Failing Gracefully 22317.1: Why Not Standard Servlet Error Pages? 22317.2: Setting Up the Exception Filter 22517.3: Annotating Exceptions 22517.4: Using pages.xml for System Exceptions 22717.5: The Debug Information Page 229 Chapter 18: Seam Security 23318.1: Authentication and User Roles 23418.2: Declarative Access Control 23718.3: Identity Management 24318.4: Additional Security Features 251 Part IV: AJAX Support 257 Chapter 19: Custom and AJAX UI Components 25919.1: Autocompletion Text Input Example 26119.2: Rich Input Control Examples 26319.3: A Scrollable Data Table 26419.4: Using RichFaces with Seam 26519.5: Other JSF Component Libraries 266 Chapter 20: Enabling AJAX for Existing Components 26920.1: AJAX Validator Example 27020.2: Programmatic AJAX 27220.3: AJAX Buttons 27420.4: AJAX Containers 27620.5: Other Goodies 27620.6: Using Ajax4jsf with Seam 27720.7: Pros and Cons 278 Chapter 21: Direct JavaScript Integration 27921.1: AJAX Validator Example (Reloaded) 28021.2: AJAX Progress Bar 28421.3: Integrating the Dojo Toolkit 287 Part V: Business Processes and Rules 293 Chapter 22: Rule-Based Security Framework 29522.1: Rule-Based Access Control 29522.2: Configuring Rule-Based Permissioning 29622.3: Simple Access Rules 29722.4: Per-Instance Access Rules 29922.5: Securing Your Entities 302 Chapter 23: Integrating Business Rules in Web Applications 30523.1: Embedded Rules 30523.2: Generic Rules 30923.3: Building and Deployment 31223.4: Conclusions 313 Chapter 24: Managing Business Processes 31524.1: jBPM Concepts and Vocabulary 31624.2: Application Users and jBPM Actors 31824.3: Creating a Business Process 32024.4: Managing Tasks 32524.5: Business Process-Based Page Navigation Flow 33024.6: jBPM Libraries and Configuration 333 Chapter 25: Integrating Business Processes and Rules 33525.1: The Process 33525.2: The Rules 33725.3: Conclusions 338 Part VI: Testing Seam Applications 339 Chapter 26: Unit Testing 34126.1: A Simple TestNG Test Case 34326.2: Simulating Dependency Bijection 34426.3: Mocking the Database and Transaction 34526.4: Loading the Test Infrastructure 347 Chapter 27: Integration Testing 35127.1: Simulating JSF Interactions 35227.2: Using JSF EL Expressions 35327.3: Transactional Data Source 355 Part VII: Production Deployment 357 Chapter 28: Using a Production Database 35928.1: Installing and Setting Up the Database 35928.2: Installing the Database Driver 36128.3: Defining a Data Source 36128.4: Configuring the Persistence Engine 36228.5: How about Tomcat? 362 Chapter 29: Java EE 5.0 Deployment 36529.1: JBoss AS 4.0.5 36529.2: JBoss AS 4.2.x and 5.x 36629.3: GlassFish 367 Chapter 30: Performance Tuning and Clustering 37130.1: Tuning Performance on a Single Server 37230.2: Clustering for Scalability and Failover 379 Part VIII: Emerging Technologies 383 Chapter 31: Scheduling Recurring Jobs from a Web Application 38531.1: Simple Recurring Events 38631.2: Configuring the Quartz Scheduler Service 38731.3: Scheduling Cron Jobs 38931.4: Scheduling Jobs When Starting Up 39031.5: Conclusion 391 Chapter 32: Improving Scalability with Multilayered Caching 39332.1: Multilayered Caching 39432.2: Integrating a Cache Provider through Seam 39632.3: Simplified Caching with Seam 398 Chapter 33: Making Seam Groovy 40133.1: Groovy Entities 40233.2: Groovy Actions 40533.3: Integrating Groovy 406 Chapter 34: Introduction to Web Beans 40934.1: Defining a Web Beans Component 41034.2: Component Injection 41134.3: Producer Methods 41434.4: The Context Model 41634.5: Component Stereotyping 41934.6: Implementing Cross-Cutting Behavior 42134.7: Conclusion 423 Appendix A: Installing and Deploying JBoss AS 425A.1: JDK 5.0 Is Required 425A.2: Installing JBoss AS 426A.3: Deploying and Running Applications 426 Appendix B: Using Example Applications as Templates 427B.1: Simple EJB3-Based Web Applications 428B.2: POJO-Based Web Applications 433B.3: More Complex Applications 438 Appendix C: Using Maven 441 Appendix D: Direct Access to the Hibernate API 451D.1: Using the Hibernate API 451D.2: Configuration 453 Index 455

About the Author

Michael Yuan, (Texas) an author, software developer, and open source contributor to the Seam Framework, currently works at eZee, developing a large scale mobile marketing system based on Seam. Formerly technical product manager at Red Hats JBoss division, he is author of JBoss Seam, Enterprise J2ME, and Nokia Smartphone Hacks. Jacob Orshalick, (Switzerland) an independent consultant working on enterprise Java projects, is an active contributor to Seam and other open source projects. Thomas Heute contributed to the pre-JBoss Portal project, and was hired by JBoss Inc., later becoming JBoss Seam co-leader.

Ask a Question About this Product More...
Write your question below:
Look for similar items by category
Home » Books » Computers » Programming » Java
People also searched for
How Fishpond Works
Fishpond works with suppliers all over the world to bring you a huge selection of products, really great prices, and delivery included on over 25 million products that we sell. We do our best every day to make Fishpond an awesome place for customers to shop and get what they want — all at the best prices online.
Webmasters, Bloggers & Website Owners
You can earn a 5% commission by selling Seam Framework: Experience the Evolution of Java EE on your website. It's easy to get started - we will give you example code. After you're set-up, your website can earn you money while you work, play or even sleep! You should start right now!
Authors / Publishers
Are you the Author or Publisher of a book? Or the manufacturer of one of the millions of products that we sell. You can improve sales and grow your revenue by submitting additional information on this title. The better the information we have about a product, the more we will sell!
Item ships from and is sold by Fishpond World Ltd.
Back to top