You don't need to do that, you can just put a static instance of the Injector on the injector interface.
2010/3/21 PhilBeaudoin <[email protected]> > One last update: > I don't think its a good idea to GWT.create() the ginjector multiple > times. I got rid of this by creating it once in a static field in my > entry point class, and then accessing that field within my generated > class. This brings me to another question: > > To find the name of the entry point class, I had to create a > configuration property. Is there a way, within a generator, to access > the entry point class defined in the module: > <entry-point class='com.puzzlebazar.client.Puzzlebazar' /> > > > On Mar 21, 1:01 am, PhilBeaudoin <[email protected]> wrote: > > Yeah, well... Method injection didn't work either, the method just > > never got called (as expected...) > > > > I finally was able to make it work using the technique you proposed by > > initializing the generated classes after the injector is created. > > > > Just to give a bit more details to anybody else interested in this... > > > > Here is how you define a configuration property in your > > project.gwt.xml: > > <define-configuration-property name="gin.injector" is-multi- > > valued="false" /> > > <set-configuration-property name="gin.injector" > > value="com.project.client.gin.MyGinjector" /> > > > > Here is how you access this property in your generator: > > String ginjectorClassName = > > > ctx.getPropertyOracle().getConfigurationProperty("gin.injector").getValues( > ).get(0); > > > > Now if you want an injector in the source code you generate you do: > > writer.println( ginjectorClassName + " injector = GWT.create(" + > > ginjectorClassName + ".class);" ); > > > > Thanks again Gal. This is a neat trick! > > > > Philippe > > > > On Mar 20, 8:34 pm, PhilBeaudoin <[email protected]> wrote: > > > > > > > > > Thanks Gal, it really helped! > > > > > I'm not quite sure I know how to "include a folder in my lookup > > > entries". Is this something I can do in Eclipse debugger? > > > > > The idea of using the injector directly didn't quite work, because I > > > need my generated class to be instanciated .asEagerSingleton(). If I > > > try calling GWT.create( MyGingector ) within the generated class I get > > > infinite recursion. If I instead try to assign the MyGingector > > > instance to some static variable, it doesn't work either because the > > > variable isn't initialized yet. > > > > > However, I've decided to rework my generated class to use method > > > injection instead of constructor injection and it seems to work very > > > well! > > > > > Cheers, > > > > > Philippe > > > > > On Mar 20, 7:31 pm, Gal Dolber <[email protected]> wrote: > > > > > > Ok, > > > > > > To view the generated class compile with "-gen /somepathonyourdisk", > another > > > > tip to debug a generated class: include in your lookup entries the > folder > > > > where the generated classes are and you will be able to step through > the > > > > generated code. > > > > > > And to use gin into your generated class I didn't found a great > solution, > > > > because you can inject an interface that is generated but gin just > make a > > > > GWT.create(theinterface.class); and it wont inject into the generated > class. > > > > > > This is what I did: > > > > Add an set-configuration-property into your module (define it first) > and > > > > specify on it the location of your injector, then use directly the > injector > > > > into your generated code. Like this: > > > > > > <add-configuration-property name="gin.injector" > > > > value="com.some.gin.MyGinInjector" /> > > > > > > Regards > > > > > > 2010/3/20 PhilBeaudoin <[email protected]> > > > > > > > I'm trying to write my first GWT generator... I've gotten pretty > far, > > > > > but I have the following questions: > > > > > 1) Is there any way to see the generated class for debugging > purposes? > > > > > For example, can I force GWT to produce the .java file for my > > > > > generated class (it did it once when I had an error, but I can't > force > > > > > it to produce it every time.) Any other hints as to how to debug a > > > > > generated class? > > > > > 2) I'd like to use GIN to inject objects in the constructor of the > > > > > generated class. I'm not quite sure if this works or how to make it > > > > > work. Any hints would be great! > > > > > > > Thanks! > > > > > > > -- > > > > > 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]<google-web-toolkit%[email protected]><google-web-toolkit%2Bunsubs > [email protected]> > > > > > . > > > > > For more options, visit this group at > > > > >http://groups.google.com/group/google-web-toolkit?hl=en. > > -- > 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]<google-web-toolkit%[email protected]> > . > For more options, visit this group at > http://groups.google.com/group/google-web-toolkit?hl=en. > > -- 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.
