Getting this error starting the Enterprise Dashboard:
2023-07-05T20:42:15,746Z (15:42) [main] INFO io.micronaut.context.env.DefaultEnvironment - Established active environments: [production]
2023-07-05T20:42:16,105Z (15:42) [main] ERROR org.springframework.boot.SpringApplication - Application run failed
java.util.ServiceConfigurationError: Error loading service [io.micronaut.spring.tx.annotation.$TransactionInterceptorDefinitionClass]: javax/annotation/Nullable
at io.micronaut.core.io.service.DefaultServiceDefinition.lambda$load$0(DefaultServiceDefinition.java:71) ~[micronaut-core-1.1.4.jar:1.1.4]
at java.util.Optional.map(Optional.java:215) ~[?:1.8.0_352]
at io.micronaut.core.io.service.DefaultServiceDefinition.load(DefaultServiceDefinition.java:67) ~[micronaut-core-1.1.4.jar:1.1.4]
at io.micronaut.context.DefaultBeanContext.resolveBeanDefinitionReferences(DefaultBeanContext.java:1116) ~[micronaut-inject-1.1.4.jar:1.1.4]
at io.micronaut.context.DefaultApplicationContext.resolveBeanDefinitionReferences(DefaultApplicationContext.java:140) ~[micronaut-inject-1.1.4.jar:1.1.4]
at io.micronaut.context.DefaultBeanContext.readAllBeanDefinitionClasses(DefaultBeanContext.java:2278) ~[micronaut-inject-1.1.4.jar:1.1.4]
at io.micronaut.context.DefaultBeanContext.start(DefaultBeanContext.java:199) ~[micronaut-inject-1.1.4.jar:1.1.4]
at io.micronaut.context.DefaultApplicationContext.start(DefaultApplicationContext.java:187) ~[micronaut-inject-1.1.4.jar:1.1.4]
at grails.boot.GrailsApp.createApplicationContext(GrailsApp.groovy:184) ~[grails-core-5.2.3.jar:5.2.3]
at org.springframework.boot.SpringApplication.run(SpringApplication.java:304) ~[spring-boot-2.7.6.jar:2.7.6]
at grails.boot.GrailsApp.run(GrailsApp.groovy:99) ~[grails-core-5.2.3.jar:5.2.3]
at grails.boot.GrailsApp.run(GrailsApp.groovy:485) ~[grails-core-5.2.3.jar:5.2.3]
at grails.boot.GrailsApp.run(GrailsApp.groovy:472) ~[grails-core-5.2.3.jar:5.2.3]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_352]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_352]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_352]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_352]
at org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:107) ~[groovy-3.0.11.jar:3.0.11]
at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:323) ~[groovy-3.0.11.jar:3.0.11]
at org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.invoke(StaticMetaMethodSite.java:44) ~[groovy-3.0.11.jar:3.0.11]
at org.codehaus.groovy.runtime.callsite.StaticMetaMethodSite.call(StaticMetaMethodSite.java:89) ~[groovy-3.0.11.jar:3.0.11]
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:47) ~[groovy-3.0.11.jar:3.0.11]
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:125) ~[groovy-3.0.11.jar:3.0.11]
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:139) ~[groovy-3.0.11.jar:3.0.11]
at dradis.Application.main(Application.groovy:31) ~[dradis-10.7.2.jar:?]
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[?:1.8.0_352]
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[?:1.8.0_352]
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[?:1.8.0_352]
at java.lang.reflect.Method.invoke(Method.java:498) ~[?:1.8.0_352]
at com.exe4j.runtime.LauncherEngine.launch(LauncherEngine.java:84) ~[i4jruntime.jar:?]
at com.install4j.runtime.launcher.UnixLauncher.start(UnixLauncher.java:69) ~[i4jruntime.jar:?]
at install4j.dradis.Application_EnterpriseDashboardService.main(Unknown Source) ~[launcherd27d6524.jar:?]
Caused by: java.lang.NoClassDefFoundError: javax/annotation/Nullable
DevTest 10.7.2
RHEL 7
MySQL 5.7
SP2 hf21 applied
Needed to go back to a DevTest 10.7.2 backup before SP2 was applied.
1. Restored DevTest 10.7.2 .
2. Applied SP2 to DevTest 10.7.2.
3. Backed up DevTest with SP2.
4. Applied SP2 hf21 to DevTest 10.7.2.
5. Since iam.properties got overwritten with hf21, retrieved the backup version and updated the following:
iam.keystore.password=passphrase
iam.truststore.password=passphrase
Commented out the current iam.db.url and replace it with this one.
iam.db.url=jdbc:mysql://<database name>:3306/db_iam2?useSSL=false&autoReconnect=true&autoReconnectForPools=true&interactiveClient=true
Need to replace current value of iam.db.password with the plain text password.
6. Since iam-truststore.ks was overwritten, needed to retrieve the backed up version of iam-truststore.ks since it has the certificates for the LDAPs call in IAM.
7. Since cacerts got overwritten, needed to get all the certificates in iam-truststore.ks to be imported into cacerts. Did this with the below command:
keytool -importkeystore -srckeystore IAM_HOME/certs/iam-truststore.ks -destkeystore IAM_HOME/jdk/lib/security/cacerts -srcstorepass passphrase -deststorepass changeit -v
Started the following components with no issues:
IAM, Enterprise Dashboard, Registry, Portal and Coordinator