Error deploying on Tomcat 7.0.57 production server

I have a working application that runs fine on the Tomcat embedded in Cuba Studio but fails when I deploy it to my production Tomcat server (which is running other web sites without errors). What have I done wrong and how do I fix this?

Here were my steps:

I inserted the buildWar code given in the docs with appropriate tweaks:


task buildWar(type: CubaWarBuilding) {
    coreContextXmlPath = 'modules/core/web/META-INF/context.xml'
    appProperties = ['cuba.automaticDatabaseUpdate':'true' ]
    includeContextXml = true
    includeJdbcDriver = true
    appHome = '/usr/share/apache-tomcat-7.0.57/webapps/schweitzer'
    singleWar = false
}

I then executed “./gradlew buildWar” from the project directory and finally copied the two .war files in build/distributions/war to my Tomcat webapps directory.

I am attaching an excerpt from catalina.out that shows the deployment log entries. Everything is fine until I reach this point:


2016-12-14 09:45:53.410 WARN  [localhost-startStop-7] com.haulmont.cuba.core.sys.CubaClassPathXmlApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.spr
ingframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cuba_Scripting' defined in URL [jar:file:/usr/share/apache-tomcat-7.0.57/webapps/schweitzer/WEB-INF/lib/cuba-client-6
.3.4.jar!/com/haulmont/cuba/client/sys/ScriptingClientImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'cuba_JavaClassLoader' defined in URL [jar:f
ile:/usr/share/apache-tomcat-7.0.57/webapps/schweitzer/WEB-INF/lib/cuba-global-6.3.4.jar!/com/haulmont/cuba/core/sys/javacl/JavaClassLoader.class]: Instantiation of bean failed; nested exception is org.sprin
gframework.beans.BeanInstantiationException: Failed to instantiate [com.haulmont.cuba.core.sys.javacl.JavaClassLoader]: No default constructor found; nested exception is java.lang.NoSuchMethodException: com.
haulmont.cuba.core.sys.javacl.JavaClassLoader.<init>(); nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cuba_JavaClassLoader' defined in URL [jar:f
ile:/usr/share/apache-tomcat-7.0.57/webapps/schweitzer/WEB-INF/lib/cuba-global-6.3.4.jar!/com/haulmont/cuba/core/sys/javacl/JavaClassLoader.class]: Instantiation of bean failed; nested exception is org.sprin
gframework.beans.BeanInstantiationException: Failed to instantiate [com.haulmont.cuba.core.sys.javacl.JavaClassLoader]: No default constructor found; nested exception is java.lang.NoSuchMethodException: com.
haulmont.cuba.core.sys.javacl.JavaClassLoader.<init>()
2016-12-14 09:45:53.419 ERROR [localhost-startStop-7] com.haulmont.cuba.web.sys.WebAppContextLoader - Error initializing application
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'cuba_Scripting' defined in URL [jar:file:/usr/share/apache-tomcat-7.0.57/webapps/schweitzer/WEB-INF/lib/cuba-c
lient-6.3.4.jar!/com/haulmont/cuba/client/sys/ScriptingClientImpl.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'cuba_JavaClassLoader' defined in URL
 [jar:file:/usr/share/apache-tomcat-7.0.57/webapps/schweitzer/WEB-INF/lib/cuba-global-6.3.4.jar!/com/haulmont/cuba/core/sys/javacl/JavaClassLoader.class]: Instantiation of bean failed; nested exception is or
g.springframework.beans.BeanInstantiationException: Failed to instantiate [com.haulmont.cuba.core.sys.javacl.JavaClassLoader]: No default constructor found; nested exception is java.lang.NoSuchMethodExceptio
n: com.haulmont.cuba.core.sys.javacl.JavaClassLoader.<init>(); nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cuba_JavaClassLoader' defined in URL
 [jar:file:/usr/share/apache-tomcat-7.0.57/webapps/schweitzer/WEB-INF/lib/cuba-global-6.3.4.jar!/com/haulmont/cuba/core/sys/javacl/JavaClassLoader.class]: Instantiation of bean failed; nested exception is or
g.springframework.beans.BeanInstantiationException: Failed to instantiate [com.haulmont.cuba.core.sys.javacl.JavaClassLoader]: No default constructor found; nested exception is java.lang.NoSuchMethodExceptio
n: com.haulmont.cuba.core.sys.javacl.JavaClassLoader.<init>()
        at org.springframework.beans.factory.support.ConstructorResolver.createArgumentArray(ConstructorResolver.java:749) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:189) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1143) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1046) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:775) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at com.haulmont.cuba.core.sys.CubaClassPathXmlApplicationContext.<init>(CubaClassPathXmlApplicationContext.java:27) ~[cuba-global-6.3.4.jar:6.3.4]
        at com.haulmont.cuba.core.sys.AbstractAppContextLoader.createApplicationContext(AbstractAppContextLoader.java:79) ~[cuba-global-6.3.4.jar:6.3.4]
        at com.haulmont.cuba.core.sys.AbstractAppContextLoader.initAppContext(AbstractAppContextLoader.java:56) ~[cuba-global-6.3.4.jar:6.3.4]
        at com.haulmont.cuba.core.sys.AbstractWebAppContextLoader.contextInitialized(AbstractWebAppContextLoader.java:71) ~[cuba-global-6.3.4.jar:6.3.4]
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4994) [catalina.jar:7.0.57]
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5492) [catalina.jar:7.0.57]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [catalina.jar:7.0.57]
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) [catalina.jar:7.0.57]
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) [catalina.jar:7.0.57]
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649) [catalina.jar:7.0.57]
        at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1081) [catalina.jar:7.0.57]
        at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1877) [catalina.jar:7.0.57]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_25]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_25]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_25]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_25]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_25]

