List of Figures

Chapter 1. An introduction to Play

Figure 1.1. Play framework stack

Figure 1.2. The Windows Environment Variables dialog

Figure 1.3. The default welcome page for a new Play application

Figure 1.4. Simple text output

Figure 1.5. Compilation errors are shown in the web browser, with the relevant source code highlighted.

Figure 1.6. Output using an HTTP query parameter

Figure 1.7. Output using our HTML template

Chapter 2. The parts of an application

Figure 2.1. Components of a route

Figure 2.2. A new Play application in Eclipse

Figure 2.3. Importing a project in Eclipse

Figure 2.4. NetBeans plugin center

Figure 2.5. Install the NetBeans plugin

Figure 2.6. Open a new Play project in NetBeans IDE

Figure 2.7. A new Play application in NetBeans IDE

Figure 2.8. A new Play application in IntelliJ IDEA

Figure 2.9. Adding a debug configuration in Eclipse

Figure 2.10. Adding a debug configuration in IntelliJ

Chapter 3. A basic CRUD application

Figure 3.1. Requests routed to actions

Figure 3.2. Play’s TODO placeholder at /products

Figure 3.3. Our products listing

Figure 3.4. Our products listing

Figure 3.5. The product form

Figure 3.6. Validation errors in our form

Chapter 4. An enterprise app, Play-style

Figure 4.1. Enterprise application ecosystem

Figure 4.2. Enterprise application ecosystem after integration

Figure 4.3. Enterprise applications with SOA

Figure 4.4. Enterprise applications with Play

Chapter 5. Controllers—handling HTTP requests

Figure 5.1. Role of the controller

Figure 5.2. Controller lifecycle

Figure 5.3. Detailed view of the controller lifecycle

Figure 5.4. Adding Content to the controller lifecycle

Figure 5.5. Role of the router

Figure 5.6. Request

Figure 5.7. Request with query string

Figure 5.8. An error in the routes file

Figure 5.9. Route definition

Figure 5.10. Route definition with query string

Figure 5.11. Bad request error screen

Figure 5.12. Bad request error screen for missing parameter

Figure 5.13. In JEE, application scope is the longest lived and page scope is the shortest lived.

Figure 5.14. In Play, request scope is the shortest lived and session scope is the longest lived.

Figure 5.15. Submitting an invalid form without using the flash scope

Figure 5.16. Submitting an invalid form using the flash scope

Figure 5.17. Secret key with a cluster of applications

Chapter 6. Handling user input

Figure 6.1. Our “create new product” form

Figure 6.2. “Create product form” workflow

Figure 6.3. The “create new product” form

Figure 6.4. “Edit product” workflow

Figure 6.5. The binding process

Figure 6.6. Product–Tag relationships

Figure 6.7. Binding HTML check boxes

Figure 6.8. Edit product form with tags

Figure 6.9. The binding process

Figure 6.10. Body parser interaction with an incoming request

Figure 6.11. Our paperclip picture

Chapter 7. Models and persistence

Figure 7.1. The data model representing our warehouse

Figure 7.2. A reminder of our data model

Figure 7.3. Focus on the Product class

Figure 7.4. Persistence in Play 2 with Ebean and H2

Figure 7.5. Play offering database evolution

Figure 7.6. H2 console showing the database schema

Figure 7.7. H2 console showing the contents of the product table

Figure 7.8. Focus on the StockItem class.

Figure 7.9. The relationship between StockItems and Products

Figure 7.10. The one-to-many database relationship

Figure 7.11. Looking at the stock item table in the H2 console

Figure 7.12. A one-to-many database relationship

Figure 7.13. The Warehouse and Address classes in the data model

Figure 7.14. A one-to-many database relationship

Figure 7.15. A one-to-one database relationship

Figure 7.16. The Product and Tag classes in the data model

Figure 7.17. A many-to-many database relationship

Chapter 8. Producing output with view templates

Figure 8.1. Runtime template error in Play 1

Figure 8.2. Link text, broken down

Figure 8.3. A multitoken statement

Figure 8.4. A multistatement expression

Figure 8.5. The catalog page

Figure 8.6. Web page composition

Chapter 9. Asynchronous data

Figure 9.1. Web framework with synchronous architecture

Figure 9.2. Play’s asynchronous architecture

Figure 9.3. Parallel execution in Play

Figure 9.4. Sequence events generated reports

Figure 9.5. Screenshot of our application once the reports are generated

Figure 9.6. Screenshot of our future application

Figure 9.7. Unidirectional communication with Comet

Figure 9.8. WebSocket pickup order application

Figure 9.9. Bidirectional communication with WebSocket

Figure 9.10. Output server side

Figure 9.11. Output client side

Figure 9.12. Sequence diagram of a client clicking on an order

Figure 9.13. Order being processed

Chapter 10. Security

Figure 10.1. New product form

Figure 10.2. Pop-up window hello user

Figure 10.3. Basic authentication

Figure 10.4. Basic authentication pop up

Figure 10.5. Login form

Chapter 11. Modules and deployment

Figure 11.1. Generated bar code

Chapter 12. Testing your application

Figure 12.1. The products list

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset