【问题标题】:PROVISION_TABLE_SEARCH_FIELDS_MISMATCH for IBM Mobile First JsonStore InitializationPROVISION_TABLE_SEARCH_FIELDS_MISMATCH 用于 IBM Mobile First JsonStore 初始化
【发布时间】:2018-06-30 01:16:29
【问题描述】:

我正在使用 Javascript JSONStore 在 IBM Mobile First Platform 8.0.0 中初始化 JsonStore 集合。我面临的问题是以下代码在某些设备上运行良好,而对于某些设备,它是否出现以下错误。

01-19 19:49:43.487 11622-11646/com.mobiInspect D/JSONSTORE:JSONStoreLogger.java:197 中的 JSONStoreLogger.logTrace :: 现有集合的表架构不匹配。 01-19 19:49:43.492 11622-11646/com.mobiInspect D/JSONSTORE: JSONStoreLogger.logTrace 在 JSONStoreLogger.java:197 :: 调度动作“供应” 01-19 19:49:43.498 11622-11646/com.mobiInspect D/JSONSTORE:JSONStoreLogger.java:197 中的 JSONStoreLogger.logTrace :: 使用参数调用动作调度程序“provision”: 01-19 19:49:43.501 11622-11646/com.mobiInspect D/JSONSTORE: JSONStoreLogger.logTrace 在 JSONStoreLogger.java:197 :: dbName=inspectorList 01-19 19:49:43.505 11622-11622/com.mobiInspect D/WebView:evaluateJavascript=cordova.callbackFromNative('LoggerPlugin1661877744',true,1,["OK"],false); 01-19 19:49:43.506 11622-11646/com.mobiInspect D/JSONSTORE: JSONStoreLogger.logTrace 在 JSONStoreLogger.java:197 :: schema={"name":"string"} 01-19 19:49:43.512 11622-11646/com.mobiInspect D/JSONSTORE: JSONStoreLogger.logTrace in JSONStoreLogger.java:197 :: options=[未记录的值] 01-19 19:49:43.515 11622-11646/com.mobiInspect D/JSONSTORE: JSONStoreLogger.logTrace 在 JSONStoreLogger.java:197::additionalSearchFields={} 01-19 19:49:43.519 11622-11646/com.mobiInspect D/JSONSTORE: JSONStoreLogger.logTrace 在 JSONStoreLogger.java:197 :: dropCollection=false 01-19 19:49:43.523 11622-11646/com.mobiInspect D/JSONSTORE: JSONStoreLogger.logTrace 在 JSONStoreLogger.java:197 :: username=jsonstore 01-19 19:49:43.529 11622-11646/com.mobiInspect D/JSONSTORE: JSONStoreLogger.logTrace 在 JSONStoreLogger.java:197 :: collectionPassword=xxxxxxxx 01-19 19:49:43.533 11622-11646/com.mobiInspect E/null: 初始化失败: 任务列表集合 {"src":"initCollection","err":-2,"msg":"PROVISION_TABLE_SEARCH_FIELDS_MISMATCH", "col":"myTasks","usr":"jsonstore","doc":{},"res":{}} 01-19 19:49:43.535 11622-11646/com.mobiInspect E/wl.jsonstore: {"src":"initCollection","err":-2,"msg":"PROVISION_TABLE_SEARCH_FIELDS_MISMATCH","col":" myTasks","usr":"jsonstore","doc":{},"res":{}} 01-19 19:49:43.753 11622-11633/com.mobiInspect I/art: 背景粘性并发标记扫描 GC 释放 41582(2MB) AllocSpace 对象,0(0B) LOS 对象,10% 空闲,15MB/17MB,暂停 3.657毫秒总 148.294 毫秒 01-19 19:49:43.768 11622-11646/com.mobiInspect D/wl.response:WLResponse。在 WLResponse.java:69 :: Response 中不包含 Content-Encoding 标头。试图读取响应正文。 01-19 19:49:43.814 11622-11646/com.mobiInspect D/wl.request: WLRequestSender.run in WLRequestSender.java:43 :: 发送请求https://www.serverurl.com/mfp/api/az/v1/token