I get a similar error in the core app deployment:


2016-12-14 09:46:00.288 WARN  [localhost-startStop-7] com.haulmont.cuba.core.sys.CubaCoreApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cuba_ScreenProfilerService': Invocation of init method failed; nested exception is java.lang.NullPointerException
2016-12-14 09:46:00.298 ERROR [localhost-startStop-7] com.haulmont.cuba.core.sys.AppContextLoader - Error initializing application
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cuba_ScreenProfilerService': Invocation of init method failed; nested exception is java.lang.NullPointerException
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:775) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at com.haulmont.cuba.core.sys.CubaClassPathXmlApplicationContext.<init>(CubaClassPathXmlApplicationContext.java:27) ~[cuba-global-6.3.4.jar:6.3.4]
        at com.haulmont.cuba.core.sys.CubaCoreApplicationContext.<init>(CubaCoreApplicationContext.java:26) ~[cuba-core-6.3.4.jar:6.3.4]
        at com.haulmont.cuba.core.sys.AppContextLoader.createApplicationContext(AppContextLoader.java:90) ~[cuba-core-6.3.4.jar:6.3.4]
        at com.haulmont.cuba.core.sys.AppContextLoader.createApplicationContext(AppContextLoader.java:36) ~[cuba-core-6.3.4.jar:6.3.4]
        at com.haulmont.cuba.core.sys.AbstractAppContextLoader.initAppContext(AbstractAppContextLoader.java:56) ~[cuba-global-6.3.4.jar:6.3.4]
        at com.haulmont.cuba.core.sys.AbstractWebAppContextLoader.contextInitialized(AbstractWebAppContextLoader.java:71) ~[cuba-global-6.3.4.jar:6.3.4]
        at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4994) [catalina.jar:7.0.57]
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5492) [catalina.jar:7.0.57]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [catalina.jar:7.0.57]
        at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) [catalina.jar:7.0.57]
        at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) [catalina.jar:7.0.57]
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649) [catalina.jar:7.0.57]
        at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1081) [catalina.jar:7.0.57]
        at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1877) [catalina.jar:7.0.57]
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_25]
        at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_25]
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_25]
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_25]
        at java.lang.Thread.run(Thread.java:745) [na:1.8.0_25]
Caused by: java.lang.NullPointerException: null
        at com.haulmont.cuba.core.app.ScreenProfilerServiceBean.init(ScreenProfilerServiceBean.java:95) ~[cuba-core-6.3.4.jar:6.3.4]
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_25]
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_25]
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_25]
        at java.lang.reflect.Method.invoke(Method.java:483) ~[na:1.8.0_25]
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:365) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:310) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
        ... 32 common frames omitted

Hi Eric,

what java version are you using on the production system?

Bye,
Mario

$ java -version

java version “1.8.0_25”

Java™ SE Runtime Environment (build 1.8.0_25-b17)

Java HotSpot™ 64-Bit Server VM (build 25.25-b02, mixed mode)

It’s a bit out of date. :wink:

I upgraded to java version 1.8.0_112 and re-started my production Tomcat server. My web module deployed properly now, but core did not. The errors I have now are:

