AWS collector fails with NoClassDefFoundError
Originally Published: 2018-09-25
Article Number
Applies To
RSA Version/Condition: 7.0.2, 7.1.0
Issue
08/09/2018 21:21:41.618 ERROR (ApplyChangesRegularThread-181) [com.aveksa.client.component.communication.ChangeListHandler] method=UncaughtException Thread=Thread[ApplyChangesRegularThread-181,5,ChangeApplyingThreadGroup] java.lang.NoClassDefFoundError: com.fasterxml.jackson.databind.ObjectMapper at com.amazonaws.internal.config.InternalConfig.<clinit>(InternalConfig.java:43) at java.lang.J9VMInternals.initializeImpl(Native Method) at java.lang.J9VMInternals.initialize(J9VMInternals.java:235) at com.amazonaws.internal.config.InternalConfig$Factory.<clinit>(InternalConfig.java:304) at java.lang.J9VMInternals.initializeImpl(Native Method) at java.lang.J9VMInternals.initialize(J9VMInternals.java:235) at com.amazonaws.util.VersionInfoUtils.userAgent(VersionInfoUtils.java:141) at com.amazonaws.util.VersionInfoUtils.initializeUserAgent(VersionInfoUtils.java:136) at com.amazonaws.util.VersionInfoUtils.getUserAgent(VersionInfoUtils.java:97) at com.amazonaws.ClientConfiguration.<clinit>(ClientConfiguration.java:60) at java.lang.J9VMInternals.initializeImpl(Native Method) at java.lang.J9VMInternals.initialize(J9VMInternals.java:235) at com.amazonaws.ClientConfigurationFactory.getDefaultConfig(ClientConfigurationFactory.java:46) at com.amazonaws.ClientConfigurationFactory.getConfig(ClientConfigurationFactory.java:36) at com.amazonaws.services.identitymanagement.AmazonIdentityManagementClient.<init>(AmazonIdentityManagementClient.java:214) at com.aveksa.collector.amazonaws.AmazonAWSDataHandler.<init>(AmazonAWSDataHandler.java:49) at com.aveksa.collector.amazonaws.AmazonAWSAccountDataHandler.<init>(AmazonAWSAccountDataHandler.java:58) at com.aveksa.collector.amazonaws.adc.AmazonAWSAccountDataReader.testConnection(AmazonAWSAccountDataReader.java:93) at com.aveksa.client.datacollector.collectors.accountdatacollectors.AccountDataCollector.collectData(AccountDataCollector.java:351) at com.aveksa.client.datacollector.collectors.accountdatacollectors.AccountDataCollector.collect(AccountDataCollector.java:302) at com.aveksa.client.datacollector.collectors.accountdatacollectors.AccountDataCollector.collectTestData(AccountDataCollector.java:277) at com.aveksa.client.datacollector.framework.DataCollectorManager.collect(DataCollectorManager.java:532) at com.aveksa.client.component.collector.DefaultCollectorManager.actUpon(DefaultCollectorManager.java:203) at com.aveksa.client.component.collector.DefaultCollectorManager.handle(DefaultCollectorManager.java:102) at com.aveksa.client.component.event.DefaultEventManager.handle(DefaultEventManager.java:60) at com.aveksa.client.datacollector.framework.SimpleEventSource.notifyListeners(SimpleEventSource.java:67) at com.aveksa.client.component.communication.DefaultCommunicationManager.notifyEvent(DefaultCommunicationManager.java:377) at com.aveksa.client.component.communication.ChangeListHandler.applyChanges(ChangeListHandler.java:364) at com.aveksa.client.component.communication.ChangeListHandler.access$300(ChangeListHandler.java:58) at com.aveksa.client.component.communication.ChangeListHandler$ChangeApplyingRunnable.run(ChangeListHandler.java:275) at java.lang.Thread.run(Thread.java:798) Caused by: java.lang.ClassNotFoundException: com.fasterxml.jackson.databind.ObjectMapper at java.net.URLClassLoader.findClass(URLClassLoader.java:602) at com.ibm.ws.bootstrap.ExtClassLoader.findClass(ExtClassLoader.java:243) at java.lang.ClassLoader.loadClassHelper(ClassLoader.java:777) at java.lang.ClassLoader.loadClass(ClassLoader.java:754) at com.ibm.ws.bootstrap.ExtClassLoader.loadClass(ExtClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:731) at com.ibm.ws.classloader.ProtectionClassLoader.loadClass(ProtectionClassLoader.java:62) at com.ibm.ws.classloader.ProtectionClassLoader.loadClass(ProtectionClassLoader.java:58) at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:586) at java.lang.ClassLoader.loadClass(ClassLoader.java:731) ... 31 more
Cause
Resolution
Workaround
Appliance (hardware or software)
- Unpack the Aveksa EAR file (cd /home/oracle/deploy && ./customizeACM.sh -c).
- Copy the missing library to the correct location (cp /tmp/customizeACM/aveksa.war/AmazonAWSEntitlementCollector1/lib/jackson-databind-2.6.6.jar /tmp/customizeACM/aveksa.war/WEB-INF/LocalAgent/common/lib/)
- Redeploy the Aveksa EAR file (cd /home/oracle/deploy && ./customizeACM.sh -d).
Other Application Servers (WebSphere, WebLogic)
Unpack the Aveksa EAR file and copy aveksa.war/AmazonAWSEntitlementCollector1/lib/jackson-databind-2.6.6.jar to aveksa.war/WEB-INF/LocalAgent/common/lib. You will need to redeploy the modified EAR file and restart the application for the changes to take effect.Related Articles
AWS Workspaces - RSA Ready Implementation Guide 39Number of Views AWS AFX Connector "SSLHandshakeException: Could not generate secret" error in RSA Governance & Lifecycle 46Number of Views AWS Amazon Cognito - SAML Relying Party Configuration - RSA Ready Implementation Guide 3Number of Views AWS Amazon Cognito - RSA Ready Implementation Guide 6Number of Views AWS Amazon Cognito - SAML My Page SSO Configuration - RSA Ready Implementation Guide 3Number of Views
Trending Articles
Authentication Manager Supported Hardware and Upgrade Paths RSA Authentication Manager Upgrade Process Artifacts to gather in RSA Identity Governance & Lifecycle How to manipulate imported RSA SecurID Software Token(s) on an iPhone or iPad device Authentication Manager 'Principal Does Not Possess Authenticator' Error for Users with Multiple IDs
Don't see what you're looking for?