fess restart with 404 error

(from github.com/loulou111)
I use the fess server to create a search system and succeed, but after i close the whole server (I stop server as the Fess Installation Guide says “to stop Fess server, kill the process of Fess”.)and then restart it, I cannot reach http://localhost:8080/ ,it just shows 404 errors.
And the log file just show like this:

一月 29, 2018 1:39:48 下午 org.dbflute.tomcat.logging.BootLogger info
信息: ...Booting the Tomcat: port=8080 contextPath=
一月 29, 2018 1:39:49 下午 org.dbflute.tomcat.logging.BootLogger info
信息: ...Reflecting configuration to server: config=[tomcat_config.properties]
一月 29, 2018 1:39:49 下午 org.dbflute.tomcat.logging.BootLogger info
信息:  tomcat.URIEncoding = UTF-8
一月 29, 2018 1:39:49 下午 org.dbflute.tomcat.logging.BootLogger info
信息:  tomcat.useBodyEncodingForURI = true
一月 29, 2018 1:39:49 下午 org.apache.coyote.AbstractProtocol init
信息: Initializing ProtocolHandler ["http-nio-8080"]
一月 29, 2018 1:39:49 下午 org.apache.tomcat.util.net.NioSelectorPool getSharedSelector
信息: Using a shared selector for servlet write/read
一月 29, 2018 1:39:49 下午 org.apache.catalina.core.StandardService startInternal
信息: Starting service [Tomcat]
一月 29, 2018 1:39:49 下午 org.apache.catalina.core.StandardEngine startInternal
信息: Starting Servlet Engine: Apache Tomcat/8.5.21
一月 29, 2018 1:39:49 下午 org.dbflute.tomcat.logging.BootLogger info
信息: ...Initializing webapp of default web.xml with JSP (the servlet found)
一月 29, 2018 1:39:49 下午 org.apache.catalina.startup.ContextConfig getDefaultWebXmlFragment
信息: No global web.xml found
一月 29, 2018 1:39:50 下午 org.apache.jasper.servlet.TldScanner scanJars
信息: 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.
一月 29, 2018 1:39:54 下午 org.apache.catalina.core.StandardContext filterStart
严重: Exception starting filter [lastaPrepareFilter]
org.lastaflute.di.exception.ContainerInitFailureException: Look! Read the message below.
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Failed to initialize the container.

[Path]
esclient.xml

[Namespace]
null

[Included by]
esflute_config.xml
esflute_user.xml
esflute_log.xml
* * * * * * * * * */
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.throwContainerInitFailureException(LaContainerImpl.java:463)
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:415)
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.doInit(LaContainerImpl.java:431)
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:413)
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.doInit(LaContainerImpl.java:431)
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:413)
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.doInit(LaContainerImpl.java:431)
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:413)
	at org.lastaflute.di.core.factory.SingletonLaContainerFactory.init(SingletonLaContainerFactory.java:66)
	at org.lastaflute.web.container.WebLastaContainerInitializer.doInitContainer(WebLastaContainerInitializer.java:81)
	at org.lastaflute.web.container.WebLastaContainerInitializer.initialize(WebLastaContainerInitializer.java:45)
	at org.lastaflute.web.servlet.filter.LastaPrepareFilter.initializeContainer(LastaPrepareFilter.java:136)
	at org.lastaflute.web.servlet.filter.LastaPrepareFilter.init(LastaPrepareFilter.java:94)
	at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285)
	at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:266)
	at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:108)
	at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4591)
	at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5233)
	at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
	at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409)
	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)
Caused by: org.lastaflute.di.core.exception.IllegalMethodRuntimeException: [ESSR0060]Can not configure method(open) of org.codelibs.fess.es.client.FessEsClient, because org.codelibs.elasticsearch.runner.ClusterRunnerException: Failed to start node 1
	at org.lastaflute.di.core.assembler.AbstractMethodAssembler.invoke(AbstractMethodAssembler.java:61)
	at org.lastaflute.di.core.assembler.DefaultInitMethodAssembler.assemble(DefaultInitMethodAssembler.java:40)
	at org.lastaflute.di.core.deployer.SingletonComponentDeployer.assemble(SingletonComponentDeployer.java:57)
	at org.lastaflute.di.core.deployer.SingletonComponentDeployer.deploy(SingletonComponentDeployer.java:41)
	at org.lastaflute.di.core.deployer.SingletonComponentDeployer.init(SingletonComponentDeployer.java:35)
	at org.lastaflute.di.core.meta.impl.ComponentDefImpl.init(ComponentDefImpl.java:85)
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.doInit(LaContainerImpl.java:434)
	at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:413)
	... 23 more
Caused by: org.codelibs.elasticsearch.runner.ClusterRunnerException: Failed to start node 1
	at org.codelibs.elasticsearch.runner.ElasticsearchClusterRunner.build(ElasticsearchClusterRunner.java:369)
	at org.codelibs.elasticsearch.runner.ElasticsearchClusterRunner.build(ElasticsearchClusterRunner.java:293)
	at org.codelibs.fess.es.client.FessEsClient.open(FessEsClient.java:267)
	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.lastaflute.di.util.LdiMethodUtil.invoke(LdiMethodUtil.java:49)
	at org.lastaflute.di.core.assembler.AbstractMethodAssembler.invoke(AbstractMethodAssembler.java:59)
	... 30 more
Caused by: java.lang.IllegalArgumentException: plugin [aggs-matrix-stats] is incompatible with version [5.6.4]; was designed for version [6.1.2]
	at org.elasticsearch.plugins.PluginInfo.readFromProperties(PluginInfo.java:146)
	at org.elasticsearch.plugins.PluginsService.getModuleBundles(PluginsService.java:274)
	at org.elasticsearch.plugins.PluginsService.<init>(PluginsService.java:118)
	at org.elasticsearch.node.Node.<init>(Node.java:313)
	at org.codelibs.elasticsearch.runner.node.ClusterRunnerNode.<init>(ClusterRunnerNode.java:17)
	at org.codelibs.elasticsearch.runner.node.ClusterRunnerNode.<init>(ClusterRunnerNode.java:23)
	at org.codelibs.elasticsearch.runner.ElasticsearchClusterRunner.build(ElasticsearchClusterRunner.java:364)
	... 38 more

一月 29, 2018 1:39:54 下午 org.apache.catalina.core.StandardContext startInternal
严重: One or more Filters failed to start. Full details will be found in the appropriate container log file
一月 29, 2018 1:39:54 下午 org.apache.catalina.core.StandardContext startInternal
严重: Context [] startup failed due to previous errors
一月 29, 2018 1:39:54 下午 org.apache.catalina.loader.WebappClassLoaderBase checkThreadLocalMapForLeaks
严重: The web application [ROOT] created a ThreadLocal with key of type [org.apache.logging.log4j.core.script.ScriptManager$ThreadLocalScriptRunner$1] (value [org.apache.logging.log4j.core.script.ScriptManager$ThreadLocalScriptRunner$1@1f50ce98]) and a value of type [org.apache.logging.log4j.core.script.ScriptManager.MainScriptRunner] (value [org.apache.logging.log4j.core.script.ScriptManager$MainScriptRunner@696f7cfe]) but failed to remove it when the web application was stopped. Threads are going to be renewed over time to try and avoid a probable memory leak.
一月 29, 2018 1:39:54 下午 org.apache.coyote.AbstractProtocol start
信息: Starting ProtocolHandler ["http-nio-8080"]
一月 29, 2018 1:39:54 下午 org.dbflute.tomcat.logging.BootLogger info
信息: Boot successful: url -> http://localhost:8080

hoping for reply,thanks!!!

(from marevol (Shinsuke Sugaya) · GitHub)

Caused by: java.lang.IllegalArgumentException: plugin [aggs-matrix-stats] is incompatible with version [5.6.4]; was designed for version [6.1.2]

Did you change elasticsearch?
You might use a wrong elasticsearch.

(from github.com/loulou111)
but I really used the elasticsearch v6.1.2 ,any other reasons?
and can you tell that what’s the right method to stop the server? Just kill the prosess of elasticsearch and fess directly?

(from github.com/marevol)
This is not a problem for stop step.
Did you use Fess 12?
Elasticsearch 5.6.4 seemed to be used.

(from github.com/loulou111)
Thank you for replying!
I changed the version of Fess but I still cannot access to http://localhost:8080/ the second time I open it, and here comes out other errors , log file shows like this:

Exception starting filter [lastaPrepareFilter]
org.lastaflute.di.exception.ContainerInitFailureException: Look! Read the message below.
/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
Failed to initialize the container.

[Path]
esclient.xml

[Namespace]
null

[Included by]
esflute_config.xml
esflute_user.xml
esflute_log.xml

                  • */
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.throwContainerInitFailureException(LaContainerImpl.java:463)
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:415)
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.doInit(LaContainerImpl.java:431)
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:413)
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.doInit(LaContainerImpl.java:431)
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:413)
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.doInit(LaContainerImpl.java:431)
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:413)
                    at org.lastaflute.di.core.factory.SingletonLaContainerFactory.init(SingletonLaContainerFactory.java:66)
                    at org.lastaflute.web.container.WebLastaContainerInitializer.doInitContainer(WebLastaContainerInitializer.java:81)
                    at org.lastaflute.web.container.WebLastaContainerInitializer.initialize(WebLastaContainerInitializer.java:45)
                    at org.lastaflute.web.servlet.filter.LastaPrepareFilter.initializeContainer(LastaPrepareFilter.java:136)
                    at org.lastaflute.web.servlet.filter.LastaPrepareFilter.init(LastaPrepareFilter.java:94)
                    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:285)
                    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:266)
                    at org.apache.catalina.core.ApplicationFilterConfig.(ApplicationFilterConfig.java:108)
                    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4591)
                    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5233)
                    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
                    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1419)
                    at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1409)
                    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)
                    Caused by: org.lastaflute.di.core.exception.IllegalMethodRuntimeException: [ESSR0060]Can not configure method(open) of org.codelibs.fess.es.client.FessEsClient, because org.codelibs.fess.exception.FessSystemException: Configsync is not available.
                    at org.lastaflute.di.core.assembler.AbstractMethodAssembler.invoke(AbstractMethodAssembler.java:61)
                    at org.lastaflute.di.core.assembler.DefaultInitMethodAssembler.assemble(DefaultInitMethodAssembler.java:40)
                    at org.lastaflute.di.core.deployer.SingletonComponentDeployer.assemble(SingletonComponentDeployer.java:57)
                    at org.lastaflute.di.core.deployer.SingletonComponentDeployer.deploy(SingletonComponentDeployer.java:41)
                    at org.lastaflute.di.core.deployer.SingletonComponentDeployer.init(SingletonComponentDeployer.java:35)
                    at org.lastaflute.di.core.meta.impl.ComponentDefImpl.init(ComponentDefImpl.java:85)
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.doInit(LaContainerImpl.java:434)
                    at org.lastaflute.di.core.meta.impl.LaContainerImpl.init(LaContainerImpl.java:413)
                    … 23 more
                    Caused by: org.codelibs.fess.exception.FessSystemException: Configsync is not available.
                    at org.codelibs.fess.es.client.FessEsClient.waitForConfigSyncStatus(FessEsClient.java:607)
                    at org.codelibs.fess.es.client.FessEsClient.createIndex(FessEsClient.java:388)
                    at org.codelibs.fess.es.client.FessEsClient.lambda$open$977(FessEsClient.java:313)
                    at java.util.ArrayList.forEach(ArrayList.java:1257)
                    at org.codelibs.fess.es.client.FessEsClient.open(FessEsClient.java:301)
                    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.lastaflute.di.util.LdiMethodUtil.invoke(LdiMethodUtil.java:49)
                    at org.lastaflute.di.core.assembler.AbstractMethodAssembler.invoke(AbstractMethodAssembler.java:59)
                    … 30 more
                    Caused by: java.io.IOException: Server returned HTTP response code: 405 for URL: http://localhost:9201/_configsync/wait?status=green
                    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
                    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
                    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
                    at java.lang.reflect.Constructor.newInstance(Constructor.java:423)
                    at sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1944)
                    at sun.net.www.protocol.http.HttpURLConnection$10.run(HttpURLConnection.java:1939)
                    at java.security.AccessController.doPrivileged(Native Method)
                    at sun.net.www.protocol.http.HttpURLConnection.getChainedException(HttpURLConnection.java:1938)
                    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1508)
                    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
                    at org.codelibs.elasticsearch.runner.net.CurlRequest$1.lambda$onResponse$0(CurlRequest.java:175)
                    at org.codelibs.elasticsearch.runner.net.CurlRequest$1.writeContent(CurlRequest.java:198)
                    at org.codelibs.elasticsearch.runner.net.CurlRequest$1.onResponse(CurlRequest.java:175)
                    at org.codelibs.elasticsearch.runner.net.CurlRequest.execute(CurlRequest.java:157)
                    at org.codelibs.elasticsearch.runner.net.CurlRequest.execute(CurlRequest.java:169)
                    at org.codelibs.fess.es.client.FessEsClient.waitForConfigSyncStatus(FessEsClient.java:602)
                    … 40 more
                    Caused by: java.io.IOException: Server returned HTTP response code: 405 for URL: http://localhost:9201/_configsync/wait?status=green
                    at sun.net.www.protocol.http.HttpURLConnection.getInputStream0(HttpURLConnection.java:1894)
                    at sun.net.www.protocol.http.HttpURLConnection.getInputStream(HttpURLConnection.java:1492)
                    at java.net.HttpURLConnection.getResponseCode(HttpURLConnection.java:480)
                    at org.codelibs.elasticsearch.runner.net.CurlRequest$1.onResponse(CurlRequest.java:174)
                    … 43 more

so what’s the problem? Waiting for your reply, thanks again!

(from github.com/loulou111)
I saw that the plugin folder in the elasticsearch installation directory is empty, should I install the plugin before using it? if is , how can I install it ?
Thank you very much!

(from github.com/marevol)
See Installation Guide.

(from github.com/iny)
Is JAVA_HOME set? @loulou111

(from github.com/acossette1979)
I have the same issue. I’m running in container 11.4.6 , I did expose ES data & config. 1 time on 2, ES dont restart and fess can’t start. I think we should have have a shutdown script to remove the node.lock and cleanly shutdown fess and ES. I’m wondering if there is another place where fess writes and when I recreate the container someting is missing on the external volume ?