INFO: Deploying web application archive /usr/share/apache-tomcat-7.0.57/webapps/schweitzer-core.war Dec 15, 2016 5:10:34 PM org.apache.catalina.loader.WebappClassLoader validateJarFile
INFO: validateJarFile(/usr/share/apache-tomcat-7.0.57/webapps/schweitzer-core/WEB-INF/lib/javaee-api-7.0.jar) - jar not loaded. See Servlet Spec 3.0, section 10.7.2. Offending class: javax/servlet/Servlet.class
.
. 
.
016-12-15 17:10:41.824 WARN  [localhost-startStop-1] com.haulmont.cuba.core.sys.CubaCoreApplicationContext - Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cuba_ScreenProfilerService': Invocation of init method failed; nested exception is java.lang.NullPointerException
2016-12-15 17:10:41.837 ERROR [localhost-startStop-1] com.haulmont.cuba.core.sys.AppContextLoader - Error initializing application org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'cuba_ScreenProfilerService': Invocation of init method failed; nested exception is java.lang.NullPointerException
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:136) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyBeanPostProcessorsBeforeInitialization(AbstractAutowireCapableBeanFactory.java:408) ~[spring-beans-.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1570) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:545) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:775) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:861) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:541) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93) ~[spring-context-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at com.haulmont.cuba.core.sys.CubaClassPathXmlApplicationContext.<init>(CubaClassPathXmlApplicationContext.java:27) ~[cuba-global-6.3.4.jar:6.3.4]
    at com.haulmont.cuba.core.sys.CubaCoreApplicationContext.<init>(CubaCoreApplicationContext.java:26) ~[cuba-core-6.3.4.jar:6.3.4]
    at com.haulmont.cuba.core.sys.AppContextLoader.createApplicationContext(AppContextLoader.java:90) ~[cuba-core-6.3.4.jar:6.3.4]
    at com.haulmont.cuba.core.sys.AppContextLoader.createApplicationContext(AppContextLoader.java:36) ~[cuba-core-6.3.4.jar:6.3.4]
    at com.haulmont.cuba.core.sys.AbstractAppContextLoader.initAppContext(AbstractAppContextLoader.java:56) ~[cuba-global-6.3.4.jar:6.3.4]
    at com.haulmont.cuba.core.sys.AbstractWebAppContextLoader.contextInitialized(AbstractWebAppContextLoader.java:71) ~[cuba-global-6.3.4.jar:6.3.4]
    at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4994) [catalina.jar:7.0.57]
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5492) [catalina.jar:7.0.57]
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) [catalina.jar:7.0.57]
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901) [catalina.jar:7.0.57]
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877) [catalina.jar:7.0.57]
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649) [catalina.jar:7.0.57]
    at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:1081) [catalina.jar:7.0.57]
    at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1877) [catalina.jar:7.0.57]
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) [na:1.8.0_112]
    at java.util.concurrent.FutureTask.run(FutureTask.java:266) [na:1.8.0_112]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142) [na:1.8.0_112]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617) [na:1.8.0_112]
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_112]
Caused by: java.lang.NullPointerException: null
    at com.haulmont.cuba.core.app.ScreenProfilerServiceBean.init(ScreenProfilerServiceBean.java:95) ~[cuba-core-6.3.4.jar:6.3.4]
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:1.8.0_112]
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) ~[na:1.8.0_112]
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:1.8.0_112]
    at java.lang.reflect.Method.invoke(Method.java:498) ~[na:1.8.0_112]
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleElement.invoke(InitDestroyAnnotationBeanPostProcessor.java:365) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor$LifecycleMetadata.invokeInitMethods(InitDestroyAnnotationBeanPostProcessor.java:310) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    at org.springframework.beans.factory.annotation.InitDestroyAnnotationBeanPostProcessor.postProcessBeforeInitialization(InitDestroyAnnotationBeanPostProcessor.java:133) ~[spring-beans-4.3.1.RELEASE.jar:4.3.1.RELEASE]
    ... 32 common frames omitted
Dec 15, 2016 5:10:41 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Error listenerStart
Dec 15, 2016 5:10:41 PM org.apache.catalina.core.StandardContext startInternal
SEVERE: Context [/schweitzer-core] startup failed due to previous errors

Anybody have any ideas what is going wrong now?

The NullPointerException which you have shown is just a consequence of incomplete wiring of Spring components. Do you see any other exceptions in the log?

Also, could you upgrade Tomcat to 8.0? It is used by default and properly tested with the latest platform version.

No, those were the only two exceptions in the log. Very strange.

I will look at upgrading to Tomcat 8.

Should we go to Tomcat 8.0.39 or 8.5.9 ? And I assume NOT Tomcat 9 yet?

The fix was to upgrade java to the latest version and to upgrade Tomcat to 8.0.39. Deployment now works.
Thanks for your help.