Ich habe einige Probleme mit JSONStore auf Android. Es funktioniert gut mit mfpdev App Vorschau.MobileFirst Platform 8 Cordova: JSONStore Probleme auf Android
intialization Code (erfolgreich ausgeführt wird):
let collections = {
workorders: {
searchFields: {id: 'integer'}
}
}
WL.JSONStore.init(collections).then((success) => {
console.log("Jsonstore init success");
},
(failure) => {
console.log("Jsonstore init failed", failure);
});
Put-Code (doesn‘Arbeit, Fehlerprotokolle siehe unten):
put(data) : void {
console.log("JSONStore put function called: " + JSON.stringify(data));
if (!Array.isArray(data))
{
console.log("data is not array");
data = this.json2array(data);
}
if (Array.isArray(data)){
console.log("data is array");
}
let collectionName = "workorders";
let options = {
replaceCriteria: ['id'],
addNew: true,
markDirty: false
};
WL.JSONStore.get(collectionName).change(data, options).then((success)=> {
console.log("JSONStore put success");
},
(failure) => {
console.log("JSONstore put failed: " + JSON.stringify(failure), failure);
});
}
Fehler von android logcat:
03-24 15: 29: 36.656 8362 8362 I ch romium: [INFO: CONSOLE (40796)] "JSONStore Put-Funktion namens: {" enddate ":" 2017-03-03 "," description ":" Test Arbeitsauftrag 0 "," id ": 1," ts ": "Verbot", "Status": "In Bearbeitung"}“, Quelle: file: ///android_asset/www/build/main.js (40796) 03-24 15: 29: 36,656 8362 8362 D SystemWebChromeClient: file: ///android_asset/www/build/main.js: Zeile 40798: Daten sind kein Array 03-24 15: 29: 36.656 8362 8362 I Chrom: [INFO: CONSOLE (40798)] "Daten sind kein Array", Quelle : file: ///android_asset/www/build/main.js (40798) 03-24 15: 29: 36,657 8362 8362 D SystemWebChromeClient: file: ///android_asset/www/build/main.js: Zeile 40802: Daten sind Array 03-24 15: 29: 36,657 8362 8362 I Chrom: [INFO: CONSOLE (40802)] "Daten ist Array", source: file: ///android_asset/www/build/main.js (40802) 03-24 15: 29: 36.662 8362 8362 D SystemWebChromeClient: file: ///android_asset/www/build/main.js: L ine 40813: JSONstore put fehlgeschlagen: { "src": "Laden", "err": 10, "msg": "BAD_PARAMETER_EXPECTED_DOCUMENT_OR_ARRAY_OF_DOCUMENTS", "col": "Arbeitsaufträgen", "usr": "jsonstore", "doc": {}, "res": {}} 03-24 15: 29: 36,662 8362 8362 I Chrom: [INFO: CONSOLE (40813)] "JSONstore put fehlgeschlagen: {" src ":" store "," err ": 10, "msg": "BAD_PARAMETER_EXPECTED_DOCUMENT_OR_ARRAY_OF_DOCUMENTS", "col": "Arbeitsaufträgen", "usr": "jsonstore", "doc": {} "res": {}}“, Quelle: file: /// android_asset /www/build/main.js (40813)
Der Fehler ist BAD_PARAMETER_EXPECTED_DOCUMENT_OR_ARRAY_OF_DOCUMENTS, jedoch habe ich in meinem Code es ein Array, wenn es nicht bereits eine Reihe zu machen.
Außerdem kann ich keine Unterlagen über die Änderung() -Methode auf einer JSONStore Sammlung finden, aber ich fand es in diesem Beispiel verwendet wird: https://mobilefirstplatform.ibmcloud.com/labs/developers/8.0/advancedmessenger/
Kann jemand vor Ort, was das Problem sein könnte?