@@ -124,6 +124,42 @@ else
124124 mark_skip " No jars/ directory — skipping JAR sync"
125125fi
126126
127+ # ─── JDBC driver check ───
128+ echo " "
129+ echo " [4b] JDBC driver verification..."
130+
131+ JDBC_JAR=$( find " $DEPLOY_DIR /WEB-INF/lib/" -name " mysql-connector-j*" -o -name " mysql-connector-java*" 2> /dev/null | head -1)
132+ if [ -n " $JDBC_JAR " ]; then
133+ mark_ok " MySQL JDBC driver present: $( basename " $JDBC_JAR " ) "
134+ else
135+ # Try to find it in source locations and copy
136+ FOUND_JAR=" "
137+ for SEARCH in " $BMA_ROOT /jars" " $BMA_ROOT /lib" " /opt/tomcat/lib" ; do
138+ FOUND_JAR=$( find " $SEARCH " -name " mysql-connector-j*" 2> /dev/null | head -1)
139+ [ -n " $FOUND_JAR " ] && break
140+ done
141+ if [ -n " $FOUND_JAR " ]; then
142+ mkdir -p " $DEPLOY_DIR /WEB-INF/lib"
143+ cp " $FOUND_JAR " " $DEPLOY_DIR /WEB-INF/lib/"
144+ mark_fix " JDBC driver copied: $( basename " $FOUND_JAR " ) → WEB-INF/lib/"
145+ NEEDS_TOMCAT_RESTART=1
146+ else
147+ mark_fail " MySQL JDBC driver NOT FOUND in WEB-INF/lib/, jars/, lib/, or /opt/tomcat/lib/"
148+ echo " Download: https://dev.mysql.com/downloads/connector/j/"
149+ echo " Or run: bash install/download-jars.sh"
150+ fi
151+ fi
152+
153+ # Also check Tomcat's shared lib as alternative classpath location
154+ TOMCAT_LIB_JDBC=$( find " $TOMCAT_HOME /lib/" -name " mysql-connector-j*" 2> /dev/null | head -1)
155+ if [ -n " $TOMCAT_LIB_JDBC " ]; then
156+ mark_ok " JDBC driver also in Tomcat shared lib: $( basename " $TOMCAT_LIB_JDBC " ) "
157+ elif [ -n " $JDBC_JAR " ] && [ ! -f " $TOMCAT_HOME /lib/$( basename " $JDBC_JAR " ) " ]; then
158+ # Symlink from WEB-INF/lib to Tomcat shared lib for reliability
159+ ln -sf " $JDBC_JAR " " $TOMCAT_HOME /lib/$( basename " $JDBC_JAR " ) " 2> /dev/null && \
160+ mark_fix " JDBC driver symlinked to $TOMCAT_HOME /lib/" || true
161+ fi
162+
127163# ─── Ownership & symlinks ───
128164chown -R tomcat:tomcat " $DEPLOY_DIR " 2> /dev/null || true
129165ln -sfn " $DEPLOY_DIR " " $BMA_ROOT /www" 2> /dev/null || true
0 commit comments