Our Spectrum Report Manager (SRM) no longer works. We see an error on the OneClick web pages related to JasperSoft e.g. "Jasper Console" or "Jasper Integration" etc, saying
"SRM has not finished starting".
The tomcat log from the SRM OneClick server, shows various connection errors, as below.
Restarting the Spectrum Tomcat service, shows no errors or exceptions, in the new tomcat log.
However, we still have the same SRM problem and see the same error on the Web page.
java.sql.SQLException: SQL connection lost
at com.aprisma.util.mysql.Database.reconnect(Database.java:509)
at com.aprisma.util.mysql.Database.reconnect(Database.java:485)
at com.aprisma.spectrum.app.slm.web.stat.SLMDbRead.getPreparedStatement(SLMDbRead.java:1522)
at com.aprisma.spectrum.app.slm.web.stat.SLMDbRead.monitorOutageExists(SLMDbRead.java:4964)
at com.aprisma.spectrum.app.slm.web.stat.SLMDbReadWrite.addMonitorOutage(SLMDbReadWrite.java:5204)
at com.aprisma.spectrum.app.slm.web.stat.SLMServiceAvailabilityHandler.insertMonitorOutage(SLMServiceAvailabilityHandler.java:3971)
at com.aprisma.spectrum.app.slm.web.stat.SLMServiceAvailabilityHandler.handleRootCauseEvent(SLMServiceAvailabilityHandler.java:2570)
at com.aprisma.spectrum.app.slm.web.stat.SLMServiceAvailabilityHandler.handleEvent(SLMServiceAvailabilityHandler.java:576)
at com.aprisma.spectrum.app.event.web.model.AbstractAvailabilityHandler.handleRecordEvent(AbstractAvailabilityHandler.java:528)
at com.aprisma.spectrum.app.event.web.model.AbstractAvailabilityHandler.handleRealTimeEventList(AbstractAvailabilityHandler.java:492)
at com.aprisma.spectrum.app.event.web.model.AbstractAvailabilityHandler.dataUpdated(AbstractAvailabilityHandler.java:440)
at com.aprisma.spectrum.app.event.web.model.BackEndEventDataModel.fireDataListeners(BackEndEventDataModel.java:726)
Stopping the SDN Integration Manager
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
at sun.reflect.GeneratedConstructorAccessor340.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
at com.mysql.jdbc.Util.handleNewInstance(Util.java:409)
at com.mysql.jdbc.SQLError.createCommunicationsException(SQLError.java:1122)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:344)
at com.mysql.jdbc.ConnectionImpl.createNewIO(ConnectionImpl.java:2181)
... 23 more
Caused by: java.net.ConnectException: Connection refused: connect
at java.net.DualStackPlainSocketImpl.connect0(Native Method)
at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:79)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
This may happen on any version of Spectrum and Jasper for the integration.
When a connection error exists between Spectrum Report Manager and MySQL or JasperSoft, it is required to restart all 3 services involved to initialize the connection properly.:
1. Stop Tomcat on the Jasper server
a. Log into the Jasper system as the root user or su to the root user
b. cd to the directory where Jasper is installed and enter the following command:
./stopServers.sh
2. Stop Spectrum Tomcat on the Spectrum Report Manager (SRM) system
a. Log into the SRM system as the user that owns the Spectrum installation
b. If on Windows, start a bash shell by running "bash -login"
c. cd to the $SPECROOT/tomcat/bin directory and enter the following command:
./stopTomcat.sh
3. Stop Spectrum processd on the SRM system:
a. Log into the Spectrum Report Manager (SRM) system as the user that owns the Spectrum installation
b. If on Windows, start a bash shell by running "bash -login"
c. cd to the $SPECROOT/lib/SDPM directory and enter the following command:
./processd.pl stop
4. Start Spectrum processd on the SRM system:
a. Log into the Spectrum Report Manager (SRM) system as the user that owns the Spectrum installation
b. If on Windows, start a bash shell by running "bash -login"
c. cd to the $SPECROOT/lib/SDPM directory and enter the following command:
./processd.pl start
5. Start Spectrum Tomcat on the SRM system
a. Log into the SRM system as the user that owns the Spectrum installation
b. If on Windows, start a bash shell by running "bash -login"
c. cd to the $SPECROOT/tomcat/bin directory and enter the following command:
./startTomcat.sh
6. Start Tomcat on the Jasper server
a. Log into the Jasper system as the root user or su to the root user
b. cd to the directory where Jasper is installed and enter the following command:
./startServers.sh
Check the $SPECROOT/tomcat/logs/stdout (Windows) or catalina.out (Linux) for errors