While finding Vaadin a great tool, I hit a roadblock.
Environment:
Windows, JDK6, Eclipse, Vaadin 6.2.6 jar installed via Eclipse, Tomcat 6.
The problem:
I can’t integrate existing GWT components.
What I tried to so far:
Integrating GWT via JAR file. Dropping the demo colorpicker-0.9.5.jar into /WebContent / WEB-INF / lib works fine (the only workable solution so far)
Unzipping the same demo and importing it as pure Java scources gives me
“Widgetset does not contain implementation for …ColorPicker. Check its @ClientWidget mapping, widgetsets GWT module descrioption file and re-compile your widgetset. Unrendered UIDL:”.
It is interesting that when I add to master gwt.xml followed by Eclipse “Compile Widgets” (Is this the right way to compile btw?) the master .gwt.xml gets updated and the ColorPickerWidgetSet is being deleted. As a sequence the console displays that only one widgetset is being found com.vaadin.terminal.gwt.DefaultWidgetSet, while in case 1. above there were two.
I followed the example from “10.2 Doing to simple way in Eclipse” and Eclipse generated:
two classes only - VMyComponent and MyComponent
MyComponent was annotated as expected @ClientWidget(VMyComponent.class)
no component .gwt.xml was generated ? Is this requried? Or just the annotated @ClientWidget
Is the package structure matter?
Yet, whatever I try I hit the “Widgetset does not contain implementation for … Check its @ClientWidget mapping” ?!
I am deploying the application out of Eclipse and every time I clean tomcat tmp and work directory as well as browser cache.
Have you been able to find an answer … I am getting the same issue when trying to integrate some ofcgwt charting capabilities … Any pointers will help.
In the first case (dropping a jar) Eclipse plugin takes over and compiles the widgetset automatically for you.
In the latter two cases you the automatic recompilation does not for some reason seem to work. Did you push the “Compile Vaadin widgets” button in the toolbar? It should show something like this on the console:
Also - it should generate YourOwnWidgetset.gwt.xml to com.your.package.widgetset package. The contents of the xml is as simple as:
Something that bit me pretty hard a few days ago is the fact that the widgetset compiler silently ignores classes that it can’t load. Essentially the compiler looks at all the classes in your sources directory and introspects them to look for the ClientWidget annotation. If it can’t load the class because the class depends upon some other class in a JAR in (say) WEB-INF/lib it drops that class and doesn’t consider its client side implementation for compilation. I’m not sure if you’re having the same problem, but it can be super frustrating if you are.
Even turning up the verbosity of the compiler doesn’t help. The approach I took to diagnose this was to debug Vaadin’s GWT compiler and see what it’s doing.
since this is not compatible with vaadin 7, I decided to fix some code from the add-on to make it compatible with vaddin 7.
I checked out source code of vaadin-6.8 from repository and vaadin-gantt (add-on) from available downloads.
I changed the code a bit in vaadin-6.8 and built. I am using this customized vaadin-6.8 jar inside vaadin-gantt add-on. Now I am able to build vaadin-gantt add-on by using customized vaadin-6.8 jar. offcourse after changing an add-on a bit. I want to use this add-on inside vaadin-7 project.
compiling went through, but i am getting below message on console while displaying gantt chart
“Widgetset does not contain implementation for ru.bazon.vaadin.ganttdiagram.canvas.GanttDiagramCanvas. Check its component connector’s @Connect mapping, widgetsets GWT module description file and re-compile your widgetset. In case you have downloaded a vaadin add-on package, you might want to refer to add-on instructions.”
I compiled the widgetset using eclipse plugin and could see the below entry in my projects *.gwt.xml file
I would like to make use of gannt chart add-on for vaadin-7. I didn’t find any other add-on for vaadin-7 apart from this which is not compatible with 7 version. hence I decided to make to work with 7.
any pointers? I have all the entries as suggested by Joonas and Anantha