$scope.init_collection = function () {
    ProgressIndicator.showSimpleWithLabel(false, 'Loading...');

    //Data Collection

    collections1['COLLECTION_NAME'] = {
        searchFields: {'id': 'string', 'processid': 'string', 'state': 'integer'}
    };

    WL.JSONStore.init(collections1, options)
    .then(function () {
        WL.Logger.info("Inside Task Submission Collection");

        WL.JSONStore.fileInfo()
                                .then(function (res) {
                                WL.Logger.debug(" Success response of Task Submission Collection fileInfo :" +JSON.stringify(res));
                                  //res => [{isEncrypted : true, name : carlos, size : 3072}]
                                })

                                  .fail(function (failRes) {
                                  WL.Logger.debug("Failure response of Task Submission Collection fileInfo :" +JSON.stringify(failRes));
                                  // Handle failure.
                                });
    })
    .fail(function (errorObject) {
        //WL.Logger.error(Messages.ERR_LGN_FAIL_INI_DTA_STRG);
        WL.Logger.error("Initialization failure on : Task Submission Collection "+JSON.stringify(errorObject));
    });
    //WL.Logger.info(Messages.INF_LGN_INI_DTA_STRG);
    //Data Collection

    //Image Collection

    collections2["COLLECTION_IMAGE"] = {
        searchFields: {'id': 'string', 'processid': 'string', 'isImageSubmitted': 'boolean'}
    };

    WL.JSONStore.init(collections2, options)
    .then(function () {
        WL.Logger.info("Inside Image Submission Collection");

        WL.JSONStore.fileInfo()
                                    .then(function (res) {
                                    WL.Logger.debug(" Success response of Image Submission Collection fileInfo :" +JSON.stringify(res));
                                      //res => [{isEncrypted : true, name : carlos, size : 3072}]
                                    })

                                      .fail(function (failRes) {
                                      WL.Logger.debug("Failure response of Image Submission Collection fileInfo :" +JSON.stringify(failRes));
                                      // Handle failure.
                                    });
    })
    .fail(function (errorObject) {
        //WL.Logger.error(Messages.ERR_LGN_FAIL_INI_IMG_CLL);
        WL.Logger.error("Initialization failure on : Image Submission Collection "+JSON.stringify(errorObject));
    });
    //WL.Logger.info(Messages.INF_LGN_CLL_INI);

    //Image Collection


    //TODAY Collection

    collections3["COLLECTION_TODAY"] = {
        searchFields: {'id': 'string', 'processid': 'string', 'state': 'integer', 'insname': 'string'}
    };
    WL.JSONStore.init(collections3, options)
    .then(function () {
        WL.Logger.info("Inside Task List Collection");

        WL.JSONStore.fileInfo()
        .then(function (res) {
            WL.Logger.debug("Success response of Task List Collection fileInfo :" +JSON.stringify(res));
                                      //res => [{isEncrypted : true, name : carlos, size : 3072}]
        })
        .fail(function (failRes) {
            WL.Logger.debug("Failure response of Task List Collection fileInfo :" +JSON.stringify(failRes));
            // Handle failure.
        });
    })
    .fail(function (errorObject) {
        //WL.Logger.error(Messages.ERR_LGN_FAIL_INI_IMG_CLL);
        WL.Logger.error("Initialization failure on : Task List Collection "+JSON.stringify(errorObject));
    });
    //WL.Logger.info(Messages.INF_LGN_CLL_INI);

    //TODAY Collection

    //List Collection
    collections4["COLLECTION_LIST"] = {
        searchFields: {'name': 'string'}
    };
    WL.JSONStore.init(collections4, options)
    .then(function () {
        WL.Logger.info("Inside Inspector List Collection");

        WL.JSONStore.fileInfo()
        .then(function (res) {
            WL.Logger.debug("Success response of Inspector List Collection fileInfo :" +JSON.stringify(res));
                                      //res => [{isEncrypted : true, name : carlos, size : 3072}]
        })
        .fail(function (failRes) {
            WL.Logger.debug("Failure response of Inspector List Collection fileInfo :" +JSON.stringify(failRes));
            // Handle failure.
        });
    })
    .fail(function (errorObject) {
        //WL.Logger.error(Messages.ERR_LGN_FAIL_INI_IMG_CLL);
        WL.Logger.error("Initialization failure on : Inspector List Collection " +JSON.stringify(errorObject));
    });
    WL.Logger.info(Messages.INF_LGN_CLL_INI);
    //List Collection

};

IBM MFP 8.0 中的 JsonStore 初始化是否遗漏了任何内容?任何帮助将不胜感激。

【问题讨论】:

    标签: ibm-mobilefirst mobilefirst-adapters jsonstore mobilefirst-studio mfp


    【解决方案1】:

    错误消息“PROVISION_TABLE_SEARCH_FIELDS_MISMATCH”可能发生在

    搜索字段不是动态的。在调用带有新搜索字段的 init 或 open 方法之前,如果不调用 destroy 方法或 removeCollection 方法,则无法更改搜索字段。如果您更改搜索字段的名称或类型,可能会发生此错误。例如:{key:'string'} 到 {key:'number'} 或 {myKey:'string'} 到 {theKey:'string'}。

    更多详情请看这里: http://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/troubleshooting/jsonstore/

    【讨论】:

    • 您好,问题仅出在某些设备上。它在真实设备或模拟器上运行良好,但为少数设备提供错误 PROVISION_TABLE_SEARCH_FIELDS_MISMATCH。这是随机问题。我们已按照您给定的参考,但问题仍然存在。
    • 您能指定您在哪些设备和安卓版本上看到问题吗?
    • 我们在 Pixel XL Android API 25、26 和 27 中遇到了这个问题。我们正在真正的 Google Pixel 设备上测试应用程序。
    • 我已经在 Pixel android 25 和 26 中成功测试了 JSON 商店示例应用程序。分享您的应用程序中出现的问题,我将使用我的像素设备进行测试,看看是什么阻止了您的应用程序在像素上运行设备。
    • 您是否正在修改或添加新的搜索字段到现有集合的搜索字段。
    猜你喜欢
    • 2017-06-30
    • 2016-04-18
    • 2016-04-07
    • 2020-01-25
    • 2014-07-01
    • 2015-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多