Online Shopping

Now let’s look at a more useful example; an online shopping site. Besides showing you examples on how the session and application scopes can be used effectively in a larger application, this example also introduces other useful tools, such as JSTL actions for number formatting and redirection, and EL syntax for getting collection values based on keys determined at runtime.

The application consists of three pages. The main page lists all available products. Each product is linked to a product description page, where the product can be added to the shopping cart. A product is added to the shopping cart by a request processing page. The main page with the product list is then displayed again, but with the current contents of the shopping cart as well, as shown in Figure 10-7.

The product list and the contents of the shopping cart
Figure 10-7. The product list and the contents of the shopping cart

Two beans are used to keep track of the products: the com.ora.jsp.beans.shopping.CatalogBean contains all available products, and the com.ora.jsp.beans.shopping.CartBean represents one user’s shopping cart. Each product in the catalog is represented by a ProductBean. Table 10-5, Table 10-6, and Table 10-7 show all the properties for the beans.

Table 10-5. Properties for com.ora.jsp.beans.shopping.CatalogBean

Property name

Java type

Access

Description

productList
com.ora.jsp.beans.shopping.ProductBean[]

Read

A list of all products ...

Get JavaServer Pages, 3rd Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.