Hi Isomorphic,
there is an issue with the Canvas being generated from Component XML which I can only reproduce in Firefox (26.0) and Chrome (33). This issue does not happen in IE (10).
The short version is that the client will try to create a Button from a component declared as a ToolStripButton thus generating the ClassCastException while working in Hosted mode (In deployed mode there is no exception nor error, just the buttons not working)
Component XML:
Cast exception occurs in (screen is created with loadScreen with global IDs for every component):
I would appreciate if you could take a look at this issue since it is reducing the options we have as compatible browsers. If there is any other information you need to replicate this case, please let me know.
Thanks.
GWT Version 2.5.1
Current version:
SmartClient Version: v9.1p_2014-03-11/EVAL Deployment (expires 2014.05.10_10.04.43) Licensed to: Isomorphic Software (#ISC_EVAL_NIGHTLY)
Also tested with 4.0p (20140119 and 20140225)
there is an issue with the Canvas being generated from Component XML which I can only reproduce in Firefox (26.0) and Chrome (33). This issue does not happen in IE (10).
The short version is that the client will try to create a Button from a component declared as a ToolStripButton thus generating the ClassCastException while working in Hosted mode (In deployed mode there is no exception nor error, just the buttons not working)
Component XML:
Code:
<isomorphicXML> <Label ID="titleLabel" width="100%" height="36" autoDraw="false" > <contents>MODULO PROYECTOS</contents> <title>Label0</title> <styleName>header</styleName> </Label> <HLayout ID="titleLayout" width="100%" height="36" autoDraw="false" > <defaultLayoutAlign>left</defaultLayoutAlign> <members> <Canvas ref="titleLabel" /> </members> <layoutAlign>left</layoutAlign> </HLayout> <ToolStripButton ID="projDisplayButton" autoDraw="false" > <title>Proyectos</title> </ToolStripButton> <ToolStripButton ID="projCloseButton" autoDraw="false" > <title>Cerrar</title> </ToolStripButton> <ToolStripButton ID="adminConsoleButton" autoDraw="false" > <title>Consola Admin.</title> </ToolStripButton> <ToolStripButton ID="developConsoleButton" autoDraw="false" > <title>Consola Desa.</title> <click> isc.showConsole(); </click> </ToolStripButton> <ToolStripButton ID="visualBuilderButton" autoDraw="false" > <title>Visual Builder</title> </ToolStripButton> <ToolStripButton ID="hidTest" autoDraw="false" > <title>Connect HID</title> </ToolStripButton> <ToolStripButton ID="refreshScreenCache" autoDraw="false" > <title>Recargar screenCache</title> </ToolStripButton> <ToolStripButton ID="reloadDS" autoDraw="false" > <title>Recargar DataSources</title> </ToolStripButton> <ToolStrip ID="mainToolbar" width="100%" autoDraw="false" > <members> <Canvas ref="projDisplayButton" /> <Canvas ref="projCloseButton" /> <Canvas ref="adminConsoleButton" /> <Canvas ref="developConsoleButton" /> <Canvas ref="visualBuilderButton" /> <Canvas ref="hidTest" /> <Canvas ref="refreshScreenCache" /> <Canvas ref="reloadDS" /> </members> <visibilityMode>multiple</visibilityMode> </ToolStrip> <VLayout ID="mainAreaLayout" width="100%" height="100%" autoDraw="false" > </VLayout> <VLayout ID="layoutPrincipal" width="100%" height="100%" autoDraw="false" > <members> <Canvas ref="titleLayout" /> <Canvas ref="mainToolbar" /> <Canvas ref="mainAreaLayout" /> </members> </VLayout> </isomorphicXML>
Code:
// ADMIN CONSOLE ToolStripButton btnConsolaAdmin = (ToolStripButton) Canvas.getById("adminConsoleButton"); btnConsolaAdmin.addClickHandler(new ClickHandler(){ @Override public void onClick(ClickEvent event) { SC.openDataSourceConsole(); } });
Thanks.
GWT Version 2.5.1
Current version:
SmartClient Version: v9.1p_2014-03-11/EVAL Deployment (expires 2014.05.10_10.04.43) Licensed to: Isomorphic Software (#ISC_EVAL_NIGHTLY)
Also tested with 4.0p (20140119 and 20140225)
Comment