Vaadin 6.6.0 - Widgetset compilation - symbolMaps-folder

Hi,

Does any know why, during widgetset compilation, a folder is generated under VAADIN\widgetsets\WEB-INF\deploy[name-of-widgetset]
, called ‘symbolMaps’ and contains several files with the extension ‘.symbolMap’ ?
The folder takes up 20 Mbytes, which causes my war file to double in size…

Kind regards,
Jan De Beule

Symbol maps are created by GWT to enable deobfuscating client side stack traces. They are otherwise not needed in normal use (you can leave them out from the WAR if you don’t need to support this) - I don’t know of an option for the GWT compiler to not generate them, but maybe there is one.

Some have used a hack (GWT linker replacement) to work around this:
http://comments.gmane.org/gmane.org.google.gwt/64891
.

As stated above, those files (deploy folder) are safe to delete for both development and production targets.

Vaadin Plug-in for Eclipse was designed to delete them automatically after widgetset compilation step, but it no longer works due to difference introduced in GWT 2.x. At least until corrected Plug-in is made available by Vaadin team.

See
trac ticket

Not a big deal anyway :smug:

The next Eclipse plug-in version will remove the -deploy directory automatically - see
#7099
.

Hi Henri,
I have update to Vaadin 6.6.3 from Vaadin 6.5.7 and I also update the Eclipse plug-in to 2.0.1 but the widgetset-deply directory is not removed and the worst thing is that the application do not run anymore also if I delete the directory.
If I go back to 6.5.7 the application will run again.
Does you have any suggestion ?

Thank
Giancarlo

The “-deploy” directory cannot really have anything to do with the application not running - the problem is something else and there is not enough information in your post to try to guess what is going wrong - you don’t even say what you mean by “it does not run”. Did widgetset compilation work or not? Do you get an exception? What exception and when? etc. etc.

Do make sure that you have the correct GWT version in use (2.3.0 for Vaadin 6.6.3), and all four GWT JARs on the classpath. If you upgraded Vaadin to 6.6 before upgrading the Eclipse plugin to 2.0, the Eclipse plugin might not have added the extra GWT JARs, but even if the two new ones are missing, that should just cause warnings.

As for the Eclipse plugin, the enhancement to remove the directory is targeted for plugin 2.0.2 as it says in the ticket, and it has not been published as it does not have any other enhancements or fixes yet.

Hi Henri,
sorry for the low information but there isn’t so much to say.
If I go back to 6.5.7 version everything works and the application start.
If I upgrade to 6.6.3 or any 6.6.x release the compilation goes fine but when I start the application in Tomcat, it seems that it start loading (if I see the source code of the page with Firebugs it is correctly loaded, I see also the javascript) because I see the loading icon and also if I debug the server side the application start but it will not go on loading the gui.
I have tried to remove the plugin and reinstall it again but I have not solved the problem.
What are the 4 GWT jar that I have to find in the classpath ? and what version ? just to be sure that I have all correct in my installation.

Regards
Giancarlo

I suspect that the widgetset you compiled is not being used. Maybe the old widgetset is still in Tomcat cache or somehow cached by the browser.

If you use the URL parameter “?debug”, do you see the debug window?
Does it contain an error message about some version mismatch?

Also, check the verbose widgetset compilation log (Project Properties → Vaadin to turn on verbose output) and check that all your components are included and that no problems are reported.

All GWT and Vaadin versions require gwt-dev.jar, gwt-user.jar, and GWT 2.3 (used by Vaadin 6.6 and later) also needs validation-api-1.0.0.GA.jar and validation-api-1.0.0.GA-sources.jar . Actually the last two are not absolutely necessary (most Vaadin applications should work just fine if you don’t have them), but without them you get a lot of nasty warning/error messages when compiling a widgetset. The GWT version should be 2.3.0 for Vaadin 6.6+.

Hi Henri,
I have cleaned the tomcat dirs and also the browser cache, but no result.
I have attached the widgets compilation logs and still everything seems ok.
In the file build_log.txt I have found some some dependency warning, and if I check the WEBINF dirs after the application is deployed in tomcat the 4 jars are not present. I have manually copied the jars but still do not run, becuase tomcat do not load the jars as you can see in the tomcat_log.txt

If I run with ?debug I do not see the debug window

