cd /wildfly-21.0.2.Final/bin
./standalone.sh&
[standalone@localhost:9990 /] module add --name=com.mysql.driver --dependencies=javax.api,javax.transaction.api --resources=/PATH/TO/mysql-connector-java-8.0 .13.jar
/wildfly-21.0.2.Final/modules/system/layers/base/com/mysql/driver/main
/wildfly-21.0.2.Final/modules/com/mysql/driver/main
/wildfly-21.0.2.Final/modules/system/layers/base/com/mysql/driver/main
[standalone@localhost:9990 /] /subsystem=datasources/jdbc-driver=mysql/:add(driver-module-name=com.mysql.driver,driver-name=mysql,jdbc-compliant=false,driver-class- name=com.mysql.cj.jdbc.Driver)
<datasources>
<datasource >
...
</datasource>
<drivers>
...
<driver name="mysql" module="com.mysql.driver">
<driver-class>com.mysql.cj.jdbc.Driver</driver-class>
</driver>
</drivers>
</datasources>
$ sudo docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name
sudo docker ps -a
sudo docker run --net host -p 8080:8080 -p 9990:9990 -d image-id
jdbc:mysql://127.0.0.1:3306/Mydatabase
version: "3.8"
services:
mysql_db:
image: mysql:8.0
networks:
- jsf-app-network
container_name: mysql_db
restart: always
volumes:
- ./database-initialization:/docker-entrypoint-initdb.d/
ports:
- 3306:3306
environment:
- MYSQL_ROOT_PASSWORD=rootpassword
- MYSQL_DATABASE=Mydatabase
healthcheck:
test: mysql --user=root --password=rootpassword Mydatabase -e 'select count(*) from user;'
interval: 10s
timeout: 300s
retries: 10
api_service:
image: jboss/wildfly:21.0.2.Final
networks:
- jsf-app-network
container_name: api_service
build:
context: .
dockerfile: DockerfileJDK
restart: on-failure
ports:
- 8080:8080
- 9990:9990
environment:
MYSQL_USER: root
MYSQL_PASSWORD: rootpassword
MYSQL_DATABASE: Mydatabase
MYSQL_HOST: mysql_db
depends_on:
mysql_db:
condition: service_healthy
networks:
jsf-app-network:
external: false
name: jsf-app-network
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at [email protected]//com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)
at [email protected]//com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64)
at [email protected]//com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835)
at [email protected]//com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:455)
at [email protected]//com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240)
at [email protected]//com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:207)
at [email protected]//org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:321)
... 35 more
Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure
FROM jboss/wildfly:21.0.2.Final
RUN /opt/jboss/wildfly/bin/add-user.sh admin Admin
ADD ./dockerfolder/backend/main/mysql-connector-java-8.0.13.jar /opt/jboss/wildfly/modules/com/mysql/driver/main/mysql-connector-java-8.0.13.jar
ADD ./dockerfolder/backend/main/module.xml /opt/jboss/wildfly/modules/com/mysql/driver/main/module.xml
ADD ./dockerfolder/backend/main/mysql-connector-java-8.0.13.jar /opt/jboss/wildfly/modules/com/mysql/driver/main/mysql-connector-java-8.0.13.jar
ADD ./dockerfolder/backend/main/module.xml /opt/jboss/wildfly/modules/com/mysql/driver/main/module.xml
ADD ./dockerfolder/backend/main/mysql-connector-java-8.0.13.jar /opt/jboss/wildfly/modules/system/layers/base/com/mysql/driver/main/mysql-connector-java-8.0.13.jar
ADD ./dockerfolder/backend/main/module.xml /opt/jboss/wildfly/modules/system/layers/base/com/mysql/driver/main/module.xml
COPY ./dockerfolder/backend/standalone.xml /opt/jboss/wildfly/standalone/configuration/standalone.xml
CMD ["/opt/jboss/wildfly/bin/standalone.sh", "-b", "0.0.0.0", "-bmanagement", "0.0.0.0"]
<?xml version='1.0' encoding='UTF-8'?>
<module xmlns="urn:jboss:module:1.1" name="com.mysql.driver">
<resources>
<resource-root path="mysql-connector-java-8.0.13.jar"/>
</resources>
<dependencies>
<module name="javax.api"/>
<module name="javax.transaction.api"/>
</dependencies>
</module>
<subsystem xmlns="urn:jboss:domain:datasources:6.0">
<datasources>
<datasource jndi-name="java:jboss/datasources/ExampleDS" pool-name="ExampleDS" enabled="true" use-java-context="true" statistics-enabled="${wildfly.datasources.statistics-enabled:${wildfly.statistics-enabled:false}}">
<connection-url>jdbc:h2:mem:test;DB_CLOSE_DELAY=-1;DB_CLOSE_ON_EXIT=FALSE</connection-url>
<driver>h2</driver>
<security>
<user-name>sa</user-name>
<password>sa</password>
</security>
</datasource>
<datasource jndi-name="java:/MySqlDS" pool-name="MySqlDS">
<connection-url>jdbc:mysql://127.0.0.1:3306/Mydatabase</connection-url>
<driver-class>com.mysql.cj.jdbc.Driver</driver-class>
<driver>mysql</driver>
<security>
<user-name>root</user-name>
<password>rootpassword</password>
</security>
<validation>
<valid-connection-checker class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLValidConnectionChecker"/>
<background-validation>true</background-validation>
<exception-sorter class-name="org.jboss.jca.adapters.jdbc.extensions.mysql.MySQLExceptionSorter"/>
</validation>
</datasource>
<drivers>
<driver name="h2" module="com.h2database.h2">
<xa-datasource-class>org.h2.jdbcx.JdbcDataSource</xa-datasource-class>
</driver>
<driver name="mysql" module="com.mysql.driver">
<driver-class>com.mysql.cj.jdbc.Driver</driver-class>
</driver>
</drivers>
</datasources>
</subsystem>
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at [email protected]//com.mysql.cj.jdbc.exceptions.SQLError.createCommunicationsException(SQLError.java:174)
at [email protected]//com.mysql.cj.jdbc.exceptions.SQLExceptionsMapping.translateException(SQLExceptionsMapping.java:64)
at [email protected]//com.mysql.cj.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:835)
at [email protected]//com.mysql.cj.jdbc.ConnectionImpl.<init>(ConnectionImpl.java:455)
at [email protected]//com.mysql.cj.jdbc.ConnectionImpl.getInstance(ConnectionImpl.java:240)
at [email protected]//com.mysql.cj.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:207)
at [email protected]//org.jboss.jca.adapters.jdbc.local.LocalManagedConnectionFactory.createLocalManagedConnection(LocalManagedConnectionFactory.java:321)
... 35 more
Caused by: com.mysql.cj.exceptions.CJCommunicationsException: Communications link failure
api_service_1 | 12:11:21,179 INFO [org.jboss.weld.Bootstrap] (Weld Thread Pool -- 7) WELD-000119: Not generating any bean definitions from jsf-manage.department.dao.AppSettingDAOImpl because of underlying class loading error: Type SessionFactory from [Module "JSF-Manage-Department.war" from Service Module Loader] not found. If this is unexpected, enable DEBUG logging to see the full error.
api_service_1 | Exception 1 :
api_service_1 | org.jboss.weld.exceptions.DeploymentException: WELD-001408: Unsatisfied dependencies for type AppSettingDAO with qualifiers @Default
api_service_1 | at injection point [BackedAnnotatedField] @Inject private jsf-manage.department.service.AppSettingMB.appSettingDAO
api_service_1 | at jsf-manage.department.service.AppSettingMB.appSettingDAO(AppSettingMB.java:0)
api_service_1 |
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:378)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:290)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateGeneralBean(Validator.java:143)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:164)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:526)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.ConcurrentValidator$1.doWork(ConcurrentValidator.java:64)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.ConcurrentValidator$1.doWork(ConcurrentValidator.java:62)
api_service_1 | at [email protected]//org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:62)
api_service_1 | at [email protected]//org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:55)
api_service_1 | at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
api_service_1 | at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
api_service_1 | at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
api_service_1 | at java.base/java.lang.Thread.run(Thread.java:834)
api_service_1 | at [email protected]//org.jboss.threads.JBossThread.run(JBossThread.java:513)
api_service_1 | Exception 1 :
api_service_1 | org.jboss.weld.exceptions.DeploymentException: WELD-001408: Unsatisfied dependencies for type AppSettingDAO with qualifiers @Default
api_service_1 | at injection point [BackedAnnotatedField] @Inject private jsf-manage.department.service.AppSettingMB.appSettingDAO
api_service_1 | at jsf-manage.department.service.AppSettingMB.appSettingDAO(AppSettingMB.java:0)
api_service_1 |
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateInjectionPointForDeploymentProblems(Validator.java:378)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateInjectionPoint(Validator.java:290)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateGeneralBean(Validator.java:143)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateRIBean(Validator.java:164)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.Validator.validateBean(Validator.java:526)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.ConcurrentValidator$1.doWork(ConcurrentValidator.java:64)
api_service_1 | at [email protected]//org.jboss.weld.bootstrap.ConcurrentValidator$1.doWork(ConcurrentValidator.java:62)
api_service_1 | at [email protected]//org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:62)
api_service_1 | at [email protected]//org.jboss.weld.executor.IterativeWorkerTaskFactory$1.call(IterativeWorkerTaskFactory.java:55)
api_service_1 | at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
api_service_1 | at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
api_service_1 | at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
api_service_1 | at java.base/java.lang.Thread.run(Thread.java:834)
api_service_1 | at [email protected]//org.jboss.threads.JBossThread.run(JBossThread.java:513)
<properties>
<springframework.version>5.3.19</springframework.version>
<springsecurity.version>5.6.3</springsecurity.version>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-core</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-tx</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>${springframework.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-entitymanager</artifactId>
<version>5.6.8.Final</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.6.8.Final</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>8.0.13</version>
</dependency>
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
<version>1</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjrt</artifactId>
<version>1.9.9.1</version>
</dependency>
<dependency>
<groupId>commons-dbcp</groupId>
<artifactId>commons-dbcp</artifactId>
<version>1.4</version>
</dependency>
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-api</artifactId>
<version>2.2.20</version>
</dependency>
<dependency>
<groupId>com.sun.faces</groupId>
<artifactId>jsf-impl</artifactId>
<version>2.2.20</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.1</version>
</dependency>-->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.30</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>jsp-api</artifactId>
<version>2.1</version>
</dependency>
<dependency>
<groupId>com.sun.el</groupId>
<artifactId>el-ri</artifactId>
<version>1.0</version>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>7.0</version>
</dependency>
<dependency>
<groupId>org.webjars</groupId>
<artifactId>jquery</artifactId>
<version>2.1.1</version>
</dependency>
<dependency>
<groupId>org.webjars</groupId>
<artifactId>bootstrap</artifactId>
<version>5.1.3</version>
</dependency>
<dependency>
<groupId>org.webjars</groupId>
<artifactId>webjars-locator-core</artifactId>
<version>0.48</version>
</dependency>
<dependency>
<groupId>org.webjars</groupId>
<artifactId>font-awesome</artifactId>
<version>6.0.0</version>
</dependency>
<dependency>
<groupId>org.primefaces</groupId>
<artifactId>primefaces</artifactId>
<version>11.0.0</version>
</dependency>
<dependency>
<groupId>com.lowagie</groupId>
<artifactId>itext</artifactId>
<version>2.1.7</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-web</artifactId>
<version>5.3.19</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>${springsecurity.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>${springsecurity.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>${springsecurity.version}</version>
</dependency>
<dependency>
<groupId>com.github.jepsar</groupId>
<artifactId>timeago-jsf</artifactId>
<version>1.0</version>
</dependency>
</dependencies>
api_service_1 | 01:52:22,325 INFO [org.jboss.as.clustering.infinispan] (ServerService Thread Pool -- 80) WFLYCLINF0002: Started http-remoting-connector cache from ejb container
api_service_1 | 01:52:22,988 ERROR [org.jboss.as.controller.management-operation] (Controller Boot Thread) WFLYCTL0013: Operation ("deploy") failed - address: ([("deployment" => "JSF-Manage-Department.war")]) - failure description: {"WFLYCTL0080: Failed services" => {
api_service_1 | "jboss.deployment.unit.\"JSF-Manage-Department.war\".component.\"org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseAsyncListener\".WeldInstantiator" => "Failed to start service
api_service_1 | Caused by: org.jboss.weld.resources.spi.ResourceLoadingException: Error while loading class org.springframework.http.server.reactive.ServletServerHttpResponse$ResponseAsyncListener
api_service_1 | Caused by: java.lang.NoClassDefFoundError: Failed to link org/springframework/http/server/reactive/ServletServerHttpResponse$ResponseBodyProcessor (Module \"deployment.JSF-Manage-Department.war\" from Service Module Loader): Failed to link org/springframework/http/server/reactive/AbstractListenerWriteProcessor (Module \"deployment.JSF-Manage-Department.war\" from Service Module Loader): org/reactivestreams/Processor",
api_service_1 | "jboss.deployment.unit.\"JSF-Manage-Department.war\".component.\"org.springframework.http.server.reactive.ServletServerHttpRequest$RequestAsyncListener\".WeldInstantiator" => "Failed to start service
api_service_1 | Caused by: org.jboss.weld.resources.spi.ResourceLoadingException: Error while loading class org.springframework.http.server.reactive.ServletServerHttpRequest$RequestAsyncListener
api_service_1 | Caused by: java.lang.NoClassDefFoundError: Failed to link org/springframework/http/server/reactive/ServletServerHttpRequest$RequestBodyPublisher (Module \"deployment.JSF-Manage-Department.war\" from Service Module Loader): Failed to link org/springframework/http/server/reactive/AbstractListenerReadPublisher (Module \"deployment.JSF-Manage-Department.war\" from Service Module Loader): org/reactivestreams/Publisher",
api_service_1 | "jboss.deployment.unit.\"JSF-Manage-Department.war\".component.\"org.springframework.http.server.reactive.ServletHttpHandlerAdapter$HttpHandlerAsyncListener\".WeldInstantiator" => "Failed to start service