Tech Tips: Docker dradis-licensed-mysql error: Error creating bean with name 'transactionManager': Cannot resolve reference to bean 'sessionFactory'

Document created by MarcyNunns Employee on Nov 21, 2017
Version 1Show Document
  • View in full screen mode

Issue
I'm trying to start the docker image called dradis-licensed-mysql, but I got an issue (see below). I already started the MySql Image.

userid@ubuntu:~/CA/DevTest/docker/examples/dradis-licensed-mysql$ docker run --name dradis-mysql --link mysql:mysql -P dradis-licensed-mysql:10.1.0.283
Locale: en_US
Setting System.out and System.err to: ANSI_X3.4-1968
DRADIS_HOME set to: /opt/devtest/
Temporary directory is: /root/lisatmp_10.1.0
Logging to: /root/lisatmp_10.1.0/enterprisedashboard.log
Configuring logging from: /opt/devtest/logging.properties

Configuring logging from: /opt/devtest/logging.properties

Error creating bean with name 'transactionManager': Cannot resolve reference to bean 'sessionFactory' while setting bean property 'sessionFactory'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory': Invocation of init method failed; nested exception is java.lang.NullPointerException
alvgu02@ubuntu:~/CA/DevTest/docker/examples/dradis-licensed-mysql$ docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c486bd5fa579 mysql "docker-entrypoint..." 22 minutes ago Up 22 minutes 3306/tcp mysql

5be66a6b0b09 uifd/ui-for-docker "/ui-for-docker" 23 hours ago Up 23 hours 0.0.0.0:9000->9000/tcp quirky_yalow

 

Environment
DevTest supported releases with Dockers on Linux.

 

Cause
1. Missing add the MySQL JDBC connector to the lib/dradis directory.
2. Missing the dradis.properties file definition

 

Resolution
Needed to add the MySQL JDBC connector to the lib/dradis directory.

Rebuilt the container, adding the MySQL JDBC connector to /opt/devtest/lib/dradis and the dradis.properties file to /opt/devtest.


Additional Information

Our docker/examples/dradis-licensed-mysql needs to also have the dradis.properties

Suggest some improvement to documentation in Docker installation indicating that it must follow the same patterns configurations that traditional installation. For example:

1. In docker installation reminds that all files (local.properties, dradis.properties and site.propertties ) of configuration should follow the same rules of traditional installation. In dradis-lincese-mysql image there is just local.properties and I never defined the dradis.properties. For this reason, it didn’t work.

2. In docker installation reminds that all jar files (i.e mysql-connector-java-5.1.33.jar) should follow the same rules of traditional installation. In dradis example I was adding the mysql-connector-java-5.1.33.jar file in lib/shared folder when I must be in lib/dradis folder as well. For this reason, it didn’t work.


3. Update the README file in example images because it is sometimes confusing.


https://support.ca.com/us/knowledge-base-articles.TEC1444662.html

Attachments

    Outcomes