No, you cannot. Dynamically instantiating classes would invalidate some of the goals of the GWT compiler. The GWT compiler builds a javascript application that only contains code for the actual call graph of your application. If you would be able to instantiante classes from arbitray Strings, it cannot determine the call graph anymore.
This is not really a limitation. You can overcome this by using factories that create instances of a particular class given its name using a simple string comparison and GWT.create(). Of course, you need to know all at development time all the possible classes that you might need to instantiate. If later you want to add support for another class, you need to change the code and rebuild. But in that situation, you probably need to add additional logic to your app anyway. Unless of course your app is completely dynamic, but in that case you should ask yourself the question if GWT is the technology to use. Regards, Danny On 30 dec, 09:11, Didier Durand <[email protected]> wrote: > Hi, > > You can't: if you go > tohttp://code.google.com/webtoolkit/doc/latest/RefJreEmulation.html#Pac... > for Class, you will see that forName() is not emulated by GWT. > > regards > > didier > > On Dec 30, 7:33 am, metalhammer29a <[email protected]> wrote: > > > > > > > > > can I use Class.forName and newInstance in GWT ? > > > static Employee create (String name) { > > try { > > return (Employee) Class.forName(name).newInstance(); > > } catch (Exception e) { > > throw new IllegalArgumentException ("Unable to instantiate" > > + name); > > } > > } -- You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/google-web-toolkit?hl=en.
