# Getting Started

## What This Project Does
This codebase is a Java web application configured as a JSF-based web app. The current repo snapshot is very small, so the fastest way to understand it is to start from the deployment descriptor and trace outward from there.

## Recommended Reading Order
1. **This guide** — get the high-level map first.
2. **Deployment configuration** — read [`full-fixture-codebase/koptWebA/WebContent/WEB-INF/web-full.xml`](../../full-fixture-codebase/koptWebA/WebContent/WEB-INF/web-full.xml) to see which filters and servlets are active.
3. **Framework and UI code** — then follow the JSF `FacesServlet` entry point into the application’s page and backing-bean code.

## Key Entry Points
There are no highly referenced classes surfaced in this snapshot. Start with the configured entry points instead:
- [`full-fixture-codebase/koptWebA/WebContent/WEB-INF/web-full.xml`](../../full-fixture-codebase/koptWebA/WebContent/WEB-INF/web-full.xml) — defines the web app bootstrap wiring.
- `javax.faces.webapp.FacesServlet` — JSF request handling entry point.
- `com.fujitsu.futurity.web.x33.filter.X33JVRequestEncodingSjisFilter` — request encoding filter applied to incoming traffic.

## Project Structure
The repo currently exposes a single Java web module under `full-fixture-codebase/koptWebA/`.

A practical mental model:
- `WebContent/WEB-INF/` — deployment and framework configuration.
- JSF pages and supporting web assets live under the web content tree.
- Java code for filters, backing beans, and helpers is expected under the standard source tree for the module, even though only the deployment descriptor is visible in this snapshot.

## Configuration
The main configuration file in this snapshot is:
- [`full-fixture-codebase/koptWebA/WebContent/WEB-INF/web-full.xml`](../../full-fixture-codebase/koptWebA/WebContent/WEB-INF/web-full.xml) — declares:
  - `SjisFilter`, which routes requests through `com.fujitsu.futurity.web.x33.filter.X33JVRequestEncodingSjisFilter`
  - `FacesServlet`, which enables JSF request processing via `javax.faces.webapp.FacesServlet`

If you are debugging startup or request handling, this is the first file to inspect.

## Common Patterns
- **XML-driven wiring** — runtime behavior is controlled from deployment descriptors rather than code annotations in the visible snapshot.
- **Servlet filter first, framework servlet second** — request encoding is handled before JSF dispatch.
- **Standard Java web app layout** — expect configuration in `WEB-INF` and JSF-managed request flow through `FacesServlet`.

## Where to Go Next
After you understand the deployment descriptor, look for:
- the JSF view pages that are routed through `FacesServlet`
- the filter implementation behind `X33JVRequestEncodingSjisFilter`
- any backing beans or controllers tied to the initial pages

That path will give you the quickest route from HTTP request to application behavior.