====== Unterschiede ====== Hier werden die Unterschiede zwischen zwei Versionen gezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
de:components:search_mask [2009/03/03 13:49] 127.0.0.1 Externe Bearbeitung |
de:components:search_mask [2024/09/18 08:32] (aktuell) |
||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
- | = Web-Oberfläche = | + | ====== Die Suchmaske ====== |
- | Die beiden **regain**-[[Vergleich_der_regain-Varianten|Versionen]] nutzen [http://de.wikipedia.org/wiki/JSP JSP] (JavaServer Pages), [http://de.wikipedia.org/wiki/XML XML] ( [[TagLib-Tags|TagLibrary]]) und [http://de.wikipedia.org/wiki/Css CSS] für die im Browser angezeigte/gerenderte Benutzeroberfläche. Die Auslieferung dieser dynamischen Seiten an den Browser erledigt der [[Server]]. | + | Die **Suchmaske** ist eine Web-Oberfläche, die Suchanfragen entgegennimmt, sie ausführt und die Ergebnisse seitenweise anzeigt. In der **Desktop-Variante** von regain (siehe [[:de:project_info:variant_comparison]]) kann über die Suchmaske auch der [[Crawler]] konfiguriert und überwacht werden. |
- | Diese weitgehende Trennung von Benutzeroberfläche/Darstellungsschicht und eigentlichem Programmcode gibt dem Anwender viel Spielraum zum Gestalten (skinning) der regain-Suchmaschine. | + | Bevor man mit der Suchmaske etwas suchen kann, muss erst mit Hilfe des [[Crawler]]s ein [[search index|Suchindex]] erstellt werden. |
- | Die relevanten Dateien der Web-Oberfläche sind: | + | Technisch gesehen ist die Suchmaske eine Reihe von JSP-Seiten, die eine TagLibrary für die dynamischen Teile nutzen. Diese JSP-Seiten brauchen einen Server, der auf Anfragen wartet und dann die JSP-Seiten ausführt. |
- | ;CSS-Datei: ''regain.css'' | + | Bei der **Server-Variante** von regain muss man die Suchmaske auf einem Webserver mit Servlet-Engine deployen - z.B. [[http://jakarta.apache.org/tomcat|Tomcat]] oder [[http://jetty.mortbay.org/jetty|Jetty]]. |
- | ;[[Suchmaske]]: ''search.jsp '' | + | |
- | ;[[Erweiterte Suche]]: ''advancedsearch.jsp'' | + | |
- | ;Startseite: ''index.jsp'' bzw. ''..web/searchinput.jsp'' | + | |
- | ;[[Crawler]]-Statusanzeige: ''status.jsp'' | + | |
- | ;[[Crawler]]-Konfiguration: ''config.jsp'' nur bei der Desktop-Suche | + | |
- | Die Dateien liegen bei der [[Desktop:Installation|Desktop-Suche]] im Unterverzeichnis ''web'', bei der [[Server:Installation|Server-Suche]] in ''runtime/search/webapps/regain.war'' | + | Bei der **Desktop-Variante** von regain ist bereits ein solcher Server integriert. Dieser nutzt eine eigens entwickelte, sehr schlanke JSP-Engine, die auf [[http://simpleweb.sourceforge.net|Simple]] aufbaut. Diese kann jedoch nur TagLib-Tags verarbeiten, keinen in JSPs eingebundenen Java-Code. Dafür hat sie auch eine Größe von nur rund 200kB und nicht von über 10MB, wie bei "echten" Servlet-Engines, was für eine Desktop-Suche einfach zu viel wäre. |
+ | ===== JSP-Seiten der Web-Oberfläche ===== | ||
- | ------------------------------ | + | Die relevanten Dateien der Web-Oberfläche sind: |
- | + | * ''search.jsp'': Die eigentliche Suchmaske | |
- | = Suchmaske = | + | * ''advancedsearch.jsp'': Die [[:de:features:advanced search|Erweiterte Suche]] |
- | + | * ''index.jsp'' bzw. ''..web/searchinput.jsp'': Die Startseite | |
- | Die **Suchmaske** ist ein zentraler Teil der [[Web-Oberfläche]], die Suchanfragen entgegennimmt, sie ausführt und die Ergebnisse seitenweise anzeigt. | + | * ''status.jsp'': Zeigt den Status des [[Crawler]]s (nur bei der Desktop-Variante) |
- | + | * ''config.jsp'': Konfigurationsseite für den [[Crawler]] (nur bei der Desktop-Variante) | |
- | Bevor man mit der Suchmaske etwas suchen kann, muss erst mit Hilfe des [[Crawler]]s ein [[Suchindex]] erstellt werden! | + | * ''search_xml.jsp'': XML-Schnittstelle, die diesselben Daten enthält wie ''search.jsp''. |
- | + | ||
- | Technisch gesehen ist die Suchmaske eine Reihe von JSP-Seiten, die eine TagLibrary für die dynamischen Teile nutzen. Wenn Sie regain [[Server-Suche | auf einem Webserver einsetzen]] wollen, dann brauchen Sie daher eine Servlet-Engine wie [http://jakarta.apache.org/tomcat Tomcat] oder [http://jetty.mortbay.org/jetty Jetty], um die Suchmaske auszuführen. Die [[Desktop-Suche]] nutzt eine eigens entwickelte, sehr schlanke JSP-Engine, die auf [http://simpleweb.sourceforge.net Simple] aufbaut. Diese kann jedoch nur [[TagLib-Tags]] verarbeiten, keinen in JSPs eingebundenen Java-Code. Dafür hat sie auch eine Größe von nur rund 200kB und nicht von über 10MB, wie bei "echten" Servlet-Engines, was für eine Desktop-Suche einfach zu viel wäre. | + | |
- | Die Suchanfrage ist ein URL-String mit folgenden Parametern, die via &-zeichen verkettet werden: | + | Die Dateien liegen bei der Desktop-Variante im Unterverzeichnis ''web'', bei der Server-Variante in ''runtime/search/webapps/regain.war''. Siehe [[:de:project_info:variant_comparison]] |
- | * **index** - der Index oder eine Aufzählung von Indexen, wo gesucht wird | + | |
- | * **query** - die eigentliche Suchanfrage | + | |
- | * **field.*** - Das Prefix "field." bezieht weitere [[Suchindex#Standardfelder|Suchfelder]] * des [[Suchindex]] ein, | + | |
- | :z.B. entspricht die URL ''...?query=test&field.extension=pdf&field.title=otto'' | + | |
- | :der Anfrage ''test extension:"pdf" title:"otto"''. | + | |
- | * **maxresults** - Anzahl Suchergebnisse pro Seite (Voreinstellung ist 10). | + | |
- | * **fromresult** - Nummer des ersten Suchergebnisses (beginnend bei 0). | + | |
+ | ===== Die Tag-Library der Suchmaske ===== | ||
- | ------------------------------- | + | Die dynamischen Teile der Suchmaske werden von Tags der [[http://de.wikipedia.org/wiki/Tag-Library|Tag-Library]] von regain gefüllt. |
- | = Server = | + | Die Tags, die von dieser Tag-Library bereit gestellt werden sind hier dokumentiert: |
+ | * [[http://regain.sourceforge.net/doc/1.1/tlddoc/index.html|Tag-Library-Dokumentation zu regain 1.1]] | ||
+ | [[de:howto:add_custom_tag]] | ||
- | Mit der [[Web-Oberfläche|Benutzeroberfläche]] / [[Suchmaske]] von **regain** können Sie den [[Suchindex]] abfragen sowie teilweise den [[Crawler]] konfigurieren. Sie wird als interaktive, dynamische HTML-Seiten realisiert. | + | Ausführliche Informationen zum Thema JSP und TagLibs findet man hier: |
- | Der **Server** liefert diese [[Web-Oberfläche]] auf entsprechende http-Anfrage zur Anzeige in einem Webbrowser aus. | + | * [[http://de.wikipedia.org/wiki/Jsp#Tag-Bibliotheken|Tag-Bibliotheken]] |
+ | * Sun Developer Network-Server: [[http://java.sun.com/products/jsp/jstl/reference/docs/index.html|JavaServer Pages]] (englisch). | ||
- | In der [[Desktop-Suche]] wird dazu [http://simpleweb.sourceforge.net Simple] als integrierter Server verwendet, http-Port ist localhost:8020 (s.a. [[DesktopConfiguration.xml]]). | ||
- | Die [[Server:Installation|Server-Suche]] erfordert eine Servlet-Engine wie [http://jakarta.apache.org/tomcat Tomcat] oder [http://jetty.mortbay.org/jetty Jetty], die z.B auf http-Port | + | ===== Parameter der Suchmaske ===== |
- | ''<server>:8020'' antwortet. | + | |
+ | Die ''search.jsp'' (und ''search_xml.jsp'') versteht folgende [[http://de.wikipedia.org/wiki/Hypertext_Transfer_Protocol#HTTP_GET|GET-Parameter]]: | ||
+ | * ''index'' - der Index oder eine Aufzählung von Indexen, wo gesucht wird | ||
+ | * ''query'' - die eigentliche Suchanfrage | ||
+ | * ''field.'' - Das Präfix ''field.'' bezieht weitere [[search index#Standardfelder|Suchfelder]] des Suchindex ein.\\ Z.B. entspricht die URL ''...?query=test&field.extension=pdf&field.title=otto''\\ der Anfrage ''test extension:"pdf" title:"otto"''. | ||
+ | * ''maxresults'' - Anzahl Suchergebnisse pro Seite (Voreinstellung ist ''10''). | ||
+ | * ''fromresult'' - Index des ersten Suchergebnisses (beginnend bei ''0''). | ||