Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/dinogamer089/SiCom/llms.txt

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

Getting SiCom up and running on your local machine takes fewer than ten minutes. You will clone the repository, create a MySQL database, update the JPA connection properties, build all four Maven modules with a single command, and drop the resulting WAR into Tomcat. By the end you will have a fully functional rental management system accessible in your browser.

Prerequisites

Before you begin, make sure the following tools are installed and available on your PATH:
  • Java 21 (JDK, not JRE) — required by all four Maven modules
  • Maven 3.9+ — used to build the multi-module project from the repo root
  • MySQL 8+ — the relational database backend
  • Apache Tomcat 10.1+ — the target servlet container; earlier versions do not support the Jakarta EE 10 namespace

Steps

1

Clone the repository

Clone the SiCom source repository to your local machine:
git clone https://github.com/dinogamer089/SiCom.git
cd SiCom
The repository root contains the parent pom.xml and four subdirectories: entidad/, persistencia/, negocio/, and vista/.
2

Create the MySQL database

Log in to your MySQL 8 server and create the sicom (or desarrollo) database:
CREATE DATABASE sicom CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
Then run the full DDL migration script to create all tables, indexes, and foreign keys. See Database Setup for the complete SQL file and a description of every table.
3

Configure persistence.xml

Open persistencia/src/main/resources/META-INF/persistence.xml and update the JDBC connection properties to match your environment:
<properties>
    <property name="jakarta.persistence.jdbc.driver"
              value="com.mysql.cj.jdbc.Driver"/>
    <property name="jakarta.persistence.jdbc.url"
              value="jdbc:mysql://localhost:3307/desarrollo?useSSL=false&amp;serverTimezone=UTC&amp;allowPublicKeyRetrieval=true"/>
    <property name="jakarta.persistence.jdbc.user"
              value="root"/>
    <property name="jakarta.persistence.jdbc.password"
              value="bnleon19"/>

    <property name="hibernate.show_sql"       value="true"/>
    <property name="hibernate.format_sql"     value="true"/>
    <property name="hibernate.hbm2ddl.auto"   value="validate"/>

    <property name="hibernate.hikari.minimumIdle"     value="5"/>
    <property name="hibernate.hikari.maximumPoolSize" value="10"/>
    <property name="hibernate.hikari.idleTimeout"     value="30000"/>
</properties>
Change localhost:3307 to your MySQL host and port, and replace root / bnleon19 with your actual credentials. The database name in the URL must match the schema you created in the previous step.
Never commit real database credentials to version control. Use environment-variable substitution or a secrets manager before deploying to a shared or production environment.
4

Build all modules

From the repository root, run a full clean build. Maven will compile and install the four modules in dependency order — entidad first, then persistencia, negocio, and finally vista:
mvn clean install
A successful build prints BUILD SUCCESS and places the deployable archive at vista/target/vista.war. If compilation fails, verify that JAVA_HOME points to a Java 21 JDK and that your Maven settings.xml can reach Maven Central.
5

Deploy to Tomcat

Copy the WAR file to your Tomcat webapps/ directory, then start (or restart) Tomcat:
cp vista/target/vista.war $CATALINA_HOME/webapps/
$CATALINA_HOME/bin/startup.sh   # Linux / macOS
# or
%CATALINA_HOME%\bin\startup.bat  # Windows
Tomcat will automatically unpack and deploy the application. Once startup completes, open your browser and navigate to:
http://localhost:8080/vista/
Tomcat will redirect you to the login page (AutenticacionUsuario.xhtml).
6

Log in

The welcome file configured in web.xml is AutenticacionUsuario.xhtml. Enter your administrator email and password to access the admin dashboard, or your employee credentials to reach the employee rental view.
  • Administrator → redirected to principalAdministrador.xhtml
  • Employee → redirected to RentasEmpleado.xhtml
If this is a fresh install, create an initial administrator record directly in the administrador table or use the bootstrap endpoint described in Administrator Role.
The PrimeFaces theme is set to saga in web.xml via the primefaces.THEME context parameter. To switch themes, change this value to any PrimeFaces-bundled theme name (e.g., lara-light-blue, arya-blue) and redeploy the WAR. Client-side validation and Font Awesome icons are also enabled by default.

What’s Next

Architecture

Learn how the four Maven modules are layered and how a request flows from XHTML to MySQL.

Article Catalog

Add categories, upload article images, and manage stock levels.

Database Setup

Full DDL script, table descriptions, and migration guidance.

Administrator Role

Permissions, available views, and initial account creation.

Build docs developers (and LLMs) love