mona_ketterer
I'm new here

Wie BasicSearch Suchindex aus Workflow heraus neu erstellen?

Hallo zusammen,

ich erstelle mit der Spider Engine Implementation aus BasicSearch einen Lucene Suchindex, und per RebuildIndexTimerService wird der Index regelmäßig neu erstellt. Basic Search ist als Web-Komponente auf meinem Staging-Server eingehängt und dort die fs-search.conf konfiguriert, und den Service starte/stoppe ich aktuell über den Web Service Runner mit PROTOCOL://HOST:PORT/APPLICATION/do.service?action=start usw.

Das funktioniert soweit - eigentlich will ich aber nicht regelmäßig in Intervallen den Suchindex erstellen, sondern immer nach erfolgter Generierung, also aus dem Generierungsauftrag heraus.

Wie ist den dazu die Best Practice, wie indiziere ich den generierten Stand am Besten nach der Generierung?

Die Aktion "Suchindex neu erstellen", die ich als Aktion einhängen kann, betrifft ja nur den FS-internen Suchindex und hat nichts mit Basic Search zu tun. Also gehe ich davon aus, dass es ein Skript sein muss, oder? Wie starte/stoppe ich am Besten meinen BasicSearch Service aus einem Skript - muss ich das über Aufrufe der o.g. URLs erledigen? Oder muss ich die Standalone jar verwenden und daraus etwas aufrufen?

Vielen Dank & viele Grüße

Mona

0 Kudos
2 Replies
MichaelaReydt
Community Manager

Hallo Mona,

ist diese Frage noch aktuell oder hast du sie inzwischen eine eigene Lösung gefunden? In diesem Fall wäre es super, wenn du sie hier bereitstellen könntest.

Solltest du noch eine Antwort benötigen:

Die Neuerstellung des Index' sollte möglich sein, wenn du nach dem Deployment einen Task erstellst, der die URL des die Indixierung anstoßenden Servlets aufruft. Sowohl die URL als auch das Servlet müssten eigentl. dokumentiert sein.

Viele Grüße

Michaela

Hallo Michaela,

vielen Dank für die Rückmeldung. Wir sind dann doch nicht den Weg über den Workflow gegangen, sondern über eine regelmäßige nächtliche Generierung mit dem RebuildIndexTimerService gegangen.

Die Variante mit Aufruf der Servlet-URL aus der Generierung heraus war auch die einzige, die uns dazu eingefallen wäre - fanden wir nicht sonderlich elegant weil wir eigentlich vermeiden wollten, das entsprechende Mapping in der web.xml überhaupt "freizuschalten", sondern hatten gehofft dass wir das irgendwie über Aufruf einer executable oder so regeln könnten (gibt ja lt. Doku auch den Weg den Service per standalone service runner zu steuern, da war mir aber die Integration in die Generierung dann nicht so klar). Aber wie gesagt, wir haben es dann erstmal komplett vom Workflow gelöst.

Möglicherweise steht das Thema aber demnächst wieder an, dann wissen wir nun zumindest dass der Aufruf der URL des Service der Weg der Wahl wäre,

Danke & viele Grüße

Mona

0 Kudos