How gagishmagi/online_shoping works
This is a JSF online shop with a customer storefront, session-scoped shopping cart, product and category administration, and order management. The intended customer journey is product browsing, adding items to a cart, and proceeding to payment; the sampled cart computes item totals, while payment-provider wiring is not shown. Admin managers call DAO operations, and the sampled listing managers retrieve catalog data through ListDao. The README provides no feature detail, and most view and payment implementation files were not sampled, so those connections are shown only where supported by the tree or source.
Main entry points: ListDao.java Listing DAO · dao Write DAOs · admin Admin Pages · OrderManager.java Order Management
Components 17
Storefront
- Catalog Pages
web - Catalog Listing
src/java/display - Product Details
web/product-details.xhtml
Cart And Orders
- Cart Page
web/cart.xhtml - Shopping Cart
src/java/cart/ShoppingCart.java - Payment Page
web/payment.xhtml - PayPal Config
web/WEB-INF/paypal.xml - Order Management
src/java/add_handler/OrderManager.java
Shop Administration
- Admin Pages
web/admin - Category Manager
src/java/add_handler/CategoryManager.java - Subcategory Manager
src/java/add_handler/SubCategoryManager.java - Product Manager
src/java/add_handler/ProductManager.java
Persistence
- Listing DAO
src/java/dao/ListDao.java - Write DAOs
src/java/dao - Shop Entities
src/java/entity - Shop Database
java_online_shop.sql
Other components
- Customer
Connections 23
- Customer → Catalog Pages: browses
- Catalog Pages → Catalog Listing: lists products
- Catalog Listing → Listing DAO: queries catalog
- Customer → Product Details: views product
- Customer → Shopping Cart: adds product
- Shopping Cart → Cart Page: shows cart
- Customer → Payment Page: proceeds to payment
- Payment Page → PayPal Config: uses configuration
- Admin Pages → Category Manager: manages categories
- Admin Pages → Subcategory Manager: manages subcategories
- Admin Pages → Product Manager: manages products
- Admin Pages → Order Management: manages orders
- Category Manager → Listing DAO: loads categories
- Category Manager → Write DAOs: adds category
- Subcategory Manager → Listing DAO: loads categories
- Subcategory Manager → Write DAOs: adds subcategory
- Product Manager → Listing DAO: loads subcategories
- Product Manager → Write DAOs: adds product
- Order Management → Listing DAO: queries orders
- Order Management → Write DAOs: edits or deletes order
- Listing DAO → Shop Entities: queries
- Write DAOs → Shop Entities: persists
- Shop Entities → Shop Database: maps data