Übersicht
Der JSON-Konnektor bietet die Funktionalität, Daten aus lokalen JSON- oder JSONL-Dateien abzurufen und im Fess-Index zu registrieren.
Für diese Funktion ist das Plugin fess-ds-json erforderlich.
Voraussetzungen
Die Installation des Plugins ist erforderlich
Zugriff auf die JSON-Dateien ist erforderlich
Die JSON-Struktur muss bekannt sein
Plugin-Installation
Methode 1: JAR-Datei direkt platzieren
Methode 2: Über die Administrationsoberfläche installieren
Öffnen Sie „System“ -> „Plugins“
Laden Sie die JAR-Datei hoch
Starten Sie Fess neu
Konfiguration
Konfigurieren Sie über die Administrationsoberfläche unter „Crawler“ -> „Datenspeicher“ -> „Neu erstellen“.
Grundeinstellungen
| Einstellung | Beispielwert |
|---|---|
| Name | Products JSON |
| Handler-Name | JsonDataStore |
| Aktiviert | Ein |
Parameter-Einstellungen
Lokale Datei:
Mehrere Dateien:
Verzeichnisangabe:
Parameterliste
Warnung
Es muss entweder files oder directories angegeben werden. Wenn keiner von beiden angegeben ist, wird eine DataStoreException ausgelöst. Wenn beide angegeben sind, hat files Vorrang und directories wird ignoriert.
Bemerkung
Dieser Konnektor unterstützt ausschließlich JSON-Dateien im lokalen Dateisystem. HTTP-Zugriff oder API-Authentifizierung werden nicht unterstützt.
Skript-Einstellungen
Einfaches JSON-Objekt:
Verschachteltes JSON-Objekt:
Verarbeitung von Array-Elementen:
Verfügbare Felder
data.<Feldname>- Felder des JSON-Objektsdata.<Eltern>.<Kind>- Verschachtelte Objektedata.<Array>[<Index>]- Array-Elementedata.<Array>.<Methode>- Array-Methoden (join, length usw.)
JSON-Format-Details
JSON-Dateiformat
Der JSON-Konnektor liest Dateien im JSONL-Format (JSON Lines). Dabei wird pro Zeile ein JSON-Objekt geschrieben.
Bemerkung
JSON-Dateien im Array-Format ( [{...}, {...}] ) können nicht direkt gelesen werden. Bitte konvertieren Sie diese in das JSONL-Format.
JSONL-Datei:
Anwendungsbeispiele
Produktkatalog
Parameter:
Skript:
Integration mehrerer JSON-Dateien
Parameter:
Skript:
Fehlerbehebung
Datei nicht gefunden
Symptom: FileNotFoundException
Prüfpunkte:
Überprüfen Sie, ob der Dateipfad korrekt ist
Überprüfen Sie, ob die Datei existiert
Überprüfen Sie, ob Leserechte vorhanden sind
JSON-Analysefehler
Symptom: JsonParseException oder Unexpected character
Prüfpunkte:
Überprüfen Sie, ob die JSON-Datei im korrekten Format ist:
Überprüfen Sie die Zeichenkodierung
Überprüfen Sie, ob ungültige Zeichen oder Zeilenumbrüche vorhanden sind
Überprüfen Sie, ob Kommentare enthalten sind (im JSON-Standard sind Kommentare nicht erlaubt)
Keine Daten abgerufen
Symptom: Der Crawl ist erfolgreich, aber die Anzahl der Ergebnisse ist 0
Prüfpunkte:
Überprüfen Sie die JSON-Struktur
Überprüfen Sie die Skript-Einstellungen
Überprüfen Sie die Feldnamen (einschließlich Groß-/Kleinschreibung)
Überprüfen Sie die Protokolldateien auf Fehlermeldungen
Große JSON-Dateien
Symptom: Speichermangel oder Zeitüberschreitung
Lösung:
Teilen Sie die JSON-Datei in mehrere Dateien auf
Erhöhen Sie die Heap-Größe von Fess
Erweiterte Skript-Beispiele
Bedingte Verarbeitung
Jedes Feld wird als eigenständiger Ausdruck ausgewertet. Für bedingte Werte verwenden Sie den ternären Operator:
Array-Verknüpfung
Standardwerte festlegen
Datumsformatierung
Numerische Verarbeitung
Referenzen
Übersicht der Datenspeicher-Konnektoren - Übersicht der Datenspeicher-Konnektoren
CSV-Konnektor - CSV-Konnektor
Datenbank-Konnektor - Datenbank-Konnektor
Datenspeicher-Crawl - Datenspeicher-Konfigurationsleitfaden