Search the FirstSpirit Knowledge Base
Hallo zusammen,
ich bin momentan dabei FS-Search in ein Projekt einzubinden.
habe dafür auch eine sehr simple fs-search.xml erstellt, die eigtl. soweit auch funktioniert.
Der RebuildIndexTimerService erstellt mir einen Index, jedoch aktualisiert er die index.cfg nicht.
So enthält die Datei seit dem ersten Aufbau eines Index folgende Daten:
#index meta information
#Fri Oct 28 15:34:22 CEST 2011
subindex=guf7kb9w
Der Indexer in der fs-search.xml sieht so aus:
<service class="de.espirit.firstspirit.opt.search.service.RebuildIndexTimerService">
<attribute name="engineURL">searchServer[SpiderEngine]</attribute>
<attribute name="startTime">09:18</attribute>
<attribute name="period">1h</attribute>
<attribute name="startNow">true</attribute>
</service>
Ich hab schon folgendes versucht:
Der Ordner ist nicht schreibgeschützt o.ä..
Also Zusatzinfo: Das Ganze läuft auf einem lokalen Tomcat und Win7.
hat hierzu jemand eine Idee, woran das liegen könnte?
Hie rnochmal meine komplette fs-search.xml :
<?xml version="1.0" encoding="UTF-8"?>
<service class="de.espirit.firstspirit.opt.search.service.proxy.MultiServiceProxy">
<attribute name="services" type="list">
<service class="de.espirit.firstspirit.opt.search.service.adapter.Log4jService">
<attribute name="log4j.rootCategory">INFO, file</attribute>
<attribute name="log4j.appender.file">org.apache.log4j.RollingFileAppender</attribute>
<attribute name="log4j.appender.file.File">D:\wvv_search.log</attribute>
<attribute name="log4j.appender.file.MaxFileSize">5MB</attribute>
<attribute name="log4j.appender.file.MaxBackupIndex">5</attribute>
<attribute name="log4j.appender.file.layout">org.apache.log4j.PatternLayout</attribute>
<attribute name="log4j.appender.file.layout.ConversionPattern">%-5p %d (%c)%m%n</attribute>
</service>
<service class="de.espirit.firstspirit.opt.search.service.adapter.ServerService">
<server class="de.espirit.firstspirit.opt.search.server.SimpleServer">
<!-- SpiderEngine -->
<engine name="SpiderEngine" class="de.espirit.firstspirit.opt.search.engine.spider.SpiderEngine">
<attribute name="urls" type="list">
<attribute>http://localhost:8080/fs_preview/de/articles/sitemap.jsp</attribute>
</attribute>
<attribute name="index">D:\search.index</attribute>
<attribute name="maxThreads">2</attribute>
<attribute name="threadPriority">1</attribute>
<attribute name="maxDocuments">50000</attribute>
<attribute name="maxTime">120m</attribute>
</engine>
</server>
<attribute name="bindTo">local</attribute>
<attribute name="localName">searchServer</attribute>
</service>
<service class="de.espirit.firstspirit.opt.search.service.RebuildIndexTimerService">
<attribute name="engineURL">searchServer[SpiderEngine]</attribute>
<attribute name="startTime">09:18</attribute>
<attribute name="period">1h</attribute>
<attribute name="startNow">true</attribute>
</service>
</attribute>
</service>
Vielen Dank im Voraus
Gruß,
Felix
bei mir, sollte das RebuildIndexTimerService mit dem Server durch RMI kommunizieren zu konnen,
ich habe etwas so,
<service class="de.espirit.firstspirit.opt.search.service.adapter.ServerService">
....
<server class="de.espirit.firstspirit.opt.search.server.SimpleServer">
....
</server>
<attribute name="bindTo">rmi</attribute>
<attribute name="rmiHost">hostname</attribute>
<attribute name="rmiPort">xxxxx</attribute>
<attribute name="rmiName">rmiName</attribute>
....
</service>
<service class="de.espirit.firstspirit.opt.search.service.RebuildIndexTimerService">
...
<attribute name="engineURL">rmi://hostname:xxxxx/rmiName[fssEngine]</attribute>
<attribute name="startTime">...</attribute>
<attribute name="period">....</attribute>
<attribute name="startNow">....</attribute>
...
</service>
Grüße.
Hallo zusammen,
auch wir haben exakt das gleiche Problem. Wir möchten die BasicSearch mit Spider-Engine auf einem Windows 2008 Server nutzen.
Problem: Es wird zwar ein Index angelegt, wenn man den Tomcat neu startet oder über do.service?action=reload den Prozess startet. Jedoch wird weder der zeitgesteuerte Index-Vorgang gestartet noch wird bei dieser und den anderen Methoden die index.cfg angepasst, damit das neue Index-Verzeichnis in der index.cfg referenziert wird.
Die gleiche Konfiguration funktioniert auf einem Linux-Server problemlos. Hat jemand Erfahrungen mit dem Einsatz der BasicSearch auf Windows-Betriebssystemen und kann weiterhelfen?
Vielen Dank im Voraus
Gruß,
Volker Braun
Hallo zusammen,
hierzu ein kleines Update:
In der fs-search.xml gibt es einen Tag "allowed".
In diesen Tag haben wir die URL in folgender Form eingegeben: subdomain.domain.de
Als wir diesen Wert auf "subdomain.domain.de/de/" gestellt haben, waren alle Fehler behoben.
- Der RebuildService läuft an
- index.cfg wird erstellt oder aktualisiert
- Der Index ist wesentlich umfangreicher
Viele Grüße
Volker Braun
Hallo zusammen,
Ich habe das selbe Problem.
Der Index-Ordner wird angelegt, aber die index.cfg Datei wird nicht angepasst.
Ausschnitt aus dem fs-search.xml
<!-- START - Indexing Engine -->
<engine class="de.espirit.firstspirit.opt.search.engine.spider.SpiderEngine">
<attribute name="index">/mnt/data/tomcat6/webapps/locherbewehrungen/WEB-INF/searchindex</attribute>
<attribute name="threadPriority">1</attribute>
<attribute name="urls" type="list">
<attribute>http://www.locherbewehrungen.ch/de/web/homepage.html</attribute>
</attribute>
<attribute name="allowed" type="list">
<attribute class="de.espirit.firstspirit.opt.search.engine.spider.link.RegexWebLinkFilter">locherbewehrungen.ch/de/</attribute>
<attribute class="de.espirit.firstspirit.opt.search.engine.spider.link.RegexWebLinkFilter">/media/de/</attribute>
</attribute>
<attribute name="forbidden" type="list">
<attribute class="de.espirit.firstspirit.opt.search.engine.spider.link.RegexWebLinkFilter">.*/web/forms/.*</attribute>
<attribute class="de.espirit.firstspirit.opt.search.engine.spider.link.RegexWebLinkFilter">.*?RenderOutputType=pdf.*</attribute>
</attribute>
</engine>
<!-- END - Indexing Engine -->
....
<!-- Ein start-/stoppbarer Service, der zyklisch den Suchindex erneut aufbaut. -->
<service class="de.espirit.firstspirit.opt.search.service.RebuildIndexTimerService">
<attribute name="engineURL">fssServer[fssEngine]</attribute>
<attribute name="startTime">06:30</attribute>
<attribute name="period">6h</attribute>
<attribute name="startNow">true</attribute>
</service>
Das Logfile gibt auch keine Hinweise auf ein mögliches Problem.
Gruss
Thomas