Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

...

  • Result ("total": Number, "vos": JSONArray von ValueObjects)
    "total" ist die Anzahl alle Datensätze, die die Suche ohne Einschränkung der Blockgröße gefunden hat. Beispiel für ein Result-JSONObject:

    Codeblock
    {"total":4,"vos":[
    {"uid":"KIb7Pmxm3AnJtdBWXWsJ","nyVRqlqCUYvH3GNwlKrn":400,"zTc3H0vtH5o2JV82gRtg":"Schraube","pk":40000191},  {"uid":"KIb7Pmxm3AnJtdBWXWsJ","nyVRqlqCUYvH3GNwlKrn":41,"zTc3H0vtH5o2JV82gRtg":"Stuhl","pk":40000192}]}
  • SearchResult ("uid": String, "name": String, "pk": Long/String, "text": String)
    Beispiel für ein SearchResult-JSONObject:

    Codeblock
    {"uid":"KIb7Pmxm3AnJtdBWXWsJ",
     "name":"Artikel"
     "pk":40000217
     "text":"anzahl=4, lieferung=2013-06-28, lieferbar=null, name=Schrank, preis=256.17"}
  • ReferenceValue ("pk": Long/String, "name": String)
    Beispiel für ein ReferenceValue-JSONObject:

    Codeblock
    {"pk":40006894,
     "name":"Herr Rossi"}
  • SubEntity ("name": String, "entity": String, "field": String)
    Beispiel für ein SubEntity-JSONObject:

    Codeblock
    {"name":"Artikel,
     "entity":"KIb7Pmxm3AnJtdBWXWsJ"
     "field":"szU1s75TFT6kGF7l0Whj"}
  • Menu ("path": String, "entries": JSONArray("uid": String, "name": String))
    Beispiel für ein Menu-JSONObject:

    Codeblock
    {"path":"Freetime",
    "entries":[{"uid":"oJeMHK7Y9A-1L7fOVrocA","name":"Ladder"},
               {"uid":"k4lF4lDOcA-nl36NMw","name":"TreeHouse"},
               {"uid":"Uzmz50InTg-yJ21HtZIA","name":"New Entity"}]}

Datentypen:

Um die 4 JSON-Datentypen (String, Number, Boolean, Null) weiter zu definieren, kann der Datentyp explizit in von den MetaDaten ermittelt werden, z.B. durch den Service "Field". Folgende Datentypen werden u.a. geliefert.

  • String
  • Number (bedeutet hier ganzzahlige Nummer)
  • Decimal (bedeutet hier exakte Dezimalzahl, vgl. mit java-BigDecimal)
  • Boolean
  • Date (als JSON-String)
  • weitere NuclosSpezifische Typen, werden als (JSON-String) geliefert.

HTTP-Statuscodes:

  • 200 OK
    Wird von Services ohne Return-Object (z.b. Login oder Delete) zurückgegeben, wenn die Aktion erfolgreich durchgeführt worden ist.

  • 401 Unauthorized
    Ohne oder mit ungültiger Session ID wird dieser Status gemeldet. Bei fehlgeschlagenem Login ebenfalls.

  • 403 Forbidden
    Wird eine Aktion versucht, zu der der User keine Berichtigung besitzt (z.b. Ändern einer Entität, auf der nur Leseberechtigung besteht), kommt diese Meldung.

  • 404 Not Found
    Wenn der Pfad des Services nicht korrekt ist, wird 404 zurückgegeben.

  • 406 Not Acceptable
    Bei Fehlern in den JSON-Objekten (bei POST und PUT) erscheint diese Meldung.

  • 430 Custom "CommonFatalException"
    Bei der Verarbeitung von Daten wurde eine "CommonFatalException" geworfen.

...