Announcement

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

    TypeError on fetchData with 3.1d

    Hello,

    Just upgraded from 3.1d nightly NIGHTLY-2012-09-07 to latest NIGHTLY-2012-09-27 and all data source fetchData calls started throwing the error below:

    Code:
    com.google.gwt.core.client.JavaScriptException: (TypeError): _15[i] is null 	at com.google.gwt.dev.shell.BrowserChannelServer.invokeJavascript(BrowserChannelServer.java:248) 	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.google.gwt.core.client.impl.Impl.apply(Impl.java) 	at com.google.gwt.core.client.impl.Impl.entry0(Impl.java:213) 	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) 	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) 	at java.lang.reflect.Method.invoke(Method.java:597) 	at com.google.gwt.dev.shell.MethodAdaptor.invoke(MethodAdaptor.java:103) 	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.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.invokeNativeVoid(ModuleSpace.java:289) 	at com.google.gwt.dev.shell.JavaScriptHost.invokeNativeVoid(JavaScriptHost.java:107) 	at com.smartgwt.client.data.DataSource.fetchData(DataSource.java)
    Any ideas ? Tested with GWT 2.5.0-rc1 and GWT 2.4.0 and downgrading back to 09-07 nightly problem goes away.

    br,
    Marko

    #2
    Try running a GWT compile, clearing the GWT unitCache, and clearing your browser cache and restarting it. If that doesn't help, use the instructions in the FAQ to obtain a stack trace (always do this for JavaScript errors).

    Comment


      #3
      Originally posted by Isomorphic View Post
      Try running a GWT compile, clearing the GWT unitCache, and clearing your browser cache and restarting it. If that doesn't help, use the instructions in the FAQ to obtain a stack trace (always do this for JavaScript errors).
      Deleted unitCache, cleared cache and did all the clean up what I always do when upgrading the nightly. For some reason I'm not getting any clear stack traces to development console or neither in development mode log.

      This is everything I get to developer console log:

      Code:
      23:04:54.378:INFO:Log:initialized
      23:04:54.772:WARN:Log:New Class ID: 'DataView' collides with ID of existing object with value 'function DataView() {
          [native code]
      }'.  Existing object will be replaced.
      This conflict would be avoided by disabling ISC Simple Names mode.  See documentation for further information.
      23:04:54.872:WARN:Log:New Class ID: 'IAutoFitButton' collides with ID of existing Class object '[Class IAutoFitButton]'.  Existing object will be replaced.
      23:04:54.872:WARN:Log:New Class ID: 'HeaderMenuButton' collides with ID of existing Class object '[Class HeaderMenuButton]'.  Existing object will be replaced.
      23:04:54.965:INFO:Log:isc.Page is loaded
      Development mode console prints out

      Code:
      00:04:38.230  [ERROR] (DataSource.java:-1) [FATAL] Uncaught Exception:
      
      com.google.gwt.core.client.JavaScriptException: (TypeError) @com.google.gwt.core.client.impl.Impl::apply(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)([JavaScript object(186), JavaScript object(185), JavaScript object(197)]): _15[i] is null
      ...
      .. with the stack trace I sent earlier.

      SmartClient Version: SNAPSHOT_v8.3d_2012-09-27/LGPL Development Only (built 2012-09-27)

      br,
      Marko

      Comment


        #4
        Again you'll need to use the instructions in the FAQ (which involves compiled mode and specific tools).

        Comment


          #5
          Originally posted by Isomorphic View Post
          Again you'll need to use the instructions in the FAQ (which involves compiled mode and specific tools).
          I may be a bit slow but what exactly do you want me to do ? I tried running the code both in hosted and compiled mode and with smartgwt's developer console window open with the results reported earlier. FAQ mentions using Internet Explorer with developer console to see the stack trace - is this literally so ? I'm using Firefox.

          Comment


            #6
            I went through all the available nightlies in chronological order and it seems 2012-09-12 still works and 2012-09-13 breaks down. I ran some diffs on development js -files and there is a change in DataSource.js xmlSerializeField function as follows.

            2012-09-12 version

            Code:
            if (field.multiple) {
                            // if this is a field declaration with multiple=true, we write out a
                            // container tag containing one or more tags for the values, where the values
                            // have the typeName, eg
                            //      <children> // container tag: fieldName
                            //          <Canvas> // value tag: field dataSource
                            //          </Canvas>
                            //          <Canvas> 
                            //          </Canvas>
                            //      </children>
                            output.append("\r", indent, fieldStart);
                            for (var i = 0; i < values.length; i++) {
                                output.append(ds.xmlSerialize(values[i], flags, indent+"    ", 
                                                              // allow the field to specify a name for 
                                                              // child tags, eg, ds.fields -> "field"
                                                              field.childTagName));
                            }
                            output.append("\r", indent, fieldEnd);
            
                        }
            .. has been changed to

            Code:
                        if (field.multiple) {
                            // if this is a field declaration with multiple=true, we write out a
                            // container tag containing one or more tags for the values, where the values
                            // have the typeName, eg
                            //      <children> // container tag: fieldName
                            //          <Canvas> // value tag: field dataSource
                            //          </Canvas>
                            //          <Canvas> 
                            //          </Canvas>
                            //      </children>
                            output.append("\r", indent, fieldStart);
                            for (var i = 0; i < values.length; i++) {
                                output.append(ds.xmlSerialize(values[i], flags, indent+"    ", 
                                                              // allow the field to specify a name for 
                                                              // child tags, eg, ds.fields -> "field"
                                		values[i]._tagName || field.childTagName));
                            }
                            output.append("\r", indent, fieldEnd);
            
                        }
            ...
            in 2012-09-13 build. The javascript errors occurs from values[i]._tagName as values[i] is probably null for some reason.

            Comment


              #7
              Thank you for tracking this down. We have made a change to fix this issue (which will show up in the next nightly build - September 29 or greater)

              Regards
              Isomorphic Software

              Comment

              Working...
              X