Manual deployment gives you full control over the Tomcat installation and is useful when you need to run CulturarteWeb on a pre-existing server, a shared lab machine, or a remote host via SSH. You can use the includedDocumentation Index
Fetch the complete documentation index at: https://mintlify.com/17Franco/CulturarteWeb/llms.txt
Use this file to discover all available pages before exploring further.
DeployServidorWeb.sh script for a guided flow, or invoke Maven and Tomcat directly.
Prerequisites
Java 21 & Maven 3.x
The project targets Java 21 (
maven.compiler.source=21). Ensure java -version and mvn -version both report the correct versions before building.Tomcat 10.1
A working Tomcat 10.1 installation. The deploy script locates Tomcat automatically by searching for
catalina.sh on the filesystem.SOAP & REST services
The SOAP
ControllerWS service and REST proponentes service must be running on their configured ports before the deployment script will proceed.config.properties
The configuration file must exist at
~/.Culturarte/config.properties. If it is absent, the application creates it from the bundled default on first startup — but the deploy script reads it at build time, so create it beforehand. See Configuration for all keys.Local deployment with the script
DeployServidorWeb.sh provides an interactive menu that orchestrates the full build-and-deploy cycle.
What the script does (option 1 — Deploy Project)
- Reads
WEB_SERVICES_PORTandWEB_SERVICES_PORTRfrom~/.Culturarte/config.properties. - Checks that the SOAP service is listening on
WEB_SERVICES_PORTand the REST service is listening onWEB_SERVICES_PORTR(usinglsof). It also verifies that both ports belong toLab1PA-1.0-SNAPSHOT-jar-with-dependencies.jar— the expected service JAR. - If both services are confirmed running, calls
mvn clean installto compile the project and producetarget/Culturarte.war. - Searches the local filesystem for a
catalina.shbinary to locate the Tomcat installation. - Copies
Culturarte.warto$TOMCAT_HOME/webapps/and starts Tomcat withstartup.sh.
Running the script
Remote deployment via SSH
IfWEB_HOST in ~/.Culturarte/config.properties is set to any value other than localhost, the script automatically switches to remote deployment mode after building the WAR locally.
Remote deployment flow
- The script runs
mvn clean installlocally to producetarget/Culturarte.war. - It connects to
$WEB_HOSTvia SSH to locate Tomcat on the remote machine (by findingcatalina.sh). - It creates
~/.Culturarte/on the remote host if it does not exist. - It copies your local
config.propertiesto the remote~/.Culturarte/via SCP. - It copies
Culturarte.warto the remote$REMOTE_TOMCAT_HOME/webapps/via SCP. - It restarts Tomcat on the remote host (
shutdown.sh, thenstartup.sh) withJAVA_HOMEset to/usr/lib/jvm/java-21-openjdk-amd64.
~/.Culturarte/config.properties:
Manual Maven build (without the script)
If you prefer to drive the build yourself, usemvn clean install directly. The jaxws-maven-plugin needs the SOAP service’s WSDL to be accessible during the generate-sources phase, so pass the correct host and port as system properties:
http://localhost:8080/Culturarte (or at the root if you rename the WAR to ROOT.war).
The final WAR name is
Culturarte.war, set by <finalName>Culturarte</finalName> in pom.xml. The Maven artifact coordinates are Lab2:Lab2PA:1.0-SNAPSHOT, but the output file name is always Culturarte.war regardless of those coordinates.