Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] Problem running ML plugins (branch dependency-mgmt) #95

Open
ericmil87 opened this issue Apr 21, 2023 · 0 comments
Open

[BUG] Problem running ML plugins (branch dependency-mgmt) #95

ericmil87 opened this issue Apr 21, 2023 · 0 comments

Comments

@ericmil87
Copy link

ericmil87 commented Apr 21, 2023

Describe the bug
I'm having some problems on running docker-compose XNAT with ML Plugins and OHIF.
The error occurs when I add datasets-plugin-1.0.0.jar and ml-plugin-1.0.0.jar on xnat-data/plugins folder.
I've followed the tutorial @ https://wiki.xnat.org/ml/installing-the-xnat-ml-docker-compose-release and even updated default-manifest.json with the following content to add the plugins I want:

{
    "version": "1.8.6.1",
    "base": "xnat-data",
    "webapps": "org.nrg.xnat.web:xnat-web:1.8.6.1 -> ROOT.war",
    "plugins": [
        "org.nrg.xnatx.plugins:batch-launch:0.4.0",
        "org.nrg.xnatx.plugins:container-service:3.0.0:fat",
        "org.nrg.xnatx.plugins:ml-plugin:1.0.0",
        "org.nrg.xnatx.plugins:datasets-plugin:1.0.0",
        "org.nrg.xnatx.plugins:ohif-viewer:3.2.0:fat"
    ]
}

I've also tried with only the plugins I really need:

{
    "version": "1.8.6.1",
    "base": "xnat-data",
    "webapps": "org.nrg.xnat.web:xnat-web:1.8.6.1 -> ROOT.war",
    "plugins": [
        "org.nrg.xnatx.plugins:ml-plugin:1.0.0",
        "org.nrg.xnatx.plugins:datasets-plugin:1.0.0",
        "org.nrg.xnatx.plugins:ohif-viewer:3.2.0:fat"
    ]
}

after running:
$ ./gradlew composeBuild
$ docker-compose up --detach

Terminal Output:

sudo docker-compose up -d
Creating xnat-db      ... done
Creating xnat-web     ... done
Creating xnat-traefik ... done

I've got the stack running with the .jar files of the plugins on the xnat-data/plugins/ folder.
But when I try to access I get a 404 error:
error

Below is the containers logs after trying to access the service.
XNAT-WEB:

psql: error: could not connect to server: Connection refused
	Is the server running on host "xnat-db" (172.18.0.5) and accepting
	TCP/IP connections on port 5432?
Postgres is unavailable - sleeping
Postgres is up - executing command "/usr/local/tomcat/bin/catalina.sh run"
Listening for transport dt_socket at address: 8000
21-Apr-2023 19:14:09.529 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version name:   Apache Tomcat/9.0.65
21-Apr-2023 19:14:09.531 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server built:          Jul 14 2022 12:28:53 UTC
21-Apr-2023 19:14:09.531 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Server version number: 9.0.65.0
21-Apr-2023 19:14:09.531 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Name:               Linux
21-Apr-2023 19:14:09.531 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log OS Version:            5.15.0-1033-oracle
21-Apr-2023 19:14:09.531 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Architecture:          aarch64
21-Apr-2023 19:14:09.531 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Java Home:             /usr/local/openjdk-8/jre
21-Apr-2023 19:14:09.531 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Version:           1.8.0_342-b07
21-Apr-2023 19:14:09.532 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log JVM Vendor:            Oracle Corporation
21-Apr-2023 19:14:09.532 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_BASE:         /usr/local/tomcat
21-Apr-2023 19:14:09.532 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log CATALINA_HOME:         /usr/local/tomcat
21-Apr-2023 19:14:09.533 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.config.file=/usr/local/tomcat/conf/logging.properties
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djdk.tls.ephemeralDHKeySize=2048
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.protocol.handler.pkgs=org.apache.catalina.webresources
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dorg.apache.catalina.security.SecurityListener.UMASK=0027
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xms256m
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Xmx4g
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dxnat.home=/data/xnat/home
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=0.0.0.0:8000
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dignore.endorsed.dirs=
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.base=/usr/local/tomcat
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Dcatalina.home=/usr/local/tomcat
21-Apr-2023 19:14:09.534 INFO [main] org.apache.catalina.startup.VersionLoggerListener.log Command line argument: -Djava.io.tmpdir=/usr/local/tomcat/temp
21-Apr-2023 19:14:09.541 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent Loaded Apache Tomcat Native library [1.2.35] using APR version [1.7.0].
21-Apr-2023 19:14:09.541 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR capabilities: IPv6 [true], sendfile [true], accept filters [false], random [true], UDS [true].
21-Apr-2023 19:14:09.542 INFO [main] org.apache.catalina.core.AprLifecycleListener.lifecycleEvent APR/OpenSSL configuration: useAprConnector [false], useOpenSSL [true]
21-Apr-2023 19:14:09.555 INFO [main] org.apache.catalina.core.AprLifecycleListener.initializeSSL OpenSSL successfully initialized [OpenSSL 1.1.1n  15 Mar 2022]
21-Apr-2023 19:14:09.854 INFO [main] org.apache.coyote.AbstractProtocol.init Initializing ProtocolHandler ["http-nio-8080"]
21-Apr-2023 19:14:09.877 INFO [main] org.apache.catalina.startup.Catalina.load Server initialization in [527] milliseconds
21-Apr-2023 19:14:09.908 INFO [main] org.apache.catalina.core.StandardService.startInternal Starting service [Catalina]
21-Apr-2023 19:14:09.909 INFO [main] org.apache.catalina.core.StandardEngine.startInternal Starting Servlet engine: [Apache Tomcat/9.0.65]
21-Apr-2023 19:14:09.931 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive [/usr/local/tomcat/webapps/ROOT.war]
21-Apr-2023 19:14:21.137 INFO [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
21-Apr-2023 19:14:39.140 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file
21-Apr-2023 19:14:39.144 SEVERE [main] org.apache.catalina.core.StandardContext.startInternal Context [] startup failed due to previous errors
21-Apr-2023 19:14:39.183 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive [/usr/local/tomcat/webapps/ROOT.war] has finished in [29,250] ms
21-Apr-2023 19:14:39.186 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
21-Apr-2023 19:14:39.205 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [29327] milliseconds

Here is the xnat-data/tomcat/localhost.2023-04-21.log

21-Apr-2023 19:14:21.430 INFO [main] org.apache.catalina.core.ApplicationContext.log 2 Spring WebApplicationInitializers detected on classpath
21-Apr-2023 19:14:21.664 INFO [main] org.apache.catalina.core.ApplicationContext.log Initializing Spring root WebApplicationContext
21-Apr-2023 19:14:39.139 SEVERE [main] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.springframework.web.context.ContextLoaderListener]
	org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'updateSecurityFilterHandlerMethod' defined in file [/usr/local/tomcat/webapps/ROOT/WEB-INF/classes/org/nrg/xnat/event/listeners/methods/UpdateSecurityFilterHandlerMethod.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'appInfo' defined in org.nrg.xnat.initialization.RootConfig: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.nrg.xnat.services.XnatAppInfo]: Factory method 'appInfo' threw exception; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.yaml.YAMLFactory._createContentReference(Ljava/lang/Object;)Lcom/fasterxml/jackson/core/io/ContentReference;
		at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:749)
		at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:189)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1196)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1098)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:481)
		at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312)
		at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
		at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308)
		at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
		at org.springframework.context.support.PostProcessorRegistrationDelegate.registerBeanPostProcessors(PostProcessorRegistrationDelegate.java:237)
		at org.springframework.context.support.AbstractApplicationContext.registerBeanPostProcessors(AbstractApplicationContext.java:703)
		at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:527)
		at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:443)
		at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:325)
		at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
		at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4766)
		at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5230)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)
		at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:698)
		at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:696)
		at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1024)
		at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1911)
		at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
		at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112)
		at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:825)
		at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:475)
		at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1618)
		at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:319)
		at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
		at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
		at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
		at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:946)
		at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:835)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
		at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
		at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134)
		at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
		at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:265)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
		at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
		at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
		at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
		at java.lang.reflect.Method.invoke(Method.java:498)
		at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345)
		at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476)
	Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'appInfo' defined in org.nrg.xnat.initialization.RootConfig: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.nrg.xnat.services.XnatAppInfo]: Factory method 'appInfo' threw exception; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.yaml.YAMLFactory._createContentReference(Ljava/lang/Object;)Lcom/fasterxml/jackson/core/io/ContentReference;
		at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:599)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1176)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1071)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:481)
		at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312)
		at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
		at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308)
		at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
		at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:211)
		at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1134)
		at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1062)
		at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:835)
		at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741)
		... 56 more
	Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.nrg.xnat.services.XnatAppInfo]: Factory method 'appInfo' threw exception; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.yaml.YAMLFactory._createContentReference(Ljava/lang/Object;)Lcom/fasterxml/jackson/core/io/ContentReference;
		at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:189)
		at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588)
		... 69 more
	Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.yaml.YAMLFactory._createContentReference(Ljava/lang/Object;)Lcom/fasterxml/jackson/core/io/ContentReference;
		at com.fasterxml.jackson.dataformat.yaml.YAMLFactory.createParser(YAMLFactory.java:367)
		at com.fasterxml.jackson.dataformat.yaml.YAMLFactory.createParser(YAMLFactory.java:15)
		at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:2211)
		at org.nrg.framework.services.SerializerService.deserializeYaml(SerializerService.java:198)
		at org.nrg.xnat.services.XnatAppInfo.<init>(XnatAppInfo.java:94)
		at org.nrg.xnat.initialization.RootConfig.appInfo(RootConfig.java:71)
		at org.nrg.xnat.initialization.RootConfig$$EnhancerBySpringCGLIB$$5a228f4b.CGLIB$appInfo$3(<generated>)
		at org.nrg.xnat.initialization.RootConfig$$EnhancerBySpringCGLIB$$5a228f4b$$FastClassBySpringCGLIB$$6594a7f.invoke(<generated>)
		at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
		at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:358)
		at org.nrg.xnat.initialization.RootConfig$$EnhancerBySpringCGLIB$$5a228f4b.appInfo(<generated>)
		at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
		at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
		at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
		at java.lang.reflect.Method.invoke(Method.java:498)
		at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
		... 70 more
21-Apr-2023 19:14:39.140 SEVERE [main] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [org.nrg.xnat.security.XnatSessionEventPublisher]
	org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'updateSecurityFilterHandlerMethod' defined in file [/usr/local/tomcat/webapps/ROOT/WEB-INF/classes/org/nrg/xnat/event/listeners/methods/UpdateSecurityFilterHandlerMethod.class]: Unsatisfied dependency expressed through constructor parameter 1; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'appInfo' defined in org.nrg.xnat.initialization.RootConfig: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.nrg.xnat.services.XnatAppInfo]: Factory method 'appInfo' threw exception; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.yaml.YAMLFactory._createContentReference(Ljava/lang/Object;)Lcom/fasterxml/jackson/core/io/ContentReference;
		at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:749)
		at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:189)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1196)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1098)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:481)
		at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312)
		at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
		at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308)
		at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
		at org.springframework.context.support.PostProcessorRegistrationDelegate.registerBeanPostProcessors(PostProcessorRegistrationDelegate.java:237)
		at org.springframework.context.support.AbstractApplicationContext.registerBeanPostProcessors(AbstractApplicationContext.java:703)
		at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:527)
		at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:443)
		at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:325)
		at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
		at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4766)
		at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5230)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:726)
		at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:698)
		at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:696)
		at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1024)
		at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1911)
		at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
		at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:112)
		at org.apache.catalina.startup.HostConfig.deployWARs(HostConfig.java:825)
		at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:475)
		at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1618)
		at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:319)
		at org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:123)
		at org.apache.catalina.util.LifecycleBase.setStateInternal(LifecycleBase.java:423)
		at org.apache.catalina.util.LifecycleBase.setState(LifecycleBase.java:366)
		at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:946)
		at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:835)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1396)
		at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1386)
		at java.util.concurrent.FutureTask.run(FutureTask.java:266)
		at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
		at java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:134)
		at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:919)
		at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:265)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.StandardService.startInternal(StandardService.java:432)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.StandardServer.startInternal(StandardServer.java:930)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.startup.Catalina.start(Catalina.java:772)
		at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
		at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
		at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
		at java.lang.reflect.Method.invoke(Method.java:498)
		at org.apache.catalina.startup.Bootstrap.start(Bootstrap.java:345)
		at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:476)
	Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'appInfo' defined in org.nrg.xnat.initialization.RootConfig: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.nrg.xnat.services.XnatAppInfo]: Factory method 'appInfo' threw exception; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.yaml.YAMLFactory._createContentReference(Ljava/lang/Object;)Lcom/fasterxml/jackson/core/io/ContentReference;
		at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:599)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1176)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1071)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:511)
		at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:481)
		at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:312)
		at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
		at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:308)
		at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:202)
		at org.springframework.beans.factory.config.DependencyDescriptor.resolveCandidate(DependencyDescriptor.java:211)
		at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1134)
		at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1062)
		at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:835)
		at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741)
		... 56 more
	Caused by: org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.nrg.xnat.services.XnatAppInfo]: Factory method 'appInfo' threw exception; nested exception is java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.yaml.YAMLFactory._createContentReference(Ljava/lang/Object;)Lcom/fasterxml/jackson/core/io/ContentReference;
		at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:189)
		at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:588)
		... 69 more
	Caused by: java.lang.NoSuchMethodError: com.fasterxml.jackson.dataformat.yaml.YAMLFactory._createContentReference(Ljava/lang/Object;)Lcom/fasterxml/jackson/core/io/ContentReference;
		at com.fasterxml.jackson.dataformat.yaml.YAMLFactory.createParser(YAMLFactory.java:367)
		at com.fasterxml.jackson.dataformat.yaml.YAMLFactory.createParser(YAMLFactory.java:15)
		at com.fasterxml.jackson.databind.ObjectMapper.readTree(ObjectMapper.java:2211)
		at org.nrg.framework.services.SerializerService.deserializeYaml(SerializerService.java:198)
		at org.nrg.xnat.services.XnatAppInfo.<init>(XnatAppInfo.java:94)
		at org.nrg.xnat.initialization.RootConfig.appInfo(RootConfig.java:71)
		at org.nrg.xnat.initialization.RootConfig$$EnhancerBySpringCGLIB$$5a228f4b.CGLIB$appInfo$3(<generated>)
		at org.nrg.xnat.initialization.RootConfig$$EnhancerBySpringCGLIB$$5a228f4b$$FastClassBySpringCGLIB$$6594a7f.invoke(<generated>)
		at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
		at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:358)
		at org.nrg.xnat.initialization.RootConfig$$EnhancerBySpringCGLIB$$5a228f4b.appInfo(<generated>)
		at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
		at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
		at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
		at java.lang.reflect.Method.invoke(Method.java:498)
		at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:162)
		... 70 more
21-Apr-2023 19:14:39.150 INFO [main] org.apache.catalina.core.ApplicationContext.log Closing Spring root WebApplicationContext

Normally, if I'm running the compose with only with the ohif-viewer plugin, I would get this output from XNAT-WEB container logs:

21-Apr-2023 18:43:31.077 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deploying web application archive [/usr/local/tomcat/webapps/ROOT.war]
21-Apr-2023 18:43:41.964 INFO [main] org.apache.jasper.servlet.TldScanner.scanJars At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger for a complete list of JARs that were scanned but no TLDs were found in them. Skipping unneeded JARs during scanning can improve startup time and JSP compilation time.
SOURCE: /usr/local/tomcat/webapps/ROOT/
===========================
New Database -- BEGINNING Initialization
===========================
===========================
Database initialization complete.
===========================
21-Apr-2023 18:44:44.155 INFO [main] org.apache.catalina.startup.HostConfig.deployWAR Deployment of web application archive [/usr/local/tomcat/webapps/ROOT.war] has finished in [73,075] ms
21-Apr-2023 18:44:44.159 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-nio-8080"]
21-Apr-2023 18:44:44.173 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in [73174] milliseconds

And I would be able to access the web server.

On all cases, everything looks alright with traefik and tomcat.

To Reproduce
Steps to reproduce the behavior:

$ git clone https://github.com/NrgXnat/xnat-docker-compose.git
$ cd xnat-docker-compose
$ git checkout features/dependency-mgmt

updated default-manifest.json with the following content to add the plugins I want:

{
    "version": "1.8.6.1",
    "base": "xnat-data",
    "webapps": "org.nrg.xnat.web:xnat-web:1.8.6.1 -> ROOT.war",
    "plugins": [
        "org.nrg.xnatx.plugins:batch-launch:0.4.0",
        "org.nrg.xnatx.plugins:container-service:3.0.0:fat",
        "org.nrg.xnatx.plugins:ml-plugin:1.0.0",
        "org.nrg.xnatx.plugins:datasets-plugin:1.0.0",
        "org.nrg.xnatx.plugins:ohif-viewer:3.2.0:fat"
    ]
}

$ ./gradlew composeBuild
$ docker-compose up --detach

Expected behavior
I expect to have the ML Project Dashboard as describe @ https://wiki.xnat.org/ml/using-the-machine-learning-project-dashboard

Docker server environment (please complete the following information):
Ubuntu 20.04.6 LTS (GNU/Linux 5.15.0-1033-oracle aarch64)
System load: 0.22
Usage of /: 9.5% of 193.63GB
Memory usage: 2% of 24GB
** Shape configuration**
Shape:
VM.Standard.A1.Flex
OCPU count:
4
Network bandwidth (Gbps):
4
Memory (GB):
24

system, docker and docker-compose updated.

Can you help me?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant