GSB 7.0 Standardlösung

Vorgehen Suche

  1. Der erste Schritt bei der Suche besteht darin, dass Such-Formular zu planen. Daraus ergibt sich, welche Felder (Request-Parameter) beim Absenden des Formulars an die Such-Action übergeben werden. Als einfachstes Beispiel wäre dies ein Textfeld mit idName userQuery. Details zum Aufbau eines Formulars findet man auf der Seite des Formularbaukastens.
  2. Nach dem Festlegen der Request-Parameter wird eine neue Formular-Action erstellt. Als Java-Klasse (className) bekommt diese den Wert de.materna.cms.cae.forms.action.SolrQueryAction gesetzt.
  3. Als nächstes konfiguriert man die Paramter (parameters) der Formular-Action. Mit dem Beispiel von oben wäre dies solr.q=$userQuery.
  4. Zusätzlich gibt es zwei Klassifizierte Parameter (cl2Parameters)
    1. Um das Ergebnis einzubinden
      • Typ/Text: list
      • Klassifizierungslink: /standardlsg/SiteGlobals/Classifications/Classifier/GenericResultSet/QueryResultTable
      • Dokumenten-Links: /standardlsg/SiteGlobals/Functions/Solr/Suche/Ergebnisdarstellung/<GenericTable>
    2. Für Weitere Konfigurationen / Mappings von Request-Parametern
      • Typ/Text:
      • Klassifizierungslink: /standardlsg/SiteGlobals/Classifications/Classifier/Common/QueryParameter
      • Dokumenten-Links:
        • /standardlsg/SiteGlobals/Functions/Solr/Suche/Konfiguration/<ConfigRichText10>
        • /standardlsg/SiteGlobals/Functions/Solr/Suche/Mapping/<ConfigRichText10>
        • ...
  5. Falls der Success-Navigationsknoten vom Formular der Navigationsknoten des Formulars selber ist, muss man den GenericTable der Action auch im Formular als Parameter mit folgendem Aufbau angeben.
    • Typ/Text: searchResultTable
    • Klassifizierungslink:
    • Dokumenten-Links: /standardlsg/SiteGlobals/Functions/Solr/Suche/Ergebnisdarstellung/<GenericTable>
  6. Der GenericTable ist für die Ergebnisdarstellung verantwortlich. Eine Minimalkonfiguration braucht folgende Dinge:
    • Darzustellende Inhalte (cl2RelatedEnts)
      • Slotbelegung: Name des Slots für die Darstellung
      • Layout:
      • Dokument(e): /standardlsg/SiteGlobals/Functions/Solr/Suche/Ergebnisdarstellung/<GenericResultSet>
    • Tabellenlayout: /standardlsg/SiteGlobals/Layout/ContentRegion/Tabellen/<LOGridTemplate>
    • Einträge pro Seite (resultsPerPage): Eintrag für die Paginierung der Ergebnistabelle
  7. Über das GenericResultSet wird das Suchergebnis für die Ausgabe eingebunden.
    • Sortierkriterium: Name des Feldes im Index, nach dem standardmäßig Sortiert werden soll gefolgt von der Sortierreihenfolge
    • Konfigurationsdokumente: Einbinden einer speziellen ViewVariant für das Ergebnis
      • Text-Klassifizierung: layoutVariant
      • Klassifizierung:
      • Dokument(e): /standardlsg/SiteGlobals/Layout/Views/Spezial/SolrSearchResult
  8. Abschliessend muss noch das Tabellenlayout (LOGridTemplate) als Velocity-Template erstellt werden.

Dieser sehr allgemeine Leitfaden zeigt das generelle Vorgehen für die Erstellung eines Suchformulars samt Action und Ausgabe. Details und Beispiele finden sich bei der GSB7/Servicesuche und der Expertensuche.