Problem:
When attempting to create or save a new data source in Spotfire that uses the Amazon Athena JDBC Driver v3.5.0, users may encounter an error that prevents saving the data source.
Error Message:
WARN 2025-01-01T01:10:10,380+0900 [domain\user, #B-1, #1] cxf.phase.PhaseInterceptorChain: Application {http://www.springframework.org/schema/beans}ElementManagerService#{http://spotfire.tibco.com/ws/2008/11/im.xsd}addElement has thrown exception, unwinding now
org.apache.cxf.interceptor.Fault: Could not initialize class com.amazon.athena.jdbc.AthenaDriver
at org.apache.cxf.service.invoker.AbstractInvoker.createFault(AbstractInvoker.java:162) ~[cxf-core.jar:3.5.5]
at org.apache.cxf.jaxws.AbstractJAXWSMethodInvoker.createFault(AbstractJAXWSMethodInvoker.java:267) ~[cxf-rt-frontend-jaxws.jar:3.5.5]
Caused by: java.lang.NoClassDefFoundError: Could not initialize class com.amazon.athena.jdbc.AthenaDriver
at java.lang.Class.forName0(Native Method) ~[?:?]
at java.lang.Class.forName(Class.java:375) ~[?:?]
Caused by: java.lang.ExceptionInInitializerError: Exception java.lang.SecurityException: class "software.amazon.awssdk.core.ClientEndpointProvider"'s signer information does not match signer information of other classes in the same package [in thread "main"]Cause:
This issue is due to a version compatibility conflict between the Athena JDBC Driver v3.5.0 and the AWS SDK bundled with the Spotfire Server.
- The Athena JDBC Driver v3.5.0 depends on AWS SDK v2.30.22.
- Spotfire Server v14.0.2 bundles AWS SDK v2.23.20.
- As a result, the required Athena driver class cannot be initialized during execution.
The issue can occur for other combination of Spotfire Server and Athena JDBC Driver as well. (e.g. Spotfire 12.0.9 and Athena JDBC Driver v3.3.0)
Resolution:
Option 1: Upgrade Spotfire Server
Upgrade to a more recent Spotfire Server version that supports or is compatible with AWS SDK v2.30.22. This may resolve the class loading issue by ensuring SDK compatibility.
Option 2: Use Athena JDBC Driver v3.1.0
If upgrading Spotfire Server is not feasible, switch to using Amazon Athena JDBC Driver v3.1.0. This version has been reported to work without errors in the same environment.
To check the version of AWS-SDK used, refer to the Release Notes of Spotfire Server and Athena JDBC Driver:
- Spotfire 14.0.2 Release Notes: https://docs.tibco.com/pub/spotfire_server/14.0.2/SPOT_sfire_server_14.0.2_relnotes.pdf?id=0
- Athena JDBC Driver Release Notes: https://docs.aws.amazon.com/athena/latest/ug/jdbc-v3-driver-release-notes.html
Comments
0 comments
Article is closed for comments.