diff --git a/smp-docker/images/build-docker-images.sh b/smp-docker/images/build-docker-images.sh index 9be88be6a2c2a9e89c0f048bc9485f86f73bb22e..b48b2faffff2ace8a0e8ec490916af81e0f48b61 100755 --- a/smp-docker/images/build-docker-images.sh +++ b/smp-docker/images/build-docker-images.sh @@ -167,7 +167,20 @@ validateAndPrepareArtefacts() { # build docker images # ----------------------------------------------------------------------------- buildImages() { + #buildOracleDatabaseImage + #buildWebLogicOracleImages + buildTomcatMysqlImages +} +buildTomcatMysqlImages() { + # build tomcat mysql image deployment. + docker build -t "smp-sml-tomcat-mysql:${SMP_VERSION}" ./tomcat-mysql-smp-sml/ --build-arg SMP_VERSION=${SMP_VERSION} + if [ $? -ne 0 ]; then + echo "Error occurred while building image [smp-sml-tomcat-mysql:${SMP_VERSION}]!" + exit 10 + fi +} +buildOracleDatabaseImage(){ # ----------------------------------------------------------------------------- # build docker image for oracle database # ----------------------------------------------------------------------------- @@ -177,6 +190,9 @@ buildImages() { echo "Error occurred while building image [smp-oradb-${ORA_VERSION}-${ORA_EDITION}:${SMP_VERSION}]!" exit 10 fi +} + +buildWebLogicOracleImages(){ # ----------------------------------------------------------------------------- # build docker image for oracle database # ----------------------------------------------------------------------------- @@ -200,12 +216,6 @@ buildImages() { echo "Error occurred while building image [smp-weblogic-122:${SMP_VERSION}]!" exit 10 fi - # build tomcat mysql image deployment. - docker build -t "smp-sml-tomcat-mysql:${SMP_VERSION}" ./tomcat-mysql-smp-sml/ --build-arg SMP_VERSION=${SMP_VERSION} - if [ $? -ne 0 ]; then - echo "Error occurred while building image [smp-sml-tomcat-mysql:${SMP_VERSION}]!" - exit 10 - fi } function pushImageToDockerhub() { diff --git a/smp-docker/images/tomcat-mysql-smp-sml/Dockerfile b/smp-docker/images/tomcat-mysql-smp-sml/Dockerfile index 2937ad03582b7da9381d0b3332633ed431988c79..7b2f0701ed4510a41d24f7aef2519c4aaa43589b 100755 --- a/smp-docker/images/tomcat-mysql-smp-sml/Dockerfile +++ b/smp-docker/images/tomcat-mysql-smp-sml/Dockerfile @@ -1,4 +1,4 @@ -FROM ubuntu:18.04 +FROM ubuntu:22.04 MAINTAINER Joze Rihtarsic ARG SMP_VERSION @@ -6,13 +6,12 @@ ARG SMP_LOGICAL_ADDRESS="${SMP_LOGICAL_ADDRESS:-http://localhost:8080/smp/}" # Set the SMP_VERSION env variable \ ENV SMP_HOME=/opt/smp \ - MYSQL_DRV_VERSION=5.1.46 \ - MYSQL_DRV_SHA1=9a3e63b387e376364211e96827bc27db8d7a92e9 \ - TOMCAT_MAJOR=8 \ - TOMCAT_VERSION=8.5.73 \ - #native version is dependant from tomcat version! - TOMCAT_NAVITVE_VERSION=1.2.31 \ - TOMCAT_SHA512=bc39e4545c779326803bc2574592d72dfea1b56e4cb95d7ac5264c1b91f3da8b1b94f53c53390d1c8348ebe1dad2c10719cc2746b179e1085719d964aa60a779 \ + MYSQL_DRV_VERSION=5.1.49 \ + MYSQL_DRV_SHA1=cf76d2e4c9c3782a85c15c87bec5772b34ffd0e5 \ + TOMCAT_MAJOR=9 \ + TOMCAT_VERSION=9.0.65 \ + TOMCAT_NAVITVE_VERSION=1.2.35 \ + TOMCAT_SHA512=00e1ba9139969e6bf056b7e862a4bfb6a13d62208170d4081e18fa45ffa42f6a1fed6d78931e7f7dd64b7dd746e0cee066592204c277528b7aab5d9f29322bd7 \ SMP_DB_SCHEMA=smp \ SMP_DB_USER=smp \ SMP_INIT_PROPERTY_DELIMITER="||" \ @@ -29,12 +28,13 @@ ENV SMP_HOME=/opt/smp \ SML_DB_USER_PASSWORD=sml \ BIND_USER=bind \ # misc variables - JACOCO_VERSION=0.8.4 \ - LANG=en_US.utf8 \ - LD_LIBRARY_PATH=/usr/local/apr/lib \ + JACOCO_VERSION=0.8.8 \ + JACOCO_SHA512=bc9bbd10434900e7b48e68678cb280173db86489cdd320552089eb91bb470e7297d2f6f4f595907c35747c36cfa212f3fac71eb4005fce6c65451505e17d19a2 \ + LANG=en_US.utf8 \ + LD_LIBRARY_PATH=/usr/local/apr/lib \ # set debug - JPDA_ADDRESS="5005" \ - JPDA_TRANSPORT="dt_socket" + JPDA_ADDRESS="5005" \ + JPDA_TRANSPORT="dt_socket" # Exposing ports used in entrypoint.sh .. @@ -82,7 +82,7 @@ RUN apt-get update \ && mkdir -p $SMP_HOME/apache-tomcat-$TOMCAT_VERSION/classes/ \ && echo "export CLASSPATH=$SMP_HOME/apache-tomcat-$TOMCAT_VERSION/classes" > $SMP_HOME/apache-tomcat-$TOMCAT_VERSION/bin/setenv.sh \ # add sml and smp datasource - && sed -i -e "s/<\/Context>/<Resource name=\"jdbc\/eDeliverySmpDs\" auth=\"Container\" type=\"javax.sql.DataSource\" maxTotal=\"100\" maxIdle=\"30\" maxWaitMillis=\"10000\" username=\"$SMP_DB_USER\" password=\"$SMP_DB_USER_PASSWORD\" driverClassName=\"com.mysql.jdbc.Driver\" url=\"jdbc:mysql:\/\/localhost:3306\/$SMP_DB_SCHEMA?useSSL=false\&characterEncoding=UTF-8\&useUnicode=true\"\/>\\n<Resource name=\"jdbc\/eDeliverySmlDs\" auth=\"Container\" type=\"javax.sql.DataSource\" maxTotal=\"100\" maxIdle=\"30\" maxWaitMillis=\"10000\" username=\"$SML_DB_USER\" password=\"$SML_DB_USER_PASSWORD\" driverClassName=\"com.mysql.jdbc.Driver\" url=\"jdbc:mysql:\/\/localhost:3306\/$SML_DB_SCHEMA?useSSL=false\&characterEncoding=UTF-8\&useUnicode=true\"\/><\/Context>/g" "$SMP_HOME/apache-tomcat-$TOMCAT_VERSION/conf/context.xml" \ + && sed -i -e "s/<\/Context>/<Resource name=\"jdbc\/eDeliverySmpDs\" auth=\"Container\" type=\"javax.sql.DataSource\" maxTotal=\"100\" maxIdle=\"30\" maxWaitMillis=\"10000\" username=\"$SMP_DB_USER\" password=\"$SMP_DB_USER_PASSWORD\" driverClassName=\"com.mysql.jdbc.Driver\" url=\"jdbc:mysql:\/\/localhost:3306\/$SMP_DB_SCHEMA?characterEncoding=UTF-8\&useUnicode=true\"\/>\\n<Resource name=\"jdbc\/eDeliverySmlDs\" auth=\"Container\" type=\"javax.sql.DataSource\" maxTotal=\"100\" maxIdle=\"30\" maxWaitMillis=\"10000\" username=\"$SML_DB_USER\" password=\"$SML_DB_USER_PASSWORD\" driverClassName=\"com.mysql.jdbc.Driver\" url=\"jdbc:mysql:\/\/localhost:3306\/$SML_DB_SCHEMA?characterEncoding=UTF-8\&useUnicode=true\"\/><\/Context>/g" "$SMP_HOME/apache-tomcat-$TOMCAT_VERSION/conf/context.xml" \ && sed -i -e "s/<Connector /<Connector URIEncoding=\"UTF-8\" /g" "$SMP_HOME/apache-tomcat-$TOMCAT_VERSION/conf/server.xml" \ # add SMP init configuration && echo "datasource.jndi=java:comp/env/jdbc/eDeliverySmpDs" > $SMP_HOME/apache-tomcat-$TOMCAT_VERSION/classes/smp.config.properties \ diff --git a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/data/model/DBUser.java b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/data/model/DBUser.java index d55a2a055d05e5e54a444f4c719f4875de65f23d..e91bd618b3af256b7f8c74613318c2ecc7754f0d 100644 --- a/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/data/model/DBUser.java +++ b/smp-server-library/src/main/java/eu/europa/ec/edelivery/smp/data/model/DBUser.java @@ -27,10 +27,10 @@ import java.util.Objects; @org.hibernate.annotations.Table(appliesTo = "SMP_USER", comment = "SMP can handle multiple domains. This table contains domain specific data") @NamedQueries({ // case insesitive search - @NamedQuery(name = "DBUser.getUserByUsernameInsensitive", query = "SELECT u FROM DBUser u WHERE lower(u.username) = lower(:username)"), + @NamedQuery(name = "DBUser.getUserByUsernameInsensitive", query = "SELECT u FROM DBUser u WHERE upper(u.username) = upper(:username)"), @NamedQuery(name = "DBUser.getUserByCertificateId", query = "SELECT u FROM DBUser u WHERE u.certificate.certificateId = :certificateId"), @NamedQuery(name = "DBUser.getUserByPatId", query = "SELECT u FROM DBUser u WHERE u.accessTokenIdentifier = :patId"), - @NamedQuery(name = "DBUser.getUserByCertificateIdCaseInsensitive", query = "SELECT u FROM DBUser u WHERE lower(u.certificate.certificateId) = lower(:certificateId)"), + @NamedQuery(name = "DBUser.getUserByCertificateIdCaseInsensitive", query = "SELECT u FROM DBUser u WHERE upper(u.certificate.certificateId) = upper(:certificateId)"), @NamedQuery(name = "DBUser.getUsersForBeforePasswordExpireAlerts", query = "SELECT u FROM DBUser u WHERE u.passwordExpireOn IS NOT NULL" + " AND u.passwordExpireOn <= :startAlertDate " +