We are seeing ds.getStrictSQLFiltering() call failing if strictSQLFiltering attribute is set to either false or true in the ds.xml file with the following error:
The call fails regardless of strictSQLFiltering attribute value. It only works if strictSQLFiltering is not set at all, i.e. missing from ds.xml file. In this scenario ds.getStrictSQLFiltering() returns null.
There's nothing in the server log:
this is the test case used:
supplyItem.ds.xml:
Isomorphic SmartClient/SmartGWT Framework (v8.3p_2012-12-02/Enterprise Deployment 2012-12-02)
Code:
10:25:18.059 [ERROR] [builtinds] Unable to load module entry point class com.smartgwt.sample.client.BuiltInDS (see associated exception for details) com.google.gwt.dev.shell.HostedModeException: invoke arguments: JS value of type string, expected boolean at com.google.gwt.dev.shell.JsValueGlue.get(JsValueGlue.java:100) at com.google.gwt.dev.shell.MethodDispatch.invoke(MethodDispatch.java:65) at com.google.gwt.dev.shell.OophmSessionHandler.invoke(OophmSessionHandler.java:172) at com.google.gwt.dev.shell.BrowserChannelServer.reactToMessagesWhileWaitingForReturn(BrowserChannelServer.java:337) at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:218) at com.google.gwt.dev.shell.ModuleSpaceOOPHM.doInvoke(ModuleSpaceOOPHM.java:136) at com.google.gwt.dev.shell.ModuleSpace.invokeNative(ModuleSpace.java:561) at com.google.gwt.dev.shell.ModuleSpace.invokeNativeObject(ModuleSpace.java:269) at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeObject(JavaScriptHost.java:91) at com.smartgwt.client.core.BaseClass.getAttributeAsBoolean(BaseClass.java) at com.smartgwt.client.data.DataSource.getStrictSQLFiltering(DataSource.java:1682) at com.smartgwt.sample.client.BuiltInDS.onModuleLoad(BuiltInDS.java:26) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:396) at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200) at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:525) at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:363) at java.lang.Thread.run(Thread.java:722)
There's nothing in the server log:
Code:
[WARN] Server class 'com.isomorphic.base.InitListener' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/isomorphic_core_rpc.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html [WARN] Server class 'org.hsqldb.Server' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/hsqldb-1.8.0.10.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html [Server@4708fb1c]: [Thread[main,5,main]]: checkRunning(false) entered [Server@4708fb1c]: [Thread[main,5,main]]: checkRunning(false) exited [Server@4708fb1c]: Startup sequence initiated from main() method [Server@4708fb1c]: Loaded properties from [C:\work\smartgwtee-3.1p\samples\test-case\war\server.properties] [Server@4708fb1c]: Initiating startup sequence... [Server@4708fb1c]: Server socket opened successfully in 1 ms. [Server@4708fb1c]: Database [index=0, id=0, db=file:C:\work\smartgwtee-3.1p\samples\test-case\war\WEB-INF\db\hsqldb\isomorphic, alias=isomorphic] opened sucessfully in 1056 ms. [Server@4708fb1c]: Startup sequence completed in 1059 ms. [Server@4708fb1c]: 2012-12-18 10:32:58.250 HSQLDB server 1.8.0 is online [Server@4708fb1c]: To close normally, connect and execute SHUTDOWN SQL [Server@4708fb1c]: From command line, use [Ctrl]+[C] to abort abruptly ISC: Configuring log4j from: file:/C:/work/smartgwtee-3.1p/samples/test-case/war/WEB-INF/classes/log4j.isc.config.xml [WARN] Server class 'org.apache.commons.collections.map.LinkedMap' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/commons-collections-3.2.1.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html === 2012-12-18 10:32:58,438 [main] INFO ISCInit - Isomorphic SmartClient/SmartGWT Framework initialization called from com.isomorphic.base.InitListener === 2012-12-18 10:32:58,439 [main] INFO ISCInit - Isomorphic SmartClient/SmartGWT Framework - Initializing === 2012-12-18 10:32:58,444 [main] INFO ConfigLoader - Attempting to load framework.properties from CLASSPATH [WARN] Server class 'isc.org.apache.oro.text.perl.Perl5Util' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/isc-jakarta-oro-2.0.6.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html === 2012-12-18 10:32:58,577 [main] INFO ConfigLoader - Successfully loaded framework.properties from CLASSPATH at location: jar:file:/C:/work/smartgwtee-3.1p/lib/isomorphic_core_rpc.jar!/framework.properties === 2012-12-18 10:32:58,577 [main] INFO ConfigLoader - Attempting to load project.properties from CLASSPATH === 2012-12-18 10:32:58,578 [main] INFO ConfigLoader - Unable to locate project.properties in CLASSPATH === 2012-12-18 10:32:58,582 [main] INFO ConfigLoader - Successfully loaded isc_interfaces.properties from CLASSPATH at location: jar:file:/C:/work/smartgwtee-3.1p/lib/isomorphic_core_rpc.jar!/isc_interfaces.properties === 2012-12-18 10:32:58,582 [main] INFO ConfigLoader - Attempting to load server.properties from CLASSPATH === 2012-12-18 10:32:58,584 [main] INFO ConfigLoader - Successfully loaded server.properties from CLASSPATH at location: file:/C:/work/smartgwtee-3.1p/samples/test-case/war/WEB-INF/classes/server.properties === 2012-12-18 10:32:58,590 [main] INFO Logger - Logging system started. === 2012-12-18 10:32:58,590 [main] INFO ISCInit - Isomorphic SmartClient/SmartGWT Framework (v8.3p_2012-12-02/Enterprise Deployment 2012-12-02) - Initialization Complete === 2012-12-18 10:32:58,592 [main] INFO ISCInit - Auto-detected webRoot - using: C:\work\smartgwtee-3.1p\samples\test-case\war === 2012-12-18 10:32:58,609 [main] INFO ISCInit - Isomorphic SmartClient/SmartGWT Framework initialization called from com.isomorphic.base.Base === 2012-12-18 10:32:58,609 [main] INFO ISCInit - Isomorphic SmartClient/SmartGWT Framework is already initialized [WARN] Server class 'org.hibernate.proxy.HibernateProxy' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/hibernate3.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html [WARN] Server class 'net.sf.cglib.transform.impl.InterceptFieldEnabled' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/cglib-2.2.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html [WARN] Server class 'com.isomorphic.compression.ServletCompression' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/isomorphic_compression.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html log4j:WARN No appenders could be found for logger (org.apache.jasper.compiler.JspRuntimeContext). log4j:WARN Please initialize the log4j system properly. === 2012-12-18 10:32:58,700 [main] INFO ISCInit - Isomorphic SmartClient/SmartGWT Framework initialization called from com.isomorphic.base.Init === 2012-12-18 10:32:58,700 [main] INFO ISCInit - Isomorphic SmartClient/SmartGWT Framework is already initialized [WARN] Server class 'org.apache.commons.fileupload.FileItemFactory' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/commons-fileupload-1.2.1.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html === 2012-12-18 10:33:06,622 [l0-2] INFO RequestContext - URL: '/builtinds/sc/DataSourceLoader', User-Agent: 'Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0': Moz (Gecko) with Accept-Encoding header [WARN] Server class 'org.apache.commons.pool.impl.GenericKeyedObjectPool' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/commons-pool-1.4.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html === 2012-12-18 10:33:06,712 [l0-2] INFO PoolManager - SmartClient pooling disabled for 'supplyItem' objects === 2012-12-18 10:33:06,721 [l0-4] INFO Compression - /builtinds/sc/modules/ISC_Core.js: 783134 -> 204964 bytes === 2012-12-18 10:33:06,731 [l0-1] INFO Download - Returning 304: Not modified on conditional get of: C:\work\smartgwtee-3.1p\samples\test-case\war\builtinds\sc\skins\Enterprise\load_skin.js [WARN] Server class 'org.apache.commons.jxpath.AbstractFactory' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/commons-jxpath-1.3.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html === 2012-12-18 10:33:06,779 [l0-2] DEBUG XML - Parsed XML from C:\work\smartgwtee-3.1p\samples\test-case\war\builtinds\sc\system\schema\builtinTypes.xml: 9ms === 2012-12-18 10:33:06,840 [l0-2] DEBUG XML - Parsed XML from C:\work\smartgwtee-3.1p\samples\test-case\war\ds\supplyItem.ds.xml: 4ms === 2012-12-18 10:33:06,848 [l0-2] DEBUG XML - Parsed XML from C:\work\smartgwtee-3.1p\samples\test-case\war\builtinds\sc\system\schema\DataSource.ds.xml: 7ms [WARN] Server class 'org.apache.velocity.context.Context' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/velocity-1.6.1.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html === 2012-12-18 10:33:06,906 [l0-2] DEBUG XML - Parsed XML from C:\work\smartgwtee-3.1p\samples\test-case\war\builtinds\sc\system\schema\DataSourceField.ds.xml: 5ms === 2012-12-18 10:33:06,930 [l0-2] DEBUG XML - Parsed XML from C:\work\smartgwtee-3.1p\samples\test-case\war\builtinds\sc\system\schema\ValueMap.ds.xml: 1ms === 2012-12-18 10:33:06,938 [l0-2] DEBUG XML - Parsed XML from C:\work\smartgwtee-3.1p\samples\test-case\war\builtinds\sc\system\schema\Validator.ds.xml: 3ms [WARN] Server class 'com.isomorphic.sql.SQLDataSource' could not be found in the web app, but was found on the system classpath [WARN] Adding classpath entry 'file:/C:/work/smartgwtee-3.1p/lib/isomorphic_sql.jar' to the web app classpath for this session For additional info see: file:/C:/work/gwt-2.4.0/doc/helpInfo/webAppClassPath.html === 2012-12-18 10:33:07,020 [l0-2] DEBUG XML - Parsed XML from C:\work\smartgwtee-3.1p\samples\test-case\war\ds\animals.ds.xml: 3ms === 2012-12-18 10:33:07,040 [l0-2] DEBUG XML - Parsed XML from C:\work\smartgwtee-3.1p\samples\test-case\war\ds\employees.ds.xml: 5ms === 2012-12-18 10:33:07,057 [l0-2] DEBUG XML - Parsed XML from C:\work\smartgwtee-3.1p\samples\test-case\war\builtinds\sc\system\schema\OperationBinding.ds.xml: 5ms === 2012-12-18 10:33:07,289 [l0-2] INFO Download - Returning 304: Not modified on conditional get of: C:\work\smartgwtee-3.1p\samples\test-case\war\builtinds\sc\skins\Enterprise\skin_styles.css
Code:
public void onModuleLoad() { DataSource ds = DataSource.get("supplyItem"); Boolean mode = ds.getStrictSQLFiltering(); }
Code:
<DataSource ID="supplyItem" serverType="sql" tableName="supplyItem" titleField="itemName" testFileName="/examples/shared/ds/test_data/supplyItem.data.xml" dbImportFileName="/examples/shared/ds/test_data/supplyItemLarge.data.xml" strictSQLFiltering="false" > <fields> <field name="itemID" type="sequence" hidden="true" primaryKey="true"/> <field name="itemName" type="text" title="Item" length="128" required="true"/> <field name="SKU" type="text" title="SKU" length="10" required="true"/> <field name="description" type="text" title="Description" length="2000"/> <field name="category" type="text" title="Category" length="128" required="true" foreignKey="supplyCategory.categoryName"/> <field name="units" type="enum" title="Units" length="5"> <valueMap> <value>Roll</value> <value>Ea</value> <value>Pkt</value> <value>Set</value> <value>Tube</value> <value>Pad</value> <value>Ream</value> <value>Tin</value> <value>Bag</value> <value>Ctn</value> <value>Box</value> </valueMap> </field> <field name="unitCost" type="float" title="Unit Cost" required="true"> <validators> <validator type="floatRange" min="0" errorMessage="Please enter a valid (positive) cost"/> <validator type="floatPrecision" precision="2" errorMessage="The maximum allowed precision is 2"/> </validators> </field> <field name="inStock" type="boolean" title="In Stock"/> <field name="nextShipment" type="date" title="Next Shipment"/> </fields> </DataSource>
Comment