@@ -34,10 +34,39 @@ rm -rf "$DEPLOY_DIR"
3434mkdir -p " $DEPLOY_DIR /WEB-INF/classes" " $DEPLOY_DIR /WEB-INF/lib"
3535cp -r " $WEBAPP_SRC /" * " $DEPLOY_DIR /"
3636
37- # Copy MySQL connector if available
38- if ls " $BMA_ROOT /lib/mysql-connector-j-" * .jar & > /dev/null; then
39- cp " $BMA_ROOT /lib/mysql-connector-j-" * .jar " $DEPLOY_DIR /WEB-INF/lib/"
40- echo " [*] MySQL connector JAR copied to WEB-INF/lib/"
37+ # Copy JARs from jars/ directory (preferred) or lib/
38+ if ls " $BMA_ROOT /jars/" * .jar & > /dev/null; then
39+ cp " $BMA_ROOT /jars/" * .jar " $DEPLOY_DIR /WEB-INF/lib/"
40+ echo " [*] JARs copied from jars/ to WEB-INF/lib/"
41+ elif ls " $BMA_ROOT /lib/" * .jar & > /dev/null; then
42+ cp " $BMA_ROOT /lib/" * .jar " $DEPLOY_DIR /WEB-INF/lib/"
43+ echo " [*] JARs copied from lib/ to WEB-INF/lib/"
44+ fi
45+
46+ # Ensure db.properties exists — prompt if missing
47+ DB_PROPS=" $DEPLOY_DIR /WEB-INF/db.properties"
48+ if [ ! -f " $DB_PROPS " ] || ! grep -q " db.password=." " $DB_PROPS " 2> /dev/null; then
49+ echo " "
50+ echo " [*] db.properties needs MySQL credentials for JSP pages."
51+ read -rp " MySQL user [root]: " DB_USER
52+ DB_USER=" ${DB_USER:- root} "
53+ read -rsp " MySQL password: " DB_PASS
54+ echo " "
55+ read -rp " MySQL host [localhost]: " DB_HOST
56+ DB_HOST=" ${DB_HOST:- localhost} "
57+ read -rp " MySQL port [3306]: " DB_PORT
58+ DB_PORT=" ${DB_PORT:- 3306} "
59+ cat > " $DB_PROPS " << EOF
60+ # BMA Database Configuration — written by deploy-local.sh
61+ db.driver=com.mysql.cj.jdbc.Driver
62+ db.url=jdbc:mysql://${DB_HOST} :${DB_PORT} /BrarnerScience
63+ db.user=${DB_USER}
64+ db.password=${DB_PASS}
65+ EOF
66+ chmod 600 " $DB_PROPS "
67+ echo " [*] db.properties written"
68+ else
69+ echo " [*] db.properties present (user=$( grep ' ^db.user=' " $DB_PROPS " | cut -d= -f2-) )"
4170fi
4271
4372# Compile servlets if javac available and sources exist
@@ -47,8 +76,6 @@ if [ -d "$SERVLET_SRC" ] && command -v javac &>/dev/null; then
4776 find " $SERVLET_SRC " -name " *.java" > /tmp/bma-sources.txt
4877 if [ -s /tmp/bma-sources.txt ]; then
4978 CP=" $DEPLOY_DIR /WEB-INF/lib/*"
50- # Add Jakarta Servlet API from lib if present
51- [ -d " $BMA_ROOT /lib" ] && CP=" $BMA_ROOT /lib/*:$CP "
5279 javac -d " $DEPLOY_DIR /WEB-INF/classes" -cp " $CP " @/tmp/bma-sources.txt 2> /dev/null && \
5380 echo " [*] Servlets compiled" || \
5481 echo " [!] Servlet compilation failed (JSP pages still work without servlets)"
@@ -62,11 +89,9 @@ chown -R tomcat:tomcat "$DEPLOY_DIR" 2>/dev/null || true
6289echo " "
6390echo " [✓] Deployed to: $DEPLOY_DIR "
6491echo " "
65- echo " JSP: index.jsp, species.jsp, postal.jsp, art.jsp, science.jsp, status.jsp"
66- echo " XHTML: index.xhtml, species.xhtml, postal.xhtml, art.xhtml, science.xhtml, status.xhtml"
67- echo " DB: WEB-INF/db.properties"
68- echo " "
69- echo " URL: http://localhost:8080/$CONTEXT /"
92+ echo " JSP: index.jsp, species.jsp, postal.jsp, art.jsp, science.jsp, status.jsp"
93+ echo " DB: WEB-INF/db.properties"
94+ echo " URL: http://localhost:8080/$CONTEXT /"
7095echo " "
7196echo " If Tomcat is running, pages are available immediately."
7297echo " Otherwise: sudo systemctl start tomcat"
0 commit comments