Einleitung
Der Odoo JSONRPC Error tritt auf, wenn ein an Odoo gesendeter Aufruf über das JSON‑RPC‑Protokoll fehlschlägt. JSON‑RPC ist die Standardkommunikation des Odoo‑Webclients und vieler moderner Integrationen.
Im Unterschied zu XML‑RPC wird JSON‑RPC vor allem eingesetzt für:
- Interaktionen der Weboberfläche
- Individuelle Integrationen
- Headless‑Setups mit Odoo
- Synchronisationen zu Fremdsystemen
Wenn ein JSON‑RPC‑Aufruf fehlschlägt, liefert Odoo eine Fehlerantwort, die meist so erscheint:
RPC_ERROR: Odoo Server Error
Oder als JSON‑Objekt in API‑Antworten.
Diese Anleitung erläutert, was JSONRPC‑Fehler in Odoo bedeuten und wie man sie systematisch behebt.
Was bedeutet JSON‑RPC in Odoo?
JSON‑RPC (JavaScript Object Notation Remote Procedure Call) erlaubt es, Methodenaufrufe an Odoo per HTTP mit JSON‑Payloads zu senden.
Ein typischer JSON‑RPC‑Aufruf besteht aus einem Standard‑Wrapper mit Methodenname, Parametern und einer ID; die konkrete Struktur variiert je nach Aktion.
{
"jsonrpc": "2.0",
"method": "call",
"params": {
"service": "object",
"method": "execute_kw",
"args": [
"database_name",
2,
"password",
"res.partner",
"search",
[[["is_company", "=", true]]]
]
},
"id": 1
}
Wenn das Backend eine Ausnahme wirft, liefert Odoo eine Fehlerantwort im JSON‑Format mit Details zur Ursache.
Typische Ursachen für JSONRPC‑Fehler in Odoo
1. Authentifizierungsfehler
Wenn die Anfrage eine der folgenden Bedingungen erfüllt:
- Ungültige Zugangsdaten
- Falsche Datenbankkennung
- Abgelaufene Session oder Token
wird der Aufruf von Odoo abgelehnt.
Authentifizierungsprobleme gehören zu den häufigsten Ursachen für JSONRPC‑Fehler.
2. Ungültiger Methodenaufruf
Fehler treten auf, wenn der JSON‑Payload verweist auf:
- Ein nicht vorhandenes Modell
- Eine nicht existierende Methode
- Falsche Argumente für die Methode
Dann erzeugt das Backend eine Ausnahme, die als JSONRPC‑Fehler zurückgegeben wird.
3. Fehlende Pflichtfelder
Bei create‑ oder write‑Aufrufen führt das Weglassen von Pflichtfeldern zu Validierungsfehlern, die in der JSON‑Antwort sichtbar werden.
Beispiel:
{
"name": "Order 001"
}
Fehlt etwa partner_id, wenn es verpflichtend ist → Fehler.
4. Zugriffsrechte
Wenn der API‑Nutzer nicht die nötigen Berechtigungen hat, meldet Odoo einen Zugriffsfehler im JSON‑Format.
Das passiert besonders oft in produktiven Systemen, wenn Integrationskonten eingeschränkte Rechte besitzen.
5. Ungültige relationale IDs
Erhält ein Many2one‑Feld eine ID, die nicht existiert, wirft das Backend eine Ausnahme.
Beispiel:
{
"partner_id": 99999
}
Existiert die ID 99999 nicht → JSONRPC‑Fehler.
6. Verstoß gegen Datenbank‑Constraints
Fehler wie:
- Duplicate key value violates unique constraint
- Foreign key constraint failure
- Not null constraint
können in den JSONRPC‑Antworten auftauchen.
7. Server‑Timeouts oder lange Operationen
Große Datenmengen oder Bulk‑Operationen können Zeitlimits überschreiten, besonders bei hoher Last.
So beheben Sie einen Odoo JSONRPC‑Fehler
Schritt 1 – JSON‑Fehlerantwort prüfen
Die meisten JSONRPC‑Fehler enthalten folgende Informationen:
- Fehlertyp
- Fehlermeldung
- Traceback/Stacktrace
Lesen Sie die Backend‑Fehlerdetails sorgfältig, um die eigentliche Ursache zu erkennen.
Schritt 2 – Authentifizierung verifizieren
Stellen Sie sicher, dass:
- Der Datenbankname korrekt ist
- User‑ID oder Session‑Token gültig sind
- Passwort oder API‑Key stimmen
- Der Benutzer aktiv und nicht gesperrt ist
Schritt 3 – Payload‑Struktur validieren
Vor dem Senden sollten Sie:
- Prüfen, dass Pflichtfelder vorhanden sind
- Relationen‑IDs validieren
- Keine NULL‑Werte in Pflichtfeldern senden
- Datentypen korrekt verwenden
Eine strukturierte Validierung vor dem Versand verhindert viele Laufzeitfehler.
Schritt 4 – Zugriffsrechte überprüfen
Kontrollieren Sie, ob das Integrationskonto über folgende Rechte verfügt:
- Lesezugriff
- Schreibzugriff
- Erstellungsrecht
- Löschrecht
je nach benötigter Aktion.
Schritt 5 – Aktion im Odoo‑UI testen
Führen Sie denselben Vorgang manuell in der Odoo‑Oberfläche aus.
Schlägt er dort fehl, deutet das auf Daten‑ oder Berechtigungsprobleme hin.
Schritt 6 – Server‑Logs prüfen
Ist die JSON‑Antwort zu allgemein, werfen Sie einen Blick in die Odoo‑Logs für den vollständigen Traceback.
So verhindern Sie JSONRPC‑Fehler
- Gute Praxis ist es, dedizierte API‑Accounts zu nutzen
- Eingehende Daten vor dem Senden zu validieren
- Request‑ und Response‑Payloads zu protokollieren
- strukturierte Fehlerbehandlung in Integrationen zu implementieren
- Bulk‑Operationen nicht in einem einzigen Request zu bündeln
- Integrationsabläufe in einer Staging‑Umgebung zu testen
In API‑zentrierten Odoo‑Setups zahlt sich eine Validierungs‑ und Transformationsschicht zwischen Fremdsystemen und Odoo aus — sie reduziert viele JSONRPC‑Fehler.
Wie Dasolo JSONRPC‑Kommunikation absichert
JSONRPC‑Fehler resultieren häufig aus inkonsistenter Sessionpflege, fehlerhaften Payloads oder ungenügender Server‑Validierung. Da JSONRPC die meisten Webinteraktionen in Odoo steuert, erzeugen kleine Konfigurationslücken schnell wiederkehrende Frontend‑Probleme.
Bei Dasolo stärken wir die JSONRPC‑Stabilität durch:
- Strenge Validierung eingehender Requests
- Kontrolliertes Session‑Management
- Konsistente Ausnahme‑ und Fehlerbehandlungs‑Muster
- Sichere Exposition der Endpunkte
- Umfassende Protokollierung aller API‑Aufrufe
Einheitliche Kommunikationsprozesse reduzieren unerwartete Laufzeitfehler und erhöhen die Zuverlässigkeit der Plattform.
Fazit
Der Odoo‑Fehler "JSONRPC Error" signalisiert meist, dass eine Backend‑Ausnahme die Kommunikation zwischen Client und Server unterbrochen hat. Obwohl die Meldung allgemein wirkt, steckt dahinter oft ein Problem in der Anfrageformatierung, Authentifizierung oder Server‑Logik.
Durch saubere Prüfung der API‑Strukturen, rigorose Eingabevalidierung und vorhersehbare Fehlerbehandlung lassen sich wiederkehrende JSONRPC‑Störungen vermeiden. Eine gut gestaltete Kommunikationsschicht sorgt für stabile und performante Abläufe in Odoo‑Umgebungen.