Power 3.0
Using Oracle 11g with an SQLDataSource.
We've had an old bug where fields of type 'time' in a ds.xml file would throw some sort of exception in ISC code.
We were able to "work around" this issue in 1 of 2 ways:
1) Create a custom attribute called "useTimeOnly" in ds.xml fields. We would then look for this in a custom ListGrid that would override setDataSource() and look for this attribute, and if it existed, change the FieldType to Time instead of DateTime.
2) Intercept all fetch() calls from a datasource extending from SQLDataSource. Look for all fields with type 'time' and manually convert the oracle.sql.TIMESTAMP object from the server into a java.sql.Time object for the client.
Either of these workarounds fixes the exceptions we were seeing in SmartGwt. However, filtering doesn't work on the FilterEditor for ListGrids. We would see an error about IContains not being valid for fields of type Time and that it would be ignored. This caused the time filter to conver to 0:00 on the UI and it would always return no data.
Here is the error below. We would really just like to use field types "time" in our ds.xml files and avoid the hacks. Please let us know how we should proceed with that as well as what we can do to be able to filter by time in the ListGrid filter editor.
Using Oracle 11g with an SQLDataSource.
We've had an old bug where fields of type 'time' in a ds.xml file would throw some sort of exception in ISC code.
We were able to "work around" this issue in 1 of 2 ways:
1) Create a custom attribute called "useTimeOnly" in ds.xml fields. We would then look for this in a custom ListGrid that would override setDataSource() and look for this attribute, and if it existed, change the FieldType to Time instead of DateTime.
2) Intercept all fetch() calls from a datasource extending from SQLDataSource. Look for all fields with type 'time' and manually convert the oracle.sql.TIMESTAMP object from the server into a java.sql.Time object for the client.
Either of these workarounds fixes the exceptions we were seeing in SmartGwt. However, filtering doesn't work on the FilterEditor for ListGrids. We would see an error about IContains not being valid for fields of type Time and that it would be ignored. This caused the time filter to conver to 0:00 on the UI and it would always return no data.
Here is the error below. We would really just like to use field types "time" in our ds.xml files and avoid the hacks. Please let us know how we should proceed with that as well as what we can do to be able to filter by time in the ListGrid filter editor.
Code:
Uncaught JavaScript exception [newData is undefined] in http://127.0.0.1:8888/drmsWebApp/sc/modules/ISC_DataBinding.js, line 1443
Code:
12:34:41.092 [ERROR] [drmsWebApp] 12:34:41.067:XRP5:WARN:Log:TypeError: newData is undefined unnamed({Obj}, undef, {Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1443 [c]Class.fireCallback(_1=>{Obj}, _2=>"dsResponse,data,dsRequest", _3=>[object Array], _4=>{Obj}, _5=>undef) @ drmsWebApp/sc/modules/ISC_Core.js:334 [c]Class.fireCallback(_1=>{Obj}, _2=>"dsResponse,data,dsRequest", _3=>[object Array]) @ drmsWebApp/sc/modules/ISC_Core.js:432 DataSource.fireResponseCallbacks({Obj}, {Obj}, {Obj}, {Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:587 DataSource._completeResponseProcessing(undef, {Obj}, {Obj}, {Obj}, {Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:584 DataSource._handleSCServerReply({Obj}, undef, {Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1891 [c]Class.fireCallback(_1=>{Obj}, _2=>"rpcResponse,data,rpcRequest", _3=>[object Array], _4=>{Obj}, _5=>undef) @ drmsWebApp/sc/modules/ISC_Core.js:334 [c]Class.fireCallback(_1=>{Obj}, _2=>"rpcResponse,data,rpcRequest", _3=>[object Array]) @ drmsWebApp/sc/modules/ISC_Core.js:432 anonymous(callback=>{Obj}, request=>{Obj}, response=>{Obj}, data=>undef) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1335 unnamed({Obj}, {Obj}, {Obj}, undef) @ :188 [c]RPCManager.fireReplyCallbacks(_1=>{Obj}, _2=>{Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1340 [c]RPCManager.performOperationReply(_1=>{Obj}, _2=>{Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1334 RPCManager._performTransactionReply(5) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1328 [c]RPCManager.performTransactionReply(_1=>5, _2=>"//isc_RPCResponseStart-->[{data:[{START..."[ 737], _3=>undef) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1285 anonymous(5, [object XMLHttpRequest]) @ drmsWebApp/sc/modules/ISC_Core.js:62 [c]Class.fireCallback(_1=>"isc.RPCManager.performTransactionReply(..."[ 67], _2=>"transactionNum,results,wd", _3=>[object Array]) @ drmsWebApp/sc/modules/ISC_Core.js:334 [c]Comm.performXmlTransactionReply(_1=>5, _2=>[object XMLHttpRequest]) @ drmsWebApp/sc/modules/ISC_Core.js:1319 anonymous([object XMLHttpRequest]) @ drmsWebApp/sc/modules/ISC_Core.js:62 [c]Class.fireCallback(_1=>"isc.Comm.performXmlTransactionReply(5, ..."[ 56], _2=>"xmlHttpRequest", _3=>[object Array], _4=>[object Proxy], _5=>true) @ drmsWebApp/sc/modules/ISC_Core.js:334 Comm._fireXMLCallback([object XMLHttpRequest], "isc.Comm.performXmlTransactionReply(5, ..."[ 56]) @ drmsWebApp/sc/modules/ISC_Core.js:1293 unnamed([object Event]) @ drmsWebApp/sc/modules/ISC_Core.js:1305 unnamed() @ com.smartgwt.client.core.JsObject$SGWT_WARN: 12:34:41.067:XRP5:WARN:Log:TypeError: newData is undefined unnamed({Obj}, undef, {Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1443 [c]Class.fireCallback(_1=>{Obj}, _2=>"dsResponse,data,dsRequest", _3=>[object Array], _4=>{Obj}, _5=>undef) @ drmsWebApp/sc/modules/ISC_Core.js:334 [c]Class.fireCallback(_1=>{Obj}, _2=>"dsResponse,data,dsRequest", _3=>[object Array]) @ drmsWebApp/sc/modules/ISC_Core.js:432 DataSource.fireResponseCallbacks({Obj}, {Obj}, {Obj}, {Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:587 DataSource._completeResponseProcessing(undef, {Obj}, {Obj}, {Obj}, {Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:584 DataSource._handleSCServerReply({Obj}, undef, {Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1891 [c]Class.fireCallback(_1=>{Obj}, _2=>"rpcResponse,data,rpcRequest", _3=>[object Array], _4=>{Obj}, _5=>undef) @ drmsWebApp/sc/modules/ISC_Core.js:334 [c]Class.fireCallback(_1=>{Obj}, _2=>"rpcResponse,data,rpcRequest", _3=>[object Array]) @ drmsWebApp/sc/modules/ISC_Core.js:432 anonymous(callback=>{Obj}, request=>{Obj}, response=>{Obj}, data=>undef) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1335 unnamed({Obj}, {Obj}, {Obj}, undef) @ :188 [c]RPCManager.fireReplyCallbacks(_1=>{Obj}, _2=>{Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1340 [c]RPCManager.performOperationReply(_1=>{Obj}, _2=>{Obj}) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1334 RPCManager._performTransactionReply(5) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1328 [c]RPCManager.performTransactionReply(_1=>5, _2=>"//isc_RPCResponseStart-->[{data:[{START..."[ 737], _3=>undef) @ drmsWebApp/sc/modules/ISC_DataBinding.js:1285 anonymous(5, [object XMLHttpRequest]) @ drmsWebApp/sc/modules/ISC_Core.js:62 [c]Class.fireCallback(_1=>"isc.RPCManager.performTransactionReply(..."[ 67], _2=>"transactionNum,results,wd", _3=>[object Array]) @ drmsWebApp/sc/modules/ISC_Core.js:334 [c]Comm.performXmlTransactionReply(_1=>5, _2=>[object XMLHttpRequest]) @ drmsWebApp/sc/modules/ISC_Core.js:1319 anonymous([object XMLHttpRequest]) @ drmsWebApp/sc/modules/ISC_Core.js:62 [c]Class.fireCallback(_1=>"isc.Comm.performXmlTransactionReply(5, ..."[ 56], _2=>"xmlHttpRequest", _3=>[object Array], _4=>[object Proxy], _5=>true) @ drmsWebApp/sc/modules/ISC_Core.js:334 Comm._fireXMLCallback([object XMLHttpRequest], "isc.Comm.performXmlTransactionReply(5, ..."[ 56]) @ drmsWebApp/sc/modules/ISC_Core.js:1293 unnamed([object Event]) @ drmsWebApp/sc/modules/ISC_Core.js:1305 unnamed() @ at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source) at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source) at java.lang.reflect.Constructor.newInstance(Unknown Source) 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(Unknown Source)
Comment