Hello,
using: Isomorphic SmartClient Framework (v8.2p_2012-07-30/PowerEdition Deployment 2012-07-30)
I have a listgrid in my system, and it has the fetch operation: joinEverythingExceptPresence (see below)
When I do the following:
1. Set a filter in one of the headings
2. Update any field in the filtered record (inline)
Then ==> The stacktrace on bottom of this page shows. This doesnt happen in all grids in my system (i have multiple 'similar' setup grids).
The data is correctly saved to the server, but continuing editing other rows, or changing the filter gives all kinds of strange things. Effectively, refreshing the page is the only solution for the end user.
I tried without the cacheSyncOperation, to no avail (since the stacktrace appears to be related to cache updating).
I know this is not a standalone test case (pretty hard to create one at the moment), but could you already say something about this ? Could you give any hints to what to do next to pinpoint this problem further?
Oh yes, it happens both in Dev mode, as well in production mode on all browsers.
using: Isomorphic SmartClient Framework (v8.2p_2012-07-30/PowerEdition Deployment 2012-07-30)
I have a listgrid in my system, and it has the fetch operation: joinEverythingExceptPresence (see below)
When I do the following:
1. Set a filter in one of the headings
2. Update any field in the filtered record (inline)
Then ==> The stacktrace on bottom of this page shows. This doesnt happen in all grids in my system (i have multiple 'similar' setup grids).
The data is correctly saved to the server, but continuing editing other rows, or changing the filter gives all kinds of strange things. Effectively, refreshing the page is the only solution for the end user.
I tried without the cacheSyncOperation, to no avail (since the stacktrace appears to be related to cache updating).
I know this is not a standalone test case (pretty hard to create one at the moment), but could you already say something about this ? Could you give any hints to what to do next to pinpoint this problem further?
Oh yes, it happens both in Dev mode, as well in production mode on all browsers.
Code:
<?xml version="1.0" encoding="UTF-8"?>
<DataSource ID="Lecture" serverType="sql" tableName="Lecture">
<fields>
<field name="Lecture_id" type="sequence" primaryKey="true"/>
<field name="SaasCustomer_id" type="integer" foreignKey="saasCustomers.SaasCustomer_id"/>
<field name="lectureName" type="text" required="false" length="128">
<title>lectureName</title>
<validators></validators>
</field>
<field name="startDate" type="datetime" required="false">
<title>startDate</title>
<validators></validators>
</field>
<field name="endDate" type="datetime" required="false">
<title>endDate</title>
<validators></validators>
</field>
<field name="presenceList" type="text" required="false" length="128">
<title>presenceList</title>
<validators></validators>
</field>
<field name="presenceListMarkOff" type="text" required="false" length="128">
<title>presenceListMarkOff</title>
<validators></validators>
</field>
<field name="lectureStatus" type="enum" required="false">
<title>lectureStatus</title>
<valueMap>
<value>definitief</value>
<value>geannuleerd</value>
<value>optioneel</value>
<value>uitgesteld</value>
</valueMap>
<validators></validators>
</field>
<field name="catering" type="enum" required="false">
<title>catering</title>
<valueMap>
<value>geen</value>
<value>koffie/thee</value>
<value>koffie/thee/lunch</value>
<value>catering volgens afspraak</value>
<value>lunch/diner/fris</value>
<value>lunch/fris</value>
</valueMap>
<validators></validators>
</field>
<field name="projectId" type="text" required="false" length="128">
<title>projectId</title>
<validators></validators>
</field>
<field name="CourseEdition_id" type="integer" foreignKey="CourseEdition.CourseEdition_id" required="true">
<validators></validators>
</field>
<field name="Teacher_id" type="integer" foreignKey="Teacher.Teacher_id">
<validators></validators>
</field>
<field name="Location_id" type="integer" foreignKey="Location.Location_id">
<validators></validators>
</field>
<field name="courseName" type="text" tableName="Course"/>
<field name="editionName" type="text" tableName="CourseEdition"/>
<field name="surname" type="text" tableName="Teacher"/>
<field name="tussenvoegsel" type="text" tableName="Teacher"/>
<field name="firstname" type="text" tableName="Teacher"/>
<field name="companyName" type="text" tableName="Teacher"/>
<field name="projectNumber" type="text" tableName="Project"/>
<field name="locationName" type="text" tableName="Location"/>
<field name="locationDisplayName" type="text" tableName="Location"/>
<field name="locationLink" type="text" tableName="Location"/>
<field name="street" type="text" tableName="Location"/>
<field name="number" type="text" tableName="Location"/>
<field name="number_addition" type="text" tableName="Location"/>
<field name="postcode" type="text" tableName="Location"/>
<field name="city" type="text" tableName="Location"/>
<field name="country" type="text" tableName="Location"/>
</fields>
<operationBindings>
<operationBinding operationType="fetch" requiresAuthentication="true" requiresRole="CAN_READ_LECTURE" operationId="joinEverythingExceptPresence">
<tableClause> <![CDATA[
Lecture
INNER JOIN CourseEdition ON Lecture.CourseEdition_id = CourseEdition.CourseEdition_id
INNER JOIN Course ON CourseEdition.Course_id = Course.Course_id
INNER JOIN Project ON CourseEdition.Project_id = Project.Project_id
LEFT OUTER JOIN Teacher ON Teacher.Teacher_id = Lecture.Teacher_id
LEFT OUTER JOIN Location ON Location.Location_id = Lecture.Location_id
]]> </tableClause>
</operationBinding>
<operationBinding operationType="update" requiresAuthentication="true" requiresRole="CAN_UPDATE_LECTURE">
<cacheSyncOperation>joinEverythingExceptPresence</cacheSyncOperation>
</operationBinding>
</operationBindings>
</DataSource
Code:
13:00:02.391 [ERROR] [generatedcode] 13:00:02.385:XRP7:WARN:Log:TypeError: _2 is null
DataSource.findByKeys(_1=>{Obj}, _2=>null) @ generatedcode/sc/modules/ISC_DataBinding.js:856
ResultSet.updateCacheData(_1=>[object Array], _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1523
ResultSet.updateCache(_1=>"update", _2=>[object Array], _3=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1518
ResultSet.handleUpdate(_1=>"update", _2=>[object Array], _3=>false, _4=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1513
ResultSet.dataSourceDataChanged(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1509
anonymous({Obj}, {Obj}) @ generatedcode/sc/modules/ISC_Core.js:68
DataSource.updateCaches(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:378
[c]DataSource.handleUpdate(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:286
DataSource.fireResponseCallbacks({Obj}, {Obj}, {Obj}, {Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:585
DataSource._completeResponseProcessing([object Array], {Obj}, {Obj}, {Obj}, {Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:584
DataSource._handleSCServerReply({Obj}, [object Array], {Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1890
[c]Class.fireCallback(_1=>{Obj}, _2=>"rpcResponse,data,rpcRequest", _3=>[object Array], _4=>{Obj}, _5=>undef) @ generatedcode/sc/modules/ISC_Core.js:333
[c]Class.fireCallback(_1=>{Obj}, _2=>"rpcResponse,data,rpcRequest", _3=>[object Array]) @ generatedcode/sc/modules/ISC_Core.js:431
anonymous(callback=>{Obj}, request=>{Obj}, response=>{Obj}, data=>[object Array]) @ generatedcode/sc/modules/ISC_DataBinding.js:1335
unnamed({Obj}, {Obj}, {Obj}, [object Array]) @ :188
[c]RPCManager.fireReplyCallbacks(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1340
[c]RPCManager.performOperationReply(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1334
RPCManager._performTransactionReply(50) @ generatedcode/sc/modules/ISC_DataBinding.js:1328
[c]RPCManager.performTransactionReply(_1=>50, _2=>"//isc_RPCResponseStart-->[{data:[{start..."[ 775], _3=>undef) @ generatedcode/sc/modules/ISC_DataBinding.js:1285
anonymous(50, [object XMLHttpRequest]) @ generatedcode/sc/modules/ISC_Core.js:62
[c]Class.fireCallback(_1=>"isc.RPCManager.performTransactionReply(..."[ 67], _2=>"transactionNum,results,wd", _3=>[object Array]) @ generatedcode/sc/modules/ISC_Core.js:333
[c]Comm.performXmlTransactionReply(_1=>50, _2=>[object XMLHttpRequest]) @ generatedcode/sc/modules/ISC_Core.js:1308
anonymous([object XMLHttpRequest]) @ generatedcode/sc/modules/ISC_Core.js:62
[c]Class.fireCallback(_1=>"isc.Comm.performXmlTransactionReply(50,..."[ 57], _2=>"xmlHttpRequest", _3=>[object Array], _4=>[object Proxy], _5=>true) @ generatedcode/sc/modules/ISC_Core.js:333
Comm._fireXMLCallback([object XMLHttpRequest], "isc.Comm.performXmlTransactionReply(50,..."[ 57]) @ generatedcode/sc/modules/ISC_Core.js:1282
unnamed([object Event]) @ generatedcode/sc/modules/ISC_Core.js:1294
unnamed() @
com.smartgwt.client.core.JsObject$SGWT_WARN: 13:00:02.385:XRP7:WARN:Log:TypeError: _2 is null
DataSource.findByKeys(_1=>{Obj}, _2=>null) @ generatedcode/sc/modules/ISC_DataBinding.js:856
ResultSet.updateCacheData(_1=>[object Array], _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1523
ResultSet.updateCache(_1=>"update", _2=>[object Array], _3=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1518
ResultSet.handleUpdate(_1=>"update", _2=>[object Array], _3=>false, _4=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1513
ResultSet.dataSourceDataChanged(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1509
anonymous({Obj}, {Obj}) @ generatedcode/sc/modules/ISC_Core.js:68
DataSource.updateCaches(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:378
[c]DataSource.handleUpdate(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:286
DataSource.fireResponseCallbacks({Obj}, {Obj}, {Obj}, {Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:585
DataSource._completeResponseProcessing([object Array], {Obj}, {Obj}, {Obj}, {Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:584
DataSource._handleSCServerReply({Obj}, [object Array], {Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1890
[c]Class.fireCallback(_1=>{Obj}, _2=>"rpcResponse,data,rpcRequest", _3=>[object Array], _4=>{Obj}, _5=>undef) @ generatedcode/sc/modules/ISC_Core.js:333
[c]Class.fireCallback(_1=>{Obj}, _2=>"rpcResponse,data,rpcRequest", _3=>[object Array]) @ generatedcode/sc/modules/ISC_Core.js:431
anonymous(callback=>{Obj}, request=>{Obj}, response=>{Obj}, data=>[object Array]) @ generatedcode/sc/modules/ISC_DataBinding.js:1335
unnamed({Obj}, {Obj}, {Obj}, [object Array]) @ :188
[c]RPCManager.fireReplyCallbacks(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1340
[c]RPCManager.performOperationReply(_1=>{Obj}, _2=>{Obj}) @ generatedcode/sc/modules/ISC_DataBinding.js:1334
RPCManager._performTransactionReply(50) @ generatedcode/sc/modules/ISC_DataBinding.js:1328
[c]RPCManager.performTransactionReply(_1=>50, _2=>"//isc_RPCResponseStart-->[{data:[{start..."[ 775], _3=>undef) @ generatedcode/sc/modules/ISC_DataBinding.js:1285
anonymous(50, [object XMLHttpRequest]) @ generatedcode/sc/modules/ISC_Core.js:62
[c]Class.fireCallback(_1=>"isc.RPCManager.performTransactionReply(..."[ 67], _2=>"transactionNum,results,wd", _3=>[object Array]) @ generatedcode/sc/modules/ISC_Core.js:333
[c]Comm.performXmlTransactionReply(_1=>50, _2=>[object XMLHttpRequest]) @ generatedcode/sc/modules/ISC_Core.js:1308
anonymous([object XMLHttpRequest]) @ generatedcode/sc/modules/ISC_Core.js:62
[c]Class.fireCallback(_1=>"isc.Comm.performXmlTransactionReply(50,..."[ 57], _2=>"xmlHttpRequest", _3=>[object Array], _4=>[object Proxy], _5=>true) @ generatedcode/sc/modules/ISC_Core.js:333
Comm._fireXMLCallback([object XMLHttpRequest], "isc.Comm.performXmlTransactionReply(50,..."[ 57]) @ generatedcode/sc/modules/ISC_Core.js:1282
unnamed([object Event]) @ generatedcode/sc/modules/ISC_Core.js:1294
unnamed() @
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:105)
at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:71)
at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172)
at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessages(BrowserChannelServer.java:292)
at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:546)
at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363)
at java.lang.Thread.run(Thread.java:680)
Comment