Hi!
I am trying to deploy my cuba (6.6.2) application to a tomcat (8.0.26) server but it wont start.
I build the project with gradle (3.4) and copy the app.war file to my tomcat\webapps folder. Then I start the local tomcat server. When I try to connect to the local server I get the welcome page, but when I try to connect to the app (localhost:11723/app) I get the 404 error screen saying:
HTTP Status: 404 - /app
type: Status report
message: /app
description: The requested resource is not available.
Apache Tomcat/8.0.26
The logs are:
catalina.out:
[...]
**22-Jan-2018 16:56:25.372 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.startInternal One or more listeners failed to start. Full details will be found in the appropriate container log file**
**22-Jan-2018 16:56:25.376 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.startInternal Context [/app] startup failed due to previous errors**
16:56:25,379 |-INFO in ch.qos.logback.classic.servlet.LogbackServletContextListener@dcd90d - About to stop ch.qos.logback.classic.LoggerContext [default]
22-Jan-2018 16:56:25.388 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDescriptor Deployment of configuration descriptor /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/conf/Catalina/localhost/app.xml has finished in 6,846 ms
22-Jan-2018 16:56:25.389 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/manager
22-Jan-2018 16:56:25.418 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/manager has finished in 29 ms
22-Jan-2018 16:56:25.418 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/ROOT
22-Jan-2018 16:56:25.428 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/ROOT has finished in 10 ms
22-Jan-2018 16:56:25.429 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/docs
22-Jan-2018 16:56:25.438 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/docs has finished in 10 ms
22-Jan-2018 16:56:25.438 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/host-manager
22-Jan-2018 16:56:25.450 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/host-manager has finished in 12 ms
22-Jan-2018 16:56:25.450 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deploying web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/examples
22-Jan-2018 16:56:25.558 INFO [localhost-startStop-1] org.apache.catalina.startup.HostConfig.deployDirectory Deployment of web application directory /projects/SuperSkill/Workspace/release/daily/apache-tomcat-8.0.26/webapps/examples has finished in 108 ms
22-Jan-2018 16:56:25.564 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["http-apr-11723"]
22-Jan-2018 16:56:25.570 INFO [main] org.apache.coyote.AbstractProtocol.start Starting ProtocolHandler ["ajp-apr-11724"]
22-Jan-2018 16:56:25.571 INFO [main] org.apache.catalina.startup.Catalina.start Server startup in 7060 ms
localhost.2018-01-22.log:
22-Jan-2018 16:56:25.195 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log Initializing AtmosphereFramework
22-Jan-2018 16:56:25.308 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log No Spring WebApplicationInitializer types detected on classpath
**22-Jan-2018 16:56:25.368 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class com.haulmont.cuba.core.sys.singleapp.SingleAppCoreServletListener**
java.lang.NullPointerException
at sun.net.util.URLUtil.urlNoFragString(URLUtil.java:50)
at sun.misc.URLClassPath.getLoader(URLClassPath.java:512)
at sun.misc.URLClassPath.getNextLoader(URLClassPath.java:484)
at sun.misc.URLClassPath.getResource(URLClassPath.java:238)
at java.net.URLClassLoader$1.run(URLClassLoader.java:365)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at com.haulmont.cuba.core.sys.CubaSingleAppClassLoader.loadClass(CubaSingleAppClassLoader.java:43)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at com.haulmont.cuba.core.sys.CubaSingleAppClassLoader.loadClass(CubaSingleAppClassLoader.java:43)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at com.haulmont.cuba.core.sys.CubaSingleAppClassLoader.loadClass(CubaSingleAppClassLoader.java:43)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:763)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:368)
at java.net.URLClassLoader$1.run(URLClassLoader.java:362)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:361)
at com.haulmont.cuba.core.sys.CubaSingleAppClassLoader.loadClass(CubaSingleAppClassLoader.java:43)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at com.haulmont.cuba.core.sys.singleapp.SingleAppCoreServletListener.contextInitialized(SingleAppCoreServletListener.java:81)
at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4729)
at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5167)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:701)
at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:717)
at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:586)
at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1750)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
**22-Jan-2018 16:56:25.372 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class com.haulmont.cuba.web.sys.singleapp.SingleAppWebServletListener**
java.lang.NullPointerException
at sun.net.util.URLUtil.urlNoFragString(URLUtil.java:50)
at sun.misc.URLClassPath.getLoader(URLClassPath.java:512)
at sun.misc.URLClassPath.getNextLoader(URLClassPath.java:484)
[...]
**22-Jan-2018 16:56:25.381 SEVERE [localhost-startStop-1] org.apache.catalina.core.StandardContext.listenerStop Exception sending context destroyed event to listener instance of class com.haulmont.cuba.web.sys.singleapp.SingleAppWebServletListener**
java.lang.NullPointerException
at com.haulmont.cuba.web.sys.singleapp.SingleAppWebServletListener.contextDestroyed(SingleAppWebServletListener.java:94)
at org.apache.catalina.core.StandardContext.listenerStop(StandardContext.java:4776)
at org.apache.catalina.core.StandardContext.stopInternal(StandardContext.java:5390)
at org.apache.catalina.util.LifecycleBase.stop(LifecycleBase.java:232)
at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:160)
at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:725)
[...]
22-Jan-2018 16:56:25.554 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log ContextListener: contextInitialized()
22-Jan-2018 16:56:25.554 INFO [localhost-startStop-1] org.apache.catalina.core.ApplicationContext.log SessionListener: contextInitialized()
The strange thing is, when I open the project in Cuba Studio and start the application from there, it builds and starts just fine. Cuba Studio uses tomcat 8.5.xx (donât remember the exact version) so I tried to deploy to tomcat 8.5.24, but I got the same error. The project worked on tomcat 8.0.26 last week, and the only thing that changed is that we added some JUnit 5 tests.
I am using Java 1.8.0_152
and the project uses a Gradle 3.4 wrapper
I already tried to revert to a previous app version through git, but I also got errors (sometimes the same, sometimes others). I am not sure whether there is a problem with tomcat or cuba.
I also tried to copy the tomcat folder that cuba studio starts from build/tomcat. It actually worked to launch this tomcat instance and the app! But then I tried to copy the app.war to tomcat/webapps and the server stoped working again with the error message at the top of the post. So I rather think that itâs a problem with our app than with the tomcat, but I am not sure.
I would really like to know why the SingleAppCoreServletListener and the SingleAppWebServletListener donât work. Maybe somebody knows a solution for this error.
I am really clueless plz send help, this error terrifies me for too long :â(
Greez
Rene
PS.: sorry for the long logs⌠I tried to shorten them a little bit. Here are the full version:
logs.zip (3.5 KB)