Announcement

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

    Cant load Visual Builder screen (.ui.xml) - RPCManager.loadScreen

    I cannot load a Visual Builder screens (.ui.xml) using RPCManager.loadScreen.

    SmartClient Version: v8.3p_2013-03-04/Pro Deployment (built 2013-03-04)
    Browser: IE 9, FF v19 or Chrome v25

    Sample java code:
    Code:
        SC.askforValue("Load Screen View", "Type ScreenView Name (<screenView>.ui.xml or <screenView>.js)", "estrutura", new ValueCallback() {
            public void execute(final String value) {
                RPCManager.loadScreen(value, new LoadScreenCallback() {
                    public void execute() {
                        SC.say("Loaded? (getById) " + Canvas.getById(value));
                    }
                }, new String[]{RPCManager.ALL_GLOBALS});
            }
        }, new Dialog);
    My Developer Console output:
    Code:
    16:11:22.054:INFO:Log:initialized
    16:11:22.262:INFO:Log:isc.Page is loaded
    16:11:47.771:TMR7:WARN:Log:Error when executing loaded screen: [object Error]  [No error.stack available]
    GWT Development Mode console error:
    Code:
    00:00:25,372 [ERROR] 16:11:47.771:TMR7:WARN:Log:Error when executing loaded screen: [object Error] [No error.stack available]
    com.smartgwt.client.core.JsObject$SGWT_WARN: 16:11:47.771:TMR7:WARN:Log:Error when executing loaded screen: [object Error]  [No error.stack available]
     	at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
     	at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
     	at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
     	at java.lang.reflect.Constructor.newInstance(Constructor.java:525)
     	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:293)
     	at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:547)
     	at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:364)
     	at java.lang.Thread.run(Thread.java:722)
    Visual Builder File
    Code:
    <DataSource>
        <loadID>estrutura</loadID>
    </DataSource>
    
    
    <ListGrid dataSource="ref:estrutura" autoFetchData="true" ID="ListGrid3" autoDraw="false">
        <fields>
            <ListGridField name="codigo" title="Codigo"/>
            <ListGridField name="codigo_alfa" title="Codigo Alfa"/>
            <ListGridField name="nome" title="Nome"/>
            <ListGridField name="descricao" title="Descricao"/>
            <ListGridField name="condicoes_especiais" title="Condicoes Especiais"/>
            <ListGridField name="memo" title="Memo"/>
            <ListGridField name="tag" title="Tag"/>
            <ListGridField name="id_ponto" title="Id Ponto"/>
            <ListGridField name="cod_nivel" title="Cod Nivel"/>
            <ListGridField name="cod_pai" title="Cod Pai"/>
            <ListGridField name="status" title="Status"/>
            <ListGridField name="cod_shopping" title="Cod Shopping">
                <optionDataSource>shopping</optionDataSource>
                <valueField>codigo</valueField>
                <displayField>nome</displayField>
                <autoFetchDisplayMap>true</autoFetchDisplayMap>
            </ListGridField>
            <ListGridField name="cod_tipo_local" title="Cod Tipo Local">
                <optionDataSource>tipo_local</optionDataSource>
                <valueField>codigo</valueField>
                <displayField>nome</displayField>
                <autoFetchDisplayMap>true</autoFetchDisplayMap>
            </ListGridField>
        </fields>
        <listEndEditAction>next</listEndEditAction>
        <showFilterEditor>true</showFilterEditor>
        <canEdit>true</canEdit>
        <canRemoveRecords>true</canRemoveRecords>
        <xsi:type>ListGrid</xsi:type>
    </ListGrid>
    
    
    <DataView ID="DataView0" width="100%" height="100%" overflow="hidden" autoDraw="false">
        <members><Canvas ref="ListGrid3"/>
        </members>
        <modulesDir>modules/</modulesDir>
    </DataView>
    I know the problem is in the Visual Builder (.ui.xml) code, because I can load a screen using the following code:
    Code:
    <DynamicForm ID="DynamicForm0" autoDraw="false">
        <fields>
            <FormItem name="TextItem0" constructor="TextItem"/>
            <FormItem name="SelectItem0" constructor="SelectItem"/>
            <FormItem name="ButtonItem0" constructor="ButtonItem"/>
            <FormItem name="StaticTextItem0" constructor="StaticTextItem"/>
        </fields>
    </DynamicForm>
    
    
    <DataView ID="DataView1" width="100%" height="100%" overflow="hidden" autoDraw="true">
        <members><Canvas ref="DynamicForm0"/>
        </members>
        <modulesDir>modules/</modulesDir>
    </DataView>
    Can anybody tell me what am I doing wrong? Is it the datasources?

    #2
    Get rid of this line:

    Code:
        <xsi:type>ListGrid</xsi:type>
    That line would make your file invalid XML (prefix not declared).

    If you can let us know what set of steps led to that line being included, that would be helpful. It's not supposed to be there.

    Comment


      #3
      Thank you, so much!

      It's working now.

      I had to go back at the Visual Builder to find how the line "<xsi:type>ListGrid</xsi:type>" ended in there.
      After a while, we discovered that the "Editable ListGrid" component was the one that created the line.

      Sample code:
      Code:
      <ListGrid ID="ListGrid3" autoDraw="false">
          <listEndEditAction>next</listEndEditAction>
          <showFilterEditor>true</showFilterEditor>
          <canEdit>true</canEdit>
          <canRemoveRecords>true</canRemoveRecords>
          <xsi:type>ListGrid</xsi:type>
      </ListGrid>
      Hope I could help.

      Comment

      Working...
      X