99 Seiten Doku gelesen "FirstSpirit SEARCH" und trotzdem bekomme ich die simple Suche nicht zum laufen. Inzwischen spidert die integrierte Lucene zwar die gewünschten Seiten, was noch nicht geht, ist die Suchresultat-Seite. Ich vermute, es ist etwas falsch an der web.xml, allerdings finde ich dazu zuwenig Informationen in der Doku und im Forum.
Hier die Kurzanalyse:
- Server-Eigenschaften, Modul FIRSTspirit SEARCH 4.2.454_46518 installiert, FS SEARCH als Web Applikation mit Sichtbarkeit Projekt/Web
- Projekt-Eigenschaften, Web Komponente FS SEARCH 4.2.454_46518 hinzugefügt Server "fssServer", Engine "fssEngine", Konfiguration siehe unten
- web.xml angepasst in diversen Varianten, die aktuelle siehe unten
- Lucene Log meldet, dass Seiten gespidert wurden, mit Luke überprüft
- Das Web Suchformular zeigt an, dass keine Engine verwendet wurde (web.xml?), die Suche findet gemäss Log allerdings Treffer (4)
Hat jemand eine funktionierende web.xml oder sieht jemand sonst einen Fehler in der Konfig?
Viiiiiiielen Dank! 🙂
Konfiguration FS SEARCH
<?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">DEBUG, file</attribute>
<attribute name="log4j.appender.file">org.apache.log4j.RollingFileAppender</attribute>
<attribute name="log4j.appender.file.File">/usr/share/tomcat6/logs/fs-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>
<!-- Der eigentliche Suchserver als Service verpackt, damit man ihn starten & stoppen kann -->
<service class="de.espirit.firstspirit.opt.search.service.adapter.ServerService">
<!-- START - Search Server -->
<server class="de.espirit.firstspirit.opt.search.server.SimpleServer">
<!-- START - Session Proxy -->
<engine name="fssEngine" class="de.espirit.firstspirit.opt.search.engine.proxy.MonitorEngineProxy">
<!-- START - Category Proxy -->
<engine class="de.espirit.firstspirit.opt.search.engine.proxy.FilterCategorizeEngineProxy">
<!-- START - Localization Proxy -->
<engine class="de.espirit.firstspirit.opt.search.engine.proxy.FilterLocalizeEngineProxy">
<!-- START - Indexing Engine -->
<engine class="de.espirit.firstspirit.opt.search.engine.spider.SpiderEngine">
<attribute name="index">/usr/share/tomcat6/webapps/dev_sfs/WEB-INF/searchindex</attribute>
<attribute name="threadPriority">1</attribute>
<attribute name="urls" type="list">
<attribute>http://dev.kunde.namics.com/</attribute>
</attribute>
<attribute name="allowed" type="list">
<attribute class="de.espirit.firstspirit.opt.search.engine.spider.link.RegexWebLinkFilter">/de/</attribute>
</attribute>
<attribute name="allowed" type="list">
<attribute class="de.espirit.firstspirit.opt.search.engine.spider.link.RegexWebLinkFilter">/en/</attribute>
</attribute>
</engine>
<!-- END - Indexing Engine -->
<attribute name="locales" type="map">
<filter name="de" class="de.espirit.firstspirit.opt.search.filter.RegexFilter">
<attribute name="property">url</attribute>
<attribute name="pattern">/de/</attribute>
</filter>
</attribute>
</engine>
<!-- END - Localization Proxy -->
<attribute name="categories" type="map">
<filter name="web" class="de.espirit.firstspirit.opt.search.filter.RegexFilter">
<attribute name="property">url</attribute>
<attribute name="pattern">(/de/)|(/en/)</attribute>
</filter>
</attribute>
</engine>
<!-- END - Category Proxy -->
</engine>
<!-- END - Session Proxy -->
</server>
<!-- END - Search Server -->
<attribute name="createRMI">false</attribute>
<attribute name="bindTo">local</attribute>
<attribute name="localName">fssServer</attribute>
</service>
<!-- 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">17:00</attribute>
<attribute name="period">5m</attribute>
<attribute name="startNow">true</attribute>
</service>
</attribute>
</service>
web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:web="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"
version="2.4">
<display-name>FirstSpirit SEARCH</display-name>
<description>FirstSpirit search engine for spidering and indexing web-site content.</description>
<servlet>
<servlet-name>fss-Init</servlet-name>
<servlet-class>de.espirit.firstspirit.opt.search.admin.web.ServiceServlet</servlet-class>
<init-param>
<param-name>service</param-name>
<param-value>/WEB-INF/fs-search.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet>
<servlet-name>fss-Search</servlet-name>
<servlet-class>de.espirit.firstspirit.opt.search.web.SearchServlet</servlet-class>
<init-param>
<param-name>serverURL</param-name>
<param-value>fssServer</param-value>
</init-param>
<init-param>
<param-name>searchEngine</param-name>
<param-value>fssEngine</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>fss-Search</servlet-name>
<url-pattern>*.search</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<jsp-config>
<taglib>
<taglib-uri>fs-search</taglib-uri>
<taglib-location>/WEB-INF/fs-search.tld</taglib-location>
</taglib>
</jsp-config>
</web-app>
fs-search.log
DEBUG 2012-01-02 17:56:02,019 (de.espirit.firstspirit.opt.search.engine.adapter.LuceneEngineAdapter) search "content:test" ...
DEBUG 2012-01-02 17:56:02,054 (de.espirit.firstspirit.opt.search.engine.adapter.LuceneEngineAdapter) search finished (31ms), results: 4
DEBUG 2012-01-02 17:56:02,064 (de.espirit.firstspirit.opt.search.session.proxy.SessionMonitor$SessionMonitorThread) add session: MonitorSessionProxy->ModifySessionProxy->ModifySessionProxy->de.espirit.firstspirit.opt.search.engine.adapter.LuceneEngineAdapter$LuceneSession@c4e21db (1)
DEBUG 2012-01-02 17:56:02,069 (de.espirit.firstspirit.opt.search.session.proxy.SessionMonitor$SessionMonitorThread) started
DEBUG 2012-01-02 17:56:02,071 (de.espirit.firstspirit.opt.search.session.proxy.SessionMonitor$SessionMonitorThread) wait for session: 1800497ms
localhost.log
Jan 2, 2012 5:56:02 PM org.apache.catalina.core.ApplicationContext log
INFO: fss-Search: search time (query=test, engine=fssEngine, available=4): 118ms
Absatzvorlage
CMS_TRIM(level:3)$
$CMS_IF(!isSet(set_st_imports) || set_st_imports != true)$
<%@ page language="java" contentType="text/html; charset=UTF-8" import="java.util.Collections, java.util.ArrayList" %>
<%@ taglib uri="fs-search" prefix="fss" %>
$CMS_SET(set_st_imports,true)$
$CMS_END_IF$
<fss:getSearchDetails>
<p><%= totalResults %> Ergebnisse gefunden. </p>
<p>orderBy: <%= orderBy %></p>
<p>query: <%= query %></p>
<p>se (Search Engine): <%= se %></p>
<fss:isTrue><p><%= totalResults %> Ergebnisse gefunden.</p>
</fss:isTrue>
<fss:isFalse>
Keine Ergebnisse gefunden!
</fss:isFalse>
</fss:getSearchDetails>
Web-Output
0 Ergebnisse gefunden.
orderBy: null
query: null
se (Search Engine): null
Keine Ergebnisse gefunden!