SV: Enterprise Dashboard will not start - Error loading service [io.micronaut.spring.tx.annotation.$TransactionInterceptorDefinitionClass]: javax/annotation/Nullable
search cancel

SV: Enterprise Dashboard will not start - Error loading service [io.micronaut.spring.tx.annotation.$TransactionInterceptorDefinitionClass]: javax/annotation/Nullable

book

Article ID: 270126

calendar_today

Updated On:

Products

CA Application Test

Issue/Introduction

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

 

Did these steps to resolve as per Support:

To resolve the above error this library jsr305-3.0.2.jar has to be there along with the above one. We can copy jsr305-3.0.2.jar from DevTest\lib\shared\ to the DevTest\lib\dradis\ folder.

Did not resolve.

 

 

 

Environment

DevTest 10.7.2
RHEL 7
MySQL 5.7
SP2 hf21 applied

 

Cause

N/A

Resolution

All the below was done on the machine.

Seems that the application of SP2, hf7, then hf21 caused this issue.  But not sure why.

Needed to go back to a DevTest 10.7.2 backup before SP2 was applied.  That was the version with hotfix 88 applied.

1. Restored DevTest 10.7.2 to the state with hotfix 88 applied.
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://mydatabase: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