How to use a TreeGrid?

Hello,

I am using GWT 2.6.0 with Sencha GXT 3.1.1. I am fairly new to GXT. I want to create a TreeGrid.
I did not find any tutorials, except the documentation: http://docs.sencha.com/gxt/3.1/javadoc/com/sencha/gxt/widget/core/client/treegrid/TreeGrid.html

I clearly followed everything, but when I tried to run it I got the following errors:

15:51:06.608 [ERROR] [practice] Generator 'com.sencha.gxt.data.rebind.PropertyAccessGenerator' threw an exception while rebinding 'com.example.practice.client.DataProperties'
java.lang.NullPointerException: null
at com.sencha.gxt.data.rebind.ModelKeyProviderCreator.getObjectType(ModelKeyProviderCreator.java:34)
at com.sencha.gxt.data.rebind.ValueProviderCreator.getPackageName(ValueProviderCreator.java:192)
at com.sencha.gxt.core.rebind.AbstractCreator.create(AbstractCreator.java:31)
at com.sencha.gxt.data.rebind.PropertyAccessGenerator.generate(PropertyAccessGenerator.java:87)
at com.google.gwt.core.ext.IncrementalGenerator.generateNonIncrementally(IncrementalGenerator.java:40)
at com.google.gwt.dev.javac.StandardGeneratorContext.runGeneratorIncrementally(StandardGeneratorContext.java:676)
at com.google.gwt.dev.cfg.RuleGenerateWith.realize(RuleGenerateWith.java:41)
at com.google.gwt.dev.shell.StandardRebindOracle$Rebinder.rebind(StandardRebindOracle.java:79)
at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java:276)
at com.google.gwt.dev.shell.ShellModuleSpaceHost.rebind(ShellModuleSpaceHost.java:147)
at com.google.gwt.dev.shell.ModuleSpace.rebind(ModuleSpace.java:600)
at com.google.gwt.dev.shell.ModuleSpace.rebindAndCreate(ModuleSpace.java:470)
at com.google.gwt.dev.shell.GWTBridgeImpl.create(GWTBridgeImpl.java:49)
at com.google.gwt.core.shared.GWT.create(GWT.java:72)
at com.google.gwt.core.client.GWT.create(GWT.java:86)
at com.example.practice.client.Practice.onModuleLoad(Practice.java:22)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:411)
at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200)
at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:526)
at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:364)
at java.lang.Thread.run(Unknown Source)

I am using GWT 2.6.0 with Sencha GXT 3.1.1. I am fairly new to GXT. I want to create a TreeGrid.
I did not find any tutorials, except the documentation: http://docs.sencha.com/gxt/3.1/javadoc/com/sencha/gxt/widget/core/client/treegrid/TreeGrid.html

Well, there is a TreeGrid at examples:http://www.sencha.com/examples/index...:basictreegrid
Warning! It is not a very good example. These prefixing of keys with "f-" (Folder) and "m-" (Leafs) is cumbersome. No comments whats so ever. Imports of importcom.sencha.gxt.examples.resources. where you have to figure out where to get it from in first place. And so on...

Originally Posted by gui0506

I clearly followed everything, but when I tried to run it I got the following errors:

15:51:06.608 [ERROR] [practice] Generator 'com.sencha.gxt.data.rebind.PropertyAccessGenerator' threw an exception while rebinding 'com.example.practice.client.DataProperties'
java.lang.NullPointerException: null
at com.sencha.gxt.data.rebind.ModelKeyProviderCreator.getObjectType(ModelKeyProviderCreator.java:34)
at com.sencha.gxt.data.rebind.ValueProviderCreator.getPackageName(ValueProviderCreator.java:192)
at com.sencha.gxt.core.rebind.AbstractCreator.create(AbstractCreator.java:31)
at com.sencha.gxt.data.rebind.PropertyAccessGenerator.generate(PropertyAccessGenerator.java:87)
at com.google.gwt.core.ext.IncrementalGenerator.generateNonIncrementally(IncrementalGenerator.java:40)
at com.google.gwt.dev.javac.StandardGeneratorContext.runGeneratorIncrementally(StandardGeneratorContext.java:676)
at com.google.gwt.dev.cfg.RuleGenerateWith.realize(RuleGenerateWith.java:41)
at com.google.gwt.dev.shell.StandardRebindOracle$Rebinder.rebind(StandardRebindOracle.java:79)
at com.google.gwt.dev.shell.StandardRebindOracle.rebind(StandardRebindOracle.java:276)
at com.google.gwt.dev.shell.ShellModuleSpaceHost.rebind(ShellModuleSpaceHost.java:147)
at com.google.gwt.dev.shell.ModuleSpace.rebind(ModuleSpace.java:600)
at com.google.gwt.dev.shell.ModuleSpace.rebindAndCreate(ModuleSpace.java:470)
at com.google.gwt.dev.shell.GWTBridgeImpl.create(GWTBridgeImpl.java:49)
at com.google.gwt.core.shared.GWT.create(GWT.java:72)
at com.google.gwt.core.client.GWT.create(GWT.java:86)
at com.example.practice.client.Practice.onModuleLoad(Practice.java:22)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at com.google.gwt.dev.shell.ModuleSpace.onLoad(ModuleSpace.java:411)
at com.google.gwt.dev.shell.OophmSessionHandler.loadModule(OophmSessionHandler.java:200)
at com.google.gwt.dev.shell.BrowserChannelServer.processConnection(BrowserChannelServer.java:526)
at com.google.gwt.dev.shell.BrowserChannelServer.run(BrowserChannelServer.java:364)
at java.lang.Thread.run(Unknown Source)

Yes, I tried to add the generic, but no luck...
I also tried to make "Data" serializable, but still the same issue.
Is there any thing I need to inherit in the model.xml file in order to use the GXT generator?
I pasted my code for DataProperties and Data below.

New Update:I wrote my own ValueProvider and ModelKeyProvider and it worked.I guess now my only problem is how to make the GXT generator work...I tried to only execute GWT.create(DataProperties.class), but failed.