Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/LucaXGit/proyecto-final-jaz/llms.txt

Use this file to discover all available pages before exploring further.

Tienda de Playeras is a Service-Oriented Architecture (SOA) project built as part of a university course on service-oriented systems. It consists of two independent components: a Java/Jakarta EE 10 REST backend deployed on Apache Tomcat and a Laravel 12 PHP frontend that communicates with it over HTTP. Together they provide a complete product catalog with full CRUD operations and real-time inventory management.

Architecture Overview

Understand how the Java backend and Laravel frontend interact through the SOA pattern.

Server Setup

Deploy the Java backend WAR on Apache Tomcat with MySQL.

Client Setup

Configure and run the Laravel frontend to connect to the backend.

API Reference

Full reference for every endpoint exposed by ProductoServlet.

Quick Start

Get both services running locally in four steps.
1

Set up the database

Create a MySQL database named tienda_playeras and add a productos table with columns id, nombre, talla, precio, and stock.
2

Build and deploy the Java server

Build ServidorTiendaPlayeras with Maven (mvn package) and deploy the generated WAR to Apache Tomcat on port 8080.
3

Configure the Laravel client

Copy .env.example to .env, set your APP_KEY, and run composer install followed by php artisan serve in the ClienteTiendaPlayeras directory.
4

Open the store

Navigate to http://localhost:8000 to see the product catalog. Add, edit, delete, and sell t-shirts from the dashboard.

Key Features

Full CRUD Catalog

Create, read, update, and delete t-shirt products with name, size, price, and stock fields.

Inventory Management

Atomic stock decrement on every sale prevents overselling even under concurrent requests.

CORS-enabled REST API

The Java backend supports GET, POST, PUT, DELETE, and OPTIONS, making it usable by any HTTP client.

Bootstrap 5 UI

Responsive product card grid with per-product edit modals and quantity-based sell forms.

Build docs developers (and LLMs) love