OHDSI Home | Forums | Wiki | Github

Unable to Start WebAPI 2.7.4

Hello Team,

I have environment set up as follows:
DB-Server:
Database: PostgreSQL
OS: Red Hat Linux 7
DB name for OHDSI : dev_ohdsi
JAVA version: 8

Windows Server-Apache tomcat 7.0
Java Version: 12

I have downloaded WebAPI2.7.4 from OHDSI and complied WebAPI.war file on Linux machine.

Deployed it on Apache Tomcat installed on Windows server.
Tables in webapi schema got created post deployment and getting below errors on Apache Tomcat log file:
Feb 21, 2020 10:25:26 AM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler [“http-bio-8080”]
Feb 21, 2020 10:25:26 AM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler [“http-bio-8443”]
Feb 21, 2020 10:25:26 AM org.apache.coyote.AbstractProtocol pause
INFO: Pausing ProtocolHandler [“ajp-bio-8009”]
Feb 21, 2020 10:25:26 AM org.apache.catalina.core.StandardService stopInternal
INFO: Stopping service [Catalina]
Feb 21, 2020 10:25:26 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler [“http-bio-8080”]
Feb 21, 2020 10:25:26 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler [“http-bio-8443”]
Feb 21, 2020 10:25:26 AM org.apache.coyote.AbstractProtocol stop
INFO: Stopping ProtocolHandler [“ajp-bio-8009”]
Feb 21, 2020 10:25:26 AM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler [“http-bio-8080”]
Feb 21, 2020 10:25:26 AM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler [“http-bio-8443”]
Feb 21, 2020 10:25:26 AM org.apache.coyote.AbstractProtocol destroy
INFO: Destroying ProtocolHandler [“ajp-bio-8009”]
Feb 21, 2020 10:25:26 AM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesJdbc
SEVERE: The web application [/WebAPI] registered the JDBC driver [org.postgresql.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
Feb 21, 2020 10:25:26 AM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesJdbc
SEVERE: The web application [/WebAPI] registered the JDBC driver [com.microsoft.sqlserver.jdbc.SQLServerDriver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
Feb 21, 2020 10:25:26 AM org.apache.catalina.loader.WebappClassLoaderBase clearReferencesJdbc
SEVERE: The web application [/WebAPI] registered the JDBC driver [com.amazon.redshift.jdbc.Driver] but failed to unregister it when the web application was stopped. To prevent a memory leak, the JDBC Driver has been forcibly unregistered.
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Server version name: Apache Tomcat/7.0.99
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Server built: Dec 11 2019 13:15:59 UTC
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Server version number: 7.0.99.0
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: OS Name: Windows Server 2016
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: OS Version: 10.0
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Architecture: amd64
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Java Home: C:\Program Files\OpenJDK-12.0.1
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: JVM Version: 12.0.1+12
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: JVM Vendor: Oracle Corporation
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: CATALINA_BASE: C:\Program Files\Apache Software Foundation\Tomcat 7.0
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: CATALINA_HOME: C:\Program Files\Apache Software Foundation\Tomcat 7.0
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Dcatalina.home=C:\Program Files\Apache Software Foundation\Tomcat 7.0
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Dcatalina.base=C:\Program Files\Apache Software Foundation\Tomcat 7.0
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Djava.io.tmpdir=C:\Program Files\Apache Software Foundation\Tomcat 7.0\temp
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Djava.util.logging.config.file=C:\Program Files\Apache Software Foundation\Tomcat 7.0\conf\logging.properties
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: --add-opens=java.base/java.lang=ALL-UNNAMED
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: --add-opens=java.base/java.io=ALL-UNNAMED
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: --add-opens=java.rmi/sun.rmi.transport=ALL-UNNAMED
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: exit
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: abort
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Xms128m
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.VersionLoggerListener log
INFO: Command line argument: -Xmx256m
Feb 21, 2020 10:25:28 AM org.apache.catalina.core.AprLifecycleListener lifecycleEvent
INFO: The APR based Apache Tomcat Native library which allows optimal performance in production environments was not found on the java.library.path: [C:\Program Files\Apache Software Foundation\Tomcat 7.0\bin;C:\windows\Sun\Java\bin;C:\windows\system32;C:\windows;C:\Program Files\OpenJDK-12.0.1\bin;C:\windows\system32;C:\windows;C:\windows\System32\Wbem;C:\windows\System32\WindowsPowerShell\v1.0;C:\Program Files\SUT\bin;C:\Program Files\PuTTY;C:\Program Files\dotnet;C:\Program Files\Microsoft SQL Server\130\Tools\Binn;C:\Program Files (x86)\Microsoft SQL Server\150\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\110\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\120\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\130\DTS\Binn;C:\Program Files (x86)\Microsoft SQL Server\140\DTS\Binn;C:\app\client\product\12.2.0\client32\bin;C:\app\client\product\12.2.0\client64\bin;C:\app\client\product\12.2.0\client64;C:\Program Files\Microsoft MPI\Bin;C:\Program Files\OpenJDK-12.0.1\bin;“C:\Program Files\SysinternalsSuite”;C:\Windows\ServiceProfiles\LocalService\AppData\Local\Microsoft\WindowsApps;.]
Feb 21, 2020 10:25:28 AM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler [“http-bio-8080”]
Feb 21, 2020 10:25:28 AM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler [“http-bio-8443”]
Feb 21, 2020 10:25:28 AM org.apache.coyote.AbstractProtocol init
INFO: Initializing ProtocolHandler [“ajp-bio-8009”]
Feb 21, 2020 10:25:28 AM org.apache.catalina.startup.Catalina load
INFO: Initialization processed in 735 ms
Feb 21, 2020 10:25:28 AM org.apache.catalina.core.StandardService startInternal
INFO: Starting service [Catalina]
Feb 21, 2020 10:25:28 AM org.apache.catalina.core.StandardEngine startInternal
INFO: Starting Servlet Engine: Apache Tomcat/7.0.99
Feb 21, 2020 10:25:29 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deploying web application archive [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\WebAPI.war]
Feb 21, 2020 10:25:29 AM org.apache.catalina.loader.WebappClassLoaderBase validateJarFile
INFO: validateJarFile(C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\WebAPI\WEB-INF\lib\tomcat-embed-el-8.5.39.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/el/Expression.class
Feb 21, 2020 10:25:37 AM org.apache.catalina.startup.TldConfig execute
INFO: 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.
Feb 21, 2020 10:25:52 AM org.apache.catalina.core.ContainerBase addChildInternal
SEVERE: ContainerBase.addChild: start:
org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/WebAPI]]
at org.apache.catalina.util.LifecycleBase.handleSubClassException(LifecycleBase.java:440)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:198)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1016)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:992)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:639)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1127)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:2020)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:835)
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘shiroFilter’ defined in class path resource [org/ohdsi/webapi/ShiroConfiguration.class]: Unsatisfied dependency expressed through method ‘shiroFilter’ parameter 0; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘atlasRegularSecurity’: Unsatisfied dependency expressed through field ‘authorizer’; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘permissionManager’: Unsatisfied dependency expressed through field ‘userRepository’; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘userRepository’: Invocation of init method failed; nested exception is java.lang.ExceptionInInitializerError
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:749)
at org.springframework.beans.factory.support.ConstructorResolver.instantiateUsingFactoryMethod(ConstructorResolver.java:467)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateUsingFactoryMethod(AbstractAutowireCapableBeanFactory.java:1177)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1072)
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.boot.context.embedded.EmbeddedWebApplicationContext.refresh(EmbeddedWebApplicationContext.java:124)
at org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693)
at org.springframework.boot.SpringApplication.refreshContext(SpringApplication.java:360)
at org.springframework.boot.SpringApplication.run(SpringApplication.java:303)
at org.springframework.boot.web.support.SpringBootServletInitializer.run(SpringBootServletInitializer.java:156)
at org.springframework.boot.web.support.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:136)
at org.springframework.boot.web.support.SpringBootServletInitializer.onStartup(SpringBootServletInitializer.java:91)
at org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:169)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5709)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
… 10 more
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘atlasRegularSecurity’: Unsatisfied dependency expressed through field ‘authorizer’; nested exception is org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘permissionManager’: Unsatisfied dependency expressed through field ‘userRepository’; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘userRepository’: Invocation of init method failed; nested exception is java.lang.ExceptionInInitializerError
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:586)
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:364)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1268)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:551)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1139)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1067)
at org.springframework.beans.factory.support.ConstructorResolver.resolveAutowiredArgument(ConstructorResolver.java:835)
at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:741)
… 32 more
Caused by: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name ‘permissionManager’: Unsatisfied dependency expressed through field ‘userRepository’; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘userRepository’: Invocation of init method failed; nested exception is java.lang.ExceptionInInitializerError
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:586)
at org.springframework.beans.factory.annotation.InjectionMetadata.inject(InjectionMetadata.java:87)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor.postProcessPropertyValues(AutowiredAnnotationBeanPostProcessor.java:364)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1268)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:551)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1139)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1067)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:583)
… 46 more
Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name ‘userRepository’: Invocation of init method failed; nested exception is java.lang.ExceptionInInitializerError
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1630)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:553)
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:208)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.doResolveDependency(DefaultListableBeanFactory.java:1139)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.resolveDependency(DefaultListableBeanFactory.java:1067)
at org.springframework.beans.factory.annotation.AutowiredAnnotationBeanPostProcessor$AutowiredFieldElement.inject(AutowiredAnnotationBeanPostProcessor.java:583)
… 59 more
Caused by: java.lang.ExceptionInInitializerError
at com.cosium.spring.data.jpa.entity.graph.repository.support.EntityGraphJpaRepositoryFactoryBean.createRepositoryFactory(EntityGraphJpaRepositoryFactoryBean.java:37)
at org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.doCreateRepositoryFactory(JpaRepositoryFactoryBean.java:89)
at org.springframework.data.repository.core.support.TransactionalRepositoryFactoryBeanSupport.createRepositoryFactory(TransactionalRepositoryFactoryBeanSupport.java:81)
at org.springframework.data.repository.core.support.RepositoryFactoryBeanSupport.afterPropertiesSet(RepositoryFactoryBeanSupport.java:248)
at org.springframework.data.jpa.repository.support.JpaRepositoryFactoryBean.afterPropertiesSet(JpaRepositoryFactoryBean.java:116)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1688)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1626)
… 69 more
Caused by: java.lang.RuntimeException: modifiers
at com.cosium.spring.data.jpa.entity.graph.repository.support.EntityGraphJpaRepositoryFactory.addEntityGraphToSpecialTypes(EntityGraphJpaRepositoryFactory.java:53)
at com.cosium.spring.data.jpa.entity.graph.repository.support.EntityGraphJpaRepositoryFactory.addEntityGraphToSpecialTypes(EntityGraphJpaRepositoryFactory.java:38)
at com.cosium.spring.data.jpa.entity.graph.repository.support.EntityGraphJpaRepositoryFactory.(EntityGraphJpaRepositoryFactory.java:28)
… 76 more
Caused by: java.lang.NoSuchFieldException: modifiers
at java.base/java.lang.Class.getDeclaredField(Class.java:2417)
at com.cosium.spring.data.jpa.entity.graph.repository.support.EntityGraphJpaRepositoryFactory.addEntityGraphToSpecialTypes(EntityGraphJpaRepositoryFactory.java:46)
… 78 more

Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployWAR
SEVERE: Error deploying web application archive [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\WebAPI.war]
java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/WebAPI]]
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:1020)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:992)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:639)
at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1127)
at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:2020)
at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
at java.base/java.lang.Thread.run(Thread.java:835)

Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployWAR
INFO: Deployment of web application archive [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\WebAPI.war] has finished in [23,413] ms
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\AchillesWeb]
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\AchillesWeb] has finished in [84] ms
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\docs]
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\docs] has finished in [32] ms
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\host-manager]
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\host-manager] has finished in [48] ms
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\manager]
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\manager] has finished in [37] ms
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deploying web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\ROOT]
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.HostConfig deployDirectory
INFO: Deployment of web application directory [C:\Program Files\Apache Software Foundation\Tomcat 7.0\webapps\ROOT] has finished in [30] ms
Feb 21, 2020 10:25:52 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler [“http-bio-8080”]
Feb 21, 2020 10:25:52 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler [“http-bio-8443”]
Feb 21, 2020 10:25:52 AM org.apache.coyote.AbstractProtocol start
INFO: Starting ProtocolHandler [“ajp-bio-8009”]
Feb 21, 2020 10:25:52 AM org.apache.catalina.startup.Catalina start
INFO: Server startup in 23739 ms

