"knime" Context gets destroyed

Hi,

After upgrading to 4.12, I cannot reach KNIME Server through webportal or KNIME AP and get 404 error:
Message The requested resource [/knime/] is not available

Everything was working fine before the upgrade.

This is from logs:

18-Feb-2021 07:53:37.607 SEVERE [main] org.apache.catalina.core.StandardContext.listenerStart Exception sending context initialized event to listener instance of class [com.knime.enterprise.server.pmml.models.PMMLScoringListener]
	com.knime.enterprise.server.application.ApplicationContext$NoSuchServiceException: No service registered for com.knime.enterprise.server.config.ServerConfig
		at com.knime.enterprise.server.application.ApplicationContextImpl.getService(ApplicationContextImpl.java:52)
		at com.knime.enterprise.server.pmml.models.ScoringApplication.getJarDir(ScoringApplication.java:16)
		at com.knime.enterprise.server.pmml.models.PMMLScoringListener.checkExtensionDir(PMMLScoringListener.java:25)
		at com.knime.enterprise.server.pmml.models.PMMLScoringListener.contextInitialized(PMMLScoringListener.java:34)
		at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4678)
		at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5139)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:717)
		at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:690)
		at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:705)
		at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:631)
		at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1830)
		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.deployDescriptors(HostConfig.java:526)
		at org.apache.catalina.startup.HostConfig.deployApps(HostConfig.java:425)
		at org.apache.catalina.startup.HostConfig.start(HostConfig.java:1576)
		at org.apache.catalina.startup.HostConfig.lifecycleEvent(HostConfig.java:309)
		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:936)
		at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:841)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1384)
		at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1374)
		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:909)
		at org.apache.catalina.core.StandardEngine.startInternal(StandardEngine.java:262)
		at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
		at org.apache.catalina.core.StandardService.startInternal(StandardService.java:421)
		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:633)
		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:343)
		at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:474)
	Caused by: javax.naming.NameNotFoundException: Name [com.knime.enterprise.server.config.ServerConfig] is not bound in this Context. Unable to find [com.knime.enterprise.server.config.ServerConfig].
		at org.apache.naming.NamingContext.lookup(NamingContext.java:833)
		at org.apache.naming.NamingContext.lookup(NamingContext.java:174)
		at com.knime.enterprise.server.application.ApplicationContextImpl.getService(ApplicationContextImpl.java:50)
		... 44 more
18-Feb-2021 07:53:37.620 INFO [main] com.knime.enterprise.server.application.ServerInitListener.contextDestroyed ----- KNIME Server 4.12.1.0049-1575f40b1 shutting down. -----
18-Feb-2021 07:53:38.776 INFO [main] org.apache.catalina.core.ApplicationContext.log ContextListener: contextInitialized()
18-Feb-2021 07:53:38.776 INFO [main] org.apache.catalina.core.ApplicationContext.log SessionListener: contextInitialized()
18-Feb-2021 07:53:38.777 INFO [main] org.apache.catalina.core.ApplicationContext.log ContextListener: attributeAdded('StockTicker', 'async.Stockticker@7e8b1274')

:blush:

The problem was caused by a wrong input in the server config file which then was preventing tomcat from being initiated.

We corrected the wrong config and now everything works as always.

:blush:

4 Likes

Thanks @armingrudd for clarifying this and the positive feedback.

Have a nice day,
Michael

1 Like

Hi Armin,

May i know which file is causing the issue and where it was located because we also getting same error.
It’s an urgent requirement, we are trying to upgrade Knime from 4.10 to 4.13.1.

Regards,
Mukhendra,
9666473476

Mukendra,

There is no direct upgrade of 4.10 to 4.13.1. 4.10 used Tomee (J2EE version of Tomcat), and in 4.13.1 we no longer support Tomee, only Tomcat 9. Plus, you would need to install a new executor, and convert your preference into client profiles.

For your upgrade, it would need to be a migration. I would suggest standing up a new 4.13.1 instance, and then migrate your settings, files and then workflows.

It’s highly recommended to do this on another instance, as standing up two instances of KNIME Server on a single node can be difficult and prone to issues.

You can always submit a support ticket if you would like more information or a discussion about your update.

-Jeff Gullick

Hi armingrudd,

I am facing the same issue it seems. Which file is it that you had an issue with?

Regards,
Willem