This problem might occur when Spotfire Server's Oracle 19c database is upgraded to 19.24 or later release. The following log entry is recorded in <Spotfire-Server-Home>\tomcat\logs\catalina.log:
INFO 2024-08-22T10:29:03,545-0700 [] [Spotfire].[localhost].[/]: Initializing com.spotfire.server.root.RootHttpMethodsFilter
INFO 2024-08-22T10:29:03,571-0700 [] catalina.startup.HostConfig: Deploying deployment descriptor [D:\tibco\tss\12.0.3\tomcat\conf\Spotfire\localhost\spotfire.xml]
INFO 2024-08-22T10:29:16,603-0700 [] [Spotfire].[localhost].[/spotfire]: 1 Spring WebApplicationInitializers detected on classpath
ERROR 2024-08-22T10:31:19,581-0700 [] catalina.startup.HostConfig: Error deploying deployment descriptor [D:\tibco\tss\12.0.3\tomcat\conf\Spotfire\localhost\spotfire.xml]
java.lang.IllegalStateException: Error starting child
...
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Spotfire].StandardHost[localhost].StandardContext[/spotfire]]
...
Caused by: com.spotfire.server.config.ConfigurationException: Unable to create a connection: [tibcosoftwareinc][Oracle JDBC Driver]arraycopy: destination index -1 out of bounds for byte[128]
...
Caused by: tibcosoftwareinc.oracle.jdbc.base.fu: [tibcosoftwareinc][Oracle JDBC Driver]arraycopy: destination index -1 out of bounds for byte[128]
at tibcosoftwareinc.oracle.jdbc.base.BaseExceptions.b(Unknown Source) ~[?:?]
...
INFO 2024-08-22T10:31:19,639-0700 [] server.tomcat.StartupCheckListener: The Spotfire Server failed to start completely, shutting down.
The root cause of this issue is not known at this time, but it appears to be the case that the DataDirect Oracle JDBC driver (which was previously included with Spotfire Server) is no longer compatible with most recent versions of Oracle database.
The solution to this issue is to switch Spotfire Server to Oracle native JDBC driver:
- Download Oracle JDBC driver - ojdbc10.jar or the driver version appropriate for your version of Spotfire (https://www.oracle.com/database/technologies/appdev/jdbc-downloads.html).
- Save the new Oracle driver jar file in <Spotfire-Server-Home>\tomcat\custom-ext\ directory.
- Start Spotfire Server Configuration Tool, enter bootstrap password and ignore the error message that is displayed.
- Go to Bootstrap tab and change JDBC driver template to Oracle native driver - "Oracle Thin (SID)" or "Oracle Thin (Service Name)").
- Make sure that all other information in Bootstrap tab is correct, then click on "Test Connection" button to confirm that the database connection can be successfully established.
- Save Bootstrap configuration and close the Configuration tool.
- Restart Spotfire Server service.
Comments
0 comments
Article is closed for comments.