# 🛍️ wellmann-shop — JSF E-Commerce Application ![Wellmann Shop Banner](http://192.168.188.119:30008/pplate/pi_mcps/raw/branch/main/docs/wiki/images/wellmann-shop-banner.png) **wellmann-shop** is a Java EE JSF e-commerce storefront built entirely from scratch without AI assistance. It demonstrates Patrick's deep expertise in PrimeFaces, JPA/EclipseLink, and the full Java EE web stack. ## Tech Stack | Component | Technology | |---|---| | **Language** | Java 8 | | **Web Framework** | JSF 2.x (Facelets/XHTML) | | **UI Components** | PrimeFaces 6.2 | | **Persistence** | JPA with EclipseLink | | **Database** | MySQL | | **Build** | Maven | | **App Server** | WildFly/JBoss | | **Security** | JAAS container-managed | ## Project Structure ``` java/wellmann-shop/ ├── src/main/ │ ├── java/ │ │ └── httpauthenticationmechanism/ │ │ ├── ApplicationConfig.java ← JAX-RS app config │ │ └── LoginBean.java ← CDI backing bean for auth │ ├── resources/ │ │ ├── log4j.properties │ │ └── META-INF/persistence.xml ← JPA datasource config │ └── webapp/ │ ├── index.html / index.xhtml ← Landing page │ ├── login.xhtml ← Authentication form │ ├── welcome.xhtml ← Post-login welcome │ ├── welcomePrimefaces.xhtml ← PrimeFaces demo page │ ├── resources/ │ │ ├── css/ ← Custom stylesheets │ │ └── images/ ← Product images │ └── WEB-INF/ │ ├── web.xml ← Servlet config │ ├── jboss-web.xml ← Context root │ └── jboss-app.xml ← JBoss app descriptor ``` ## Key Features - **Authentication** — JAAS-based login with `LoginBean` CDI backing bean - **PrimeFaces UI** — Rich JSF components (DataTable, InputText, CommandButton, etc.) - **JPA Persistence** — EclipseLink ORM with MySQL via `persistence.xml` - **Responsive Layout** — Custom CSS with multiple breakpoint stylesheets - **Image Gallery** — Professional product photography ## Building ```bash cd java/wellmann-shop mvn clean package # Deploy .war to WildFly/JBoss ``` ## Notes - Built as a learning/portfolio project demonstrating JSF mastery - Patrick built this **entirely without AI assistance** — proof of deep Java EE expertise - PrimeFaces 6.2 was current at time of development (Java 8 era) - Modern equivalent would use PrimeFaces 13+ / Jakarta EE 10 / Java 21 ## Source [`java/wellmann-shop/`](../src/branch/main/java/wellmann-shop)