I do not understand how a simple version upgrade can create so much trouble.

Do you have any suggestion to help me.

Regards
Giancarlo
11847.txt (7.45 KB)
11848.txt (12.7 KB)
11849.txt (3.26 KB)

Hi Giancarlo,

I don’t understand the reason of your troubles either, it’s really strange.

Just a few comments though…


1.
As for pure Vaadin application there’s no need to deploy GWT jars to web server. These are only required during Widget compilation step.


2.
For reference, I have been running Vaadin 6.0.x - 6.3.3 In Tomcat for a while and never experienced difficulties similar to yours (well except very specific one*). That includes custom Widgetset compilation, Tomcat 6 / Tomcat 7 environments, Eclipse IDE+Vaadin plugin vs Ant build script with Ant Vaadin compilation task and so on. So it’s quite unlikely there would something be suddenly fundamentally broken in Vaadin.


3.
Have recently stumbled across
this

report, which may or may not be related to yours.

  • Dashlayouts add-on is known to have issues with rendering main window content in IE9 native mode only(!), resulting in blank window appearance in place of usual application UI.

Tomas

Hi Tomas,
what is happening is really strange also to me.
I’m using Vaadin since 1 year so I’m not so expert but up to now I have got a problem just ones when I have upgraded Vaadin without upgrading the plugin, but I solved the problem just uninstalling the all and reinstalling the latest version in the right way.
I have also tried this method this time but nothing to do.
I cannot believe that it is an application issue because it works fine with version 6.5.7 and I’m still developing with this release right now.
But I would like to upgrade to get the benefit of the new release.
I have deployed the GWT library just for test because when you don’t know what to do you try everything also if you know that could be wrong.
I believe that I will try with a fresh Eclipse installation and crossing the fingers I hope that I solve the problem.

Regards
Giancarlo

Now works, but I don’t know why.
This is the step that I have done.
I have a Eclipse copy running on Windows XP and IE8 so I have first upgraded the Plug-in and later I have upgraded the vaadin jar to 6.6.4 in the project.
I have tested that everything works on Windows XP.
I have copied the eclipse installation dir in Windows 7 but my project still not run.
So I have also copied the .metadata dirs from Windows XP workspace to Windows 7 workspace.
But doing so I have some problem with Tomcat installation so I have remove the server and creted a new one.
I also have updated the vaadin jar to 6.6.4 because in Windows 7 workspace it is still 6.6.3
and now it run but when the application start I get an error that say that I’m running the application in IE9 and the user.agent is IE8 so I could get some errors (see picture attached).
I believe that my problem is related to IE9 and this message, that doing all this stuff has been magically removed.

Thanks to all for their support.
Giancarlo
11851.png

It looks like you might be using the wrong GWT version for the Vaadin version you are using - you should have GWT 2.3.0.
I assume you have not customized the permutations to compile in your widgetset file etc.

If you have not touched the classpath entries of GWT yourself, the plug-in should automatically update them when (and only when) you change the Vaadin version via
Project Properties → Vaadin
to one that needs a different GWT version, e.g. from 6.6.x to 6.5.x. Click Apply to accept the change, and then change the Vaadin version back the same way.

If the plug-in thinks you might have customized the GWT classpath yourself, it will not try to update GWT JARs. In that case, remove the GWT JARs from the project build path and change the Vaadin version via Project Properties → Vaadin.

In either case, make sure you recompile your widgetset after this operation and clear any caches.

Hi Henri,
I compile the permutation only for ie8 and firefox like you can see

but I have installed ie9 on my pc so I believe the problem is ie9 becuase in a machine with ie8 everything is ok.
It also works fine on firefox (I have installed firefox later) because I need that my application works fine on IE (this is a customer requirements) so I had not firefox on my pc before.
So still I believe that the real problem is that gwt 2.3.0 has some problems working with ie9.
I believe that when I start the application in IE9 it use the permutation compiled for firefox because as you know the shape of button is different from IE8 (they are squared) and firefox where they have the corner rounded.

I will wait the future upgrade of GWT to be sure of my suspects.

Regards
Giancarlo

GWT 2.3 uses a new permutation “ie9” for IE9 - if you don’t compile it, you should not expect your application to work correctly on IE9 except maybe in compatibility mode.