Announcement

Collapse
No announcement yet.
X
  • Filter
  • Time
Clear All
new posts

    Can't remove grid row after upgrading the Smart GWT power edition version

    Hi Isomorphic,

    I am using chrome browser and smart client version: SmartClient Version: v11.0p_2017-05-26/PowerEdition Deployment (built 2017-05-26)

    Earlier i was using smart client version : v11.0p_2017-02-11/PowerEdition Deployment (built 2017-02-11) but Now i have upgrade this version to above mentioned. After upgrading, while i try to call removeData(selectedRow) function on a grid(attached with a datasource) it throws following exception printed on browser console although request is going on server end and action is performed successfully:

    *12:12:41.275:XRP6:WARN:Log:TypeError: _4 is not a function
    Stack from error.stack:
    Arra.findNextMatch(<no args: exited>) @ ISC_Core.js:484:288
    Arra.findNextIndex(<no args: exited>) @ ISC_Core.js:482:27
    Arra.findByKeys(<no args: exited>) @ ISC_Core.js:493:47
    DataSource.findByKeys(<no args: exited>) on [DataSource ID:Vendor] @ ISC_DataBinding.js:1016:18
    ResultSet.removeCacheData(<no args: exited>) on [ResultSet ID:isc_ResultSet_0 (dataSource: Vendor, created by: isc_VendorView_3_0)] @ ISC_DataBinding.js:2057:488
    ResultSet.updateCache(<no args: exited>) on [ResultSet ID:isc_ResultSet_0 (dataSource: Vendor, created by: isc_VendorView_3_0)] @ ISC_DataBinding.js:2034:30
    ResultSet.handleUpdate(<no args: exited>) on [ResultSet ID:isc_ResultSet_0 (dataSource: Vendor, created by: isc_VendorView_3_0)] @ ISC_DataBinding.js:2030:6
    ResultSet.dataSourceDataChanged(<no args: exited>) on [ResultSet ID:isc_ResultSet_0 (dataSource: Vendor, created by: isc_VendorView_3_0)] @ ISC_DataBinding.js:2027:6
    _3.eval(<no args: exited>) on [DataSource ID:Vendor] @ [no file]:4:10
    _3.thunk(<no args: exited>) on [ResultSet ID:isc_ResultSet_0 (dataSource: Vendor, created by: isc_VendorView_3_0)] @ ISC_Core.js:339:28
    _3.observation(<no args: exited>) on [DataSource ID:Vendor] @ ISC_Core.js:336:378
    DataSource.updateCaches(<no args: exited>) on [DataSource ID:Vendor] @ ISC_DataBinding.js:537:6
    [c]DataSource.handleUpdate(<no args: exited>) on [Class DataSource] @ ISC_DataBinding.js:302:153
    DataSource.fireResponseCallbacks(<no args: exited>) on [DataSource ID:Vendor] @ ISC_DataBinding.js:772:460
    DataSource._completeResponseProcessing(<no args: exited>) on [DataSource ID:Vendor] @ ISC_DataBinding.js:771:6
    DataSource._handleSCServerReply(<no args: exited>) on [DataSource ID:Vendor] @ ISC_DataBinding.js:2618:6
    [c]Class.fireCallback(_1=>Obj, _2=>"rpcResponse,data,rpcRequest", _3=>Array[3], _4=>[RPCManager ID:builtinApplication], _5=>undef) on [Class RPCManager] @ ISC_Core.js:305:104
    Class.fireCallback(_1=>Obj, _2=>"rpcResponse,data,rpcRequest", _3=>Array[3], _4=>undef) on [RPCManager ID:builtinApplication] @ ISC_Core.js:374:302
    RPCManager.fireReplyCallback(_1=>Obj, _2=>Obj, _3=>Obj, _4=>Obj{name:test}) on [Class RPCManager] @ ISC_DataBinding.js:1776:77
    _3.fireReplyCallback(callback_0_g$=>Obj, request_0_g$=>Obj, response_0_g$=>Obj, data_0_g$=>Obj{name:test}) on [Class RPCManager] @ FC26ADB3D45E5F9C5EB0E33FAE44C7CA.cache.js:119982:19
    [c]RPCManager.fireReplyCallbacks(_1=>Obj, _2=>Obj) on [Class RPCManager] @ ISC_DataBinding.js:1783:120
    [c]RPCManager.performOperationReply(_1=>Obj, _2=>Obj) on [Class RPCManager] @ ISC_DataBinding.js:1774:13
    RPCManager._performTransactionReply(_1=>3) on [Class RPCManager] @ ISC_DataBinding.js:1754:6
    [c]RPCManager.performTransactionReply(_1=>3, _2=>"//isc_RPCResponseStart-->[{affectedRows:..."[677], _3=>undef) on [Class RPCManager] @ ISC_DataBinding.js:1668:20
    eval(transactionNum=>3, results=>[object XMLHttpRequest], wd=>undef) @ [no file]:3:16
    [c]Class.fireCallback(<no args: recursion>) on [Class Comm] @ ISC_Core.js:305:104
    [c]Comm.performXmlTransactionReply(_1=>3, _2=>[object XMLHttpRequest]) on [Class Comm] @ ISC_Core.js:1411:27
    eval(xmlHttpRequest=>[object XMLHttpRequest]) @ [no file]:3:10
    [c]Class.fireCallback(<no args: recursion>) on [Class Class] @ ISC_Core.js:305:104
    Comm._fireXMLCallback(_1=>[object XMLHttpRequest], _2=>"isc.Comm.performXmlTransactionReply(3, x..."[54], _3=>undef) on [Class Comm] @ ISC_Core.js:1390:409
    XMLHttpRequest._15() @ ISC_Core.js:1398:367


    Uncaught TypeError: _4 is not a function
    at Array.isc_Arra_findNextMatch [as findNextMatch] (ISC_Core.js:484)
    at Array.isc_Arra_findNextIndex [as findNextIndex] (ISC_Core.js:482)
    at Array.isc_Arra_findByKeys [as findByKeys] (ISC_Core.js:493)
    at _3.isc_DataSource_findByKeys [as findByKeys] (ISC_DataBinding.js:1016)
    at _3.isc_ResultSet_removeCacheData [as removeCacheData] (ISC_DataBinding.js:2057)
    at _3.isc_ResultSet_updateCache [as updateCache] (ISC_DataBinding.js:2034)
    at _3.isc_ResultSet_handleUpdate [as handleUpdate] (ISC_DataBinding.js:2030)
    at _3.isc_ResultSet_dataSourceDataChanged [as dataSourceDataChanged] (ISC_DataBinding.js:2027)
    at _3.eval (eval at isc__makeFunction (ISC_Core.js:78), <anonymous>:4:10)
    at _3.thunk (ISC_Core.js:339)
    at _3.observation [as dataChanged] (ISC_Core.js:336)
    at _3.isc_DataSource_updateCaches [as updateCaches] (ISC_DataBinding.js:537)
    at Object.isc_c_DataSource_handleUpdate [as handleUpdate] (ISC_DataBinding.js:302)
    at _3.isc_DataSource_fireResponseCallbacks [as fireResponseCallbacks] (ISC_DataBinding.js:772)
    at _3.isc_DataSource__completeResponseProcessing [as $38b] (ISC_DataBinding.js:771)
    at _3.isc_DataSource__handleSCServerReply [as $50h] (ISC_DataBinding.js:2618)
    at _3.isc_c_Class_fireCallback [as fireCallback] (ISC_Core.js:305)
    at _3.isc_Class_fireCallback [as fireCallback] (ISC_Core.js:374)
    at _3.isc_c_RPCManager_fireReplyCallback [as __fireReplyCallback] (ISC_DataBinding.js:1776)
    at _3.$wnd.isc.RPCManager.fireReplyCallback (SmartGwtEntryPoint.java:424)
    at _3.isc_c_RPCManager_fireReplyCallbacks [as fireReplyCallbacks] (ISC_DataBinding.js:1783)
    at _3.isc_c_RPCManager_performOperationReply [as performOperationReply] (ISC_DataBinding.js:1774)
    at _3.isc_c_RPCManager__performTransactionReply [as $39d] (ISC_DataBinding.js:1754)
    at _3.isc_c_RPCManager_performTransactionReply [as performTransactionReply] (ISC_DataBinding.js:1668)
    at eval (eval at isc__makeFunction (ISC_Core.js:78), <anonymous>:3:16)
    at _3.isc_c_Class_fireCallback [as fireCallback] (ISC_Core.js:305)
    at _3.isc_c_Comm_performXmlTransactionReply [as performXmlTransactionReply] (ISC_Core.js:1411)
    at eval (eval at isc__makeFunction (ISC_Core.js:78), <anonymous>:3:10)
    at Object.isc_c_Class_fireCallback [as fireCallback] (ISC_Core.js:305)
    at _3.isc_c_Comm__fireXMLCallback [as $h0] (ISC_Core.js:1390)
    at XMLHttpRequest._15 (ISC_Core.js:1398)


    [FONT=Arial, Verdana, sans-serif][COLOR=#000000]Little analysis form my end:[/COLOR][/FONT]

    [FONT=Arial, Verdana, sans-serif][COLOR=#000000]It is throwing exception in [/COLOR][/FONT]File: ISC_Core.js, Line: 484, Column: 284 which is as follows:

    var _5=this.dataSource||isc.DataSource;var _6=_5.applyFilter(this.getRange(_2,_3+1),_1);if(_6.size()!=0)return this.findIndex(_6.get(0));else return-1}
    var _7=isc.getKeys(_1),_8=_3>=_2;if(_4){var _9=isc.isAn.Object(_4);for(var i=_2;(_8?i<=_3:i>=_3);(_8?i++:i--)){var _11=this.get(i);if(!_11)continue;var _12=true;for(var j=0;j<_7.length;j++){var _14=_7[j];if(_9&&_4[_14]!=null){if(!_4[_14](_11[_14],_1[_14],_14)){_12=false;break}}else if(!_4(_11[_14],_1[_14],_14)){_12=false;break}}

    Due to this exception i am unable perform some action in callback of removeData function.Please help me out.

    #2
    It looks like your server code is probably returning invalid data, possible just null for the "data" attribute. You can figure this out by looking at the RPC tab to see the response. The response is also something you are required to post to the forums for this kind of issue.

    Comment


      #3
      Hello Isomorphic,

      As i can see 'data' attribute is not null in my case. Please find my response object of RPC call as follows:

      {
      affectedRows:0,
      data:{
      country:"US",
      notes:null,
      city:null,
      dotFlag:null,
      vendorId:198708445,
      cell:null,
      orderUrl:null,
      contact:null,
      vendorMaterial:null,
      vendorTypeId:{
      user1:"",
      sequenceNumber:0,
      codeId:4,
      auditUserId:null,
      code:"DFM",
      codeType:{
      codeTypeId:1,
      auditUserId:null,
      allowEdit:"N",
      description:"Vendor Type"
      },
      sortOrder:0,
      description:"Door / Frame Manufacturer",
      required:"N"
      },
      details:"Details",
      state:null,
      abbr:"test",
      fax:null,
      email:null,
      zip:null,
      address3:null,
      address2:null,
      address1:null,
      business_unit:null,
      auditUserId:null,
      deleted:true,
      web_url:null,
      phone:null,
      name:"test"
      },
      invalidateCache:false,
      isDSResponse:true,
      queueStatus:0,
      status:0
      }

      Comment


        #4
        This issue can't be reproduced by just using removeSelectedData() in a databound grid.

        What is the PK field in your DataSource? If there's more than one, name them all.

        We also need to see the request data, and, if the PK values differ between the request and response, that's the problem and you need to fix that.

        Comment


          #5
          By way if a follow-up, we are unable to find any issues in the framework in this area, having tested various scenarios using DataSources with single- or multiple-column primaryKeys of single or mixed types.

          We'll need to see a runnable testcase that shows the issue, including the DataSources, which can be marked clientOnly for the purpose of creating a testcase.

          Comment

          Working...
          X