How to interface Elastisearch

(from github.com/luigigf49)
Hi Marevol,
If I already have an Elasticsearch installation separate from Fess what are the parameters and configuration files of Fess and/or Elastisearch on which I have to work ?
Is there documentation for this topic ?

Many thanks
Luigi

(from github.com/luigigf49)
Hi Marevol,
my request is for Windows.
I found some references in your documentation but actually fess.in.bat for 13.3.1 contains these lines :

REM External elasticsearch cluster
REM set FESS_JAVA_OPTS=%FESS_JAVA_OPTS% -Dfess.es.http_address=http://localhost:9200
REM set FESS_JAVA_OPTS=%FESS_JAVA_OPTS% -Dfess.dictionary.path=%ES_HOME%/config/

that are not equal with ‘FESS_PARAMS’ in your documentation.
Furthermore I don’t find ‘configsync.config_path’ in my elasticsearch.yml.
I’m probably making some confusion.
Many thanks
Luigi

(from github.com/luigigf49)
Hi Marevol,
like another user I inserted in my fess.in.bat these lines:

set FESS_JAVA_OPTS=%FESS_JAVA_OPTS% -Dfess.es.http_address=http://localhost:9200
set FESS_JAVA_OPTS=%FESS_JAVA_OPTS% -Dfess.dictionary.path=%ES_HOME%/config/
set FESS_JAVA_OPTS=%FESS_JAVA_OPTS% -Dfess.es.transport_addresses=localhost:9300

but when I run fess.bat I obtain this log

_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:137)
        at org.lastaflute.web.servlet.filter.LastaPrepareFilter.init(LastaPrepareFilter.java:94)
        at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:270)
        at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:251)
        at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:102)
        at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4530)
        at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5169)
        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.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
        at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
        at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:909)
        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.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
        at org.apache.tomcat.util.threads.InlineExecutorService.execute(InlineExecutorService.java:75)
        at java.base/java.util.concurrent.AbstractExecutorService.submit(AbstractExecutorService.java:140)
        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:932)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:183)
        at org.apache.catalina.startup.Tomcat.start(Tomcat.java:456)
        at org.dbflute.tomcat.TomcatBoot.startServer(TomcatBoot.java:713)
        at org.dbflute.tomcat.TomcatBoot.go(TomcatBoot.java:402)
        at org.dbflute.tomcat.TomcatBoot.bootAwait(TomcatBoot.java:347)
        at org.codelibs.fess.FessBoot.main(FessBoot.java:96)
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)
        ... 42 more
Caused by: org.codelibs.fess.exception.FessSystemException: Configsync is not available.
        at org.codelibs.fess.es.client.FessEsClient.waitForConfigSyncStatus(FessEsClient.java:620)
        at org.codelibs.fess.es.client.FessEsClient.createIndex(FessEsClient.java:370)
        at org.codelibs.fess.es.client.FessEsClient.createIndex(FessEsClient.java:362)
        at org.codelibs.fess.es.client.FessEsClient.lambda$open$2(FessEsClient.java:284)
        at java.base/java.util.ArrayList.forEach(ArrayList.java:1540)
        at org.codelibs.fess.es.client.FessEsClient.open(FessEsClient.java:272)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:567)
        at org.lastaflute.di.util.LdiMethodUtil.invoke(LdiMethodUtil.java:49)
        at org.lastaflute.di.core.assembler.AbstractMethodAssembler.invoke(AbstractMethodAssembler.java:59)
        ... 49 more
Caused by: org.codelibs.fess.exception.FessSystemException: Configsync is not available. HTTP Status is 405
        at org.codelibs.fess.es.client.FessEsClient.waitForConfigSyncStatus(FessEsClient.java:616)
        ... 60 more
WARNING: An illegal reflective access operation has occurred
WARNING: Illegal reflective access by org.apache.catalina.loader.WebappClassLoaderBase (file:/D:/Fess/fess-13.3.1/lib/classes/) to field java.io.ObjectStreamClass$Caches.localDescs
WARNING: Please consider reporting this to the maintainers of org.apache.catalina.loader.WebappClassLoaderBase
WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations
WARNING: All illegal access operations will be denied in a future release_

Many thanks
Luigi

(from marevol (Shinsuke Sugaya) · GitHub)
Thanks. The document will be updated…

fess.es.transport_addresses is not needed in Fess 13.

Caused by: org.codelibs.fess.exception.FessSystemException: Configsync is not available. HTTP Status is 405

Elasticsearch plugins might not work.
Please check elasticsearch logs.

(from github.com/luigigf49)
Hi Marevol,
I checked elasticsearch logs.
I think I understand that I need some plugins to make FESS talk with elasticsearch installed separately.
I installed Elasticsearch from an msi installer in Windows.
Now I have to install the other plugins needed to make Fess work with my Elasticsearch.
In the documentation I found references especially to the installation of plugins in Unix environment but I’m using Windows.
What are the necessary ones and where can I find them ?

Many thanks
Luigi

(from github.com/marevol)
English documents will sync up with Japanese ones…

(from github.com/luigigf49)
Hi Marevol,
with a little patience and helping me with the Google translator, I was able to find the page that interested me in the Japanese documentation.
I then realized that I had to use elasticsearch-plugin.bat to download and install the 5 plugins that I needed.
I ran fess.bat; the first time without success while re-launching it a second time everything went well.
Thanks for the help and now I will continue with my tests.
Many thanks
Luigi