etf-validator / etf-webapp

:earth_africa: :mag: ETF is an open source testing framework for spatial data and services
https://www.etf-validator.net
European Union Public License 1.2
18 stars 19 forks source link

etf.log cannot be created in version 1.0.7 #188

Closed clausnagel closed 5 years ago

clausnagel commented 5 years ago

We are using the ETF WebApp 1.0.7.3 in a project to validate CityGML files. We deployed the WAR file on Tomcat and set the data directory to be /etf. The app can be started and accessed via the browser. However, the app fails to create the etf.log file. In the catalina.out log, the error java.io.FileNotFoundException: etf.log (Keine Berechtigung) is reported. It is unclear where the process tries to create etf.log. The app has read/write access to $CATALINA_HOME/logs and /etf/logs.

18:47:41,674 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - Active log file name: etf.log
18:47:41,674 |-INFO in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - File property is set to [etf.log]
18:47:41,675 |-ERROR in ch.qos.logback.core.rolling.RollingFileAppender[FILE] - openFile(etf.log,true) call failed. java.io.FileNotFoundException: etf.log (Keine Berechtigung)
        at java.io.FileNotFoundException: etf.log (Keine Berechtigung)
        at      at java.io.FileOutputStream.open0(Native Method)
        at      at java.io.FileOutputStream.open(FileOutputStream.java:270)
        at      at java.io.FileOutputStream.<init>(FileOutputStream.java:213)
        at      at ch.qos.logback.core.recovery.ResilientFileOutputStream.<init>(ResilientFileOutputStream.java:28)
        at      at ch.qos.logback.core.FileAppender.openFile(FileAppender.java:150)
        at      at ch.qos.logback.core.FileAppender.start(FileAppender.java:108)
        at      at ch.qos.logback.core.rolling.RollingFileAppender.start(RollingFileAppender.java:86)
        at      at ch.qos.logback.core.joran.action.AppenderAction.end(AppenderAction.java:96)
        at      at ch.qos.logback.core.joran.spi.Interpreter.callEndAction(Interpreter.java:317)
        at      at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:196)
        at      at ch.qos.logback.core.joran.spi.Interpreter.endElement(Interpreter.java:182)
        at      at ch.qos.logback.core.joran.spi.EventPlayer.play(EventPlayer.java:62)
        at      at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:149)
        at      at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:135)
        at      at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:99)
        at      at ch.qos.logback.core.joran.GenericConfigurator.doConfigure(GenericConfigurator.java:49)
        at      at ch.qos.logback.classic.util.ContextInitializer.configureByResource(ContextInitializer.java:75)
        at      at ch.qos.logback.classic.util.ContextInitializer.autoConfig(ContextInitializer.java:150)
        at      at org.slf4j.impl.StaticLoggerBinder.init(StaticLoggerBinder.java:85)
        at      at org.slf4j.impl.StaticLoggerBinder.<clinit>(StaticLoggerBinder.java:55)
        at      at org.slf4j.LoggerFactory.bind(LoggerFactory.java:129)
        at      at org.slf4j.LoggerFactory.performInitialization(LoggerFactory.java:108)
        at      at org.slf4j.LoggerFactory.getILoggerFactory(LoggerFactory.java:302)
        at      at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:276)
        at      at org.slf4j.LoggerFactory.getLogger(LoggerFactory.java:288)
        at      at de.interactive_instruments.etf.webapp.controller.AdminController.<init>(AdminController.java:40)
        at      at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
        at      at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
        at      at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
        at      at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
        at      at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:147)
        at      at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:89)
        at      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:1098)
        at      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1050)
        at      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:510)
        at      at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:482)
        at      at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306)
        at      at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:230)
        at      at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302)
        at      at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:197)
        at      at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:772)
        at      at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:838)
        at      at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:537)
        at      at org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:446)
        at      at org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:328)
        at      at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:107)
        at      at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:4745)
        at      at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5207)
        at      at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        at      at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:752)
        at      at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:728)
        at      at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:734)
        at      at org.apache.catalina.startup.HostConfig.deployWAR(HostConfig.java:952)
        at      at org.apache.catalina.startup.HostConfig$DeployWar.run(HostConfig.java:1823)
        at      at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at      at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at      at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
        at      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
        at      at java.lang.Thread.run(Thread.java:748)
jonherrmann commented 5 years ago

ETF 1.x is no longer supported. The problem has already been solved via another agreed channel.