Closed 15738519635 closed 5 years ago
When I use the CsvDataStore,it throws the exception. This is my configuration: params :directories=D:/testA fileEncoding=UTF-8 script: url="http://localhost/" + cell1 host="localhost" site="localhost" title=cell2 content=cell3 cache=cell3 digest=cell3 anchor= content_length=cell3.length() last_modified=new java.util.Date()
The error info : 2018-09-15 14:19:34,918 [InputStreamThread] DEBUG Error: A JNI error has occurred, please check your installation and try again 2018-09-15 14:19:34,921 [InputStreamThread] DEBUG Exception in thread "main" 2018-09-15 14:19:34,928 [job_ihTh22UBPTsdGscJmdEw] INFO Crawler: Exit Code=1 - Crawler Process Output: java.lang.NoClassDefFoundError: org/kohsuke/args4j/CmdLineException at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.privateGetMethodRecursive(Class.java:3048) at java.lang.Class.getMethod0(Class.java:3018) at java.lang.Class.getMethod(Class.java:1784) at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) Caused by: java.lang.ClassNotFoundException: org.kohsuke.args4j.CmdLineException at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 7 more Error: A JNI error has occurred, please check your installation and try again Exception in thread "main"
2018-09-15 14:19:34,931 [job_ihTh22UBPTsdGscJmdEw] WARN Failed to evalue groovy script: return container.getComponent("crawlJob").logLevel("info").sessionId("iRTg22UBPTsdGscJz9EH").webConfigIds([] as String[]).fileConfigIds(["iRTg22UBPTsdGscJz9EH"] as String[]).dataConfigIds([] as String[]).jobExecutor(executor).execute(); => {executor=org.codelibs.fess.job.impl.GroovyExecutor@33eb1fe4} org.codelibs.fess.exception.FessSystemException: Exit Code: 1 Output: java.lang.NoClassDefFoundError: org/kohsuke/args4j/CmdLineException at java.lang.Class.getDeclaredMethods0(Native Method) at java.lang.Class.privateGetDeclaredMethods(Class.java:2701) at java.lang.Class.privateGetMethodRecursive(Class.java:3048) at java.lang.Class.getMethod0(Class.java:3018) at java.lang.Class.getMethod(Class.java:1784) at sun.launcher.LauncherHelper.validateMainClass(LauncherHelper.java:544) at sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:526) Caused by: java.lang.ClassNotFoundException: org.kohsuke.args4j.CmdLineException at java.net.URLClassLoader.findClass(URLClassLoader.java:381) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 7 more Error: A JNI error has occurred, please check your installation and try again Exception in thread "main"
at org.codelibs.fess.job.CrawlJob.executeCrawler(CrawlJob.java:385) ~[classes/:?]
at org.codelibs.fess.job.CrawlJob.execute(CrawlJob.java:201) ~[classes/:?]
at org.codelibs.fess.job.CrawlJob$execute$2.call(Unknown Source) ~[?:?]
at org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteArray.java:48) ~[groovy-all-2.4.12.jar:2.4.12]
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:113) ~[groovy-all-2.4.12.jar:2.4.12]
at org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSite.java:117) ~[groovy-all-2.4.12.jar:2.4.12]
at Script1.run(Script1.groovy:1) ~[?:?]
at groovy.lang.GroovyShell.evaluate(GroovyShell.java:585) ~[groovy-all-2.4.12.jar:2.4.12]
at groovy.lang.GroovyShell.evaluate(GroovyShell.java:623) ~[groovy-all-2.4.12.jar:2.4.12]
at groovy.lang.GroovyShell.evaluate(GroovyShell.java:594) ~[groovy-all-2.4.12.jar:2.4.12]
at org.codelibs.fess.util.GroovyUtil.evaluate(GroovyUtil.java:41) ~[classes/:?]
at org.codelibs.fess.job.impl.GroovyExecutor.execute(GroovyExecutor.java:31) ~[classes/:?]
at org.codelibs.fess.app.job.ScriptExecutorJob.run(ScriptExecutorJob.java:92) ~[classes/:?]
at org.lastaflute.job.LaJobRunner.actuallyRun(LaJobRunner.java:265) ~[lasta-job-0.5.3.jar:?]
at org.lastaflute.job.LaJobRunner.doRun(LaJobRunner.java:232) ~[lasta-job-0.5.3.jar:?]
at org.lastaflute.job.LaJobRunner.run(LaJobRunner.java:191) ~[lasta-job-0.5.3.jar:?]
at org.lastaflute.job.cron4j.Cron4jTask.runJob(Cron4jTask.java:371) ~[lasta-job-0.5.3.jar:?]
at org.lastaflute.job.cron4j.Cron4jTask.actuallyExecute(Cron4jTask.java:355) ~[lasta-job-0.5.3.jar:?]
at org.lastaflute.job.cron4j.Cron4jTask.lambda$doExecute$6(Cron4jTask.java:258) ~[lasta-job-0.5.3.jar:?]
at org.lastaflute.job.cron4j.Cron4jTask.synchronizedNeighborRunning(Cron4jTask.java:328) [lasta-job-0.5.3.jar:?]
at org.lastaflute.job.cron4j.Cron4jTask.doExecute(Cron4jTask.java:246) [lasta-job-0.5.3.jar:?]
at org.lastaflute.job.cron4j.Cron4jTask.execute(Cron4jTask.java:151) [lasta-job-0.5.3.jar:?]
at it.sauronsoftware.cron4j.RomanticCron4jNativeTaskExecutor$RomanticRunner.run(RomanticCron4jNativeTaskExecutor.java:121) [lasta-job-0.5.3.jar:?]
at java.lang.Thread.run(Thread.java:748) [?:1.8.0_131]
Did Web Crawling work?
The Web Crawling and The File Crawling can not work also. It throws the same exception
Environment variables(ex. JAVA_HOME) might not be proper in your environment. It's better to install Fess as Windows service. (Embedded Elasticsearch is not recommended for production use)
Thank you very much. It can work normally as the Windows Service.
I am really confused for it how the Fess handles the CSV file. If you can give me some advice, I will be grateful,thanks you very much.
I am really confused for it how the Fess handles the CSV file.
more details...
In the official website, the description for the CsvDataStore is : Script : Set script values of crawling config as below. The format is key/value. For keys, they are the same as database crawling. You can use values in CSV file as cell[number](cell1 is a first cell). If cell does not exist, it returns null. How does the fess use the script to handle the Csv Cell? Where is it in the code?
In addition, is there any setting to index a file by row?
See fess-ds-csv. csvlistdatastore.sh is a sample script to generate test data for Csv File List crawling.
more info...