Please suggest how this can be fixed.

  • Ambuj

THis is a problem related to JDK 12, described here. They say that you can possibly work around this via this command line option:

FYI, meanwhile, I think you can still permit illegal access with --illegal-access=permit, even with JDK 12.

However, I don’t know how, in your evironment, how to pass that lauch option to the JVM. you’ll have to goolge that.

In case you want additional information, I did the following to find the above information:

  1. Google’d Caused by: java.lang.NoSuchFieldException: modifiers spring jpa. I determined these search params by finding the error in the log you posted ‘Caused by…’, and that the exception message just above that talked about EntityGraphJpaRepository.
  2. One of the first results in google talked about Java 12 support, which you mentioned in your environment that you were using Java 12. It also was linked to the spring-data-jpa-entity repository, which is also related to your issue.

Hope that helps.

-Chris

Hello @Chris_Knoll,

As an alternative, can I use the Apache Tomcat 10 with Java 12?

  • Ambuj

I think you can use Tomcat 10 with Java 12, however the issue is that Java 12 seems to have stricter field-level access to java classes than Java 8 (which is what we support). However the link I sent you describes the JVM parameter that will relax that rule. So, I don’t think this is an issue with the tomcat version (you can keep Tomcat 7.0) but rather you need to deal with running Java 12. Either down-grade your Java versoin to Java 8 (or 9 should be OK) or configure your Apache Tomcat Windows Service to pass in the paramater. Please consult the tomcat documentation or google for guidance on how to accomplish that.

Hi @Chris_Knoll,

Per your link above, this issue looks like it will be resolved in the upcoming v2.3.0 of spring-data-jpa / spring-data-jpa-entity-graph. Is there anything else that you think will be needed for support of OpenJDK > 8?

We’re currently using Spring Boot 1.5.20-RELEASE, so there is probably a bit of work to upgrade our Spring Boot release up to v2.3.0. So, we’d have to test the app carefully and look for anything we need to migrate to the new version.

Hello @Chris_Knoll,

We were able to deploy the WebAPI.war without any errors.
However, when we are trying to run ATLAS, it gives ‘App initialization failed’ error.
When we try to hit the URL: http://localhost:8080/WebAPI/info , it returns 404.

Unfortunately, there is no error in any log files.
Can you please help us in enabling the verbose logging or upto debug level in WebAPI?
WebAPI version- 2.7.4
Java 8 and Tomcat 7

Thanks in advance.

1 Like

Hi Chetan,

could you try to access your wbeapi through localhost:8081
we had the same issue earlier!

t