Errai Bus 2.4.3 and JUnit discoveries
protoss78 Dec 22, 2013 5:24 PMHi Errai Professionals,
I've a question related to errai bus. I recently added it to one of my existing projects and I started to recognize the following things:
- When I start my web application now, I always get the following message in the console during startup:
[WARN] Module declares a servlet class 'com.google.gwt.junit.server.JUnitHostImpl', but the web.xml has no corresponding declaration; please add the following lines to your web.xml: - The size of my web project increased dramatically. Even my development setup WAR file increased its size by 40MB (compiled only for webkit browsers). When I compile my project for multiple platforms (eg regular desktop, smartphones and tablets using MGWT), I got WAR files that were suddenly a few hundred MB bigger than before using Errai
- When I tried to implement a proper GWT logging mechanism that also included remote logging and stacktrace deobfuscation for my production version, I couldn't get the GWT compiler to produce the required symbol maps.
A little digging in the Internet quickly showed me that the reason for all above described problems seems to be that JUnit is inherited in my GWT module. Here are a few forum entries that I discovered:
- http://stackoverflow.com/a/14732962
- https://groups.google.com/forum/#!topic/google-web-toolkit/VSqVeKdlh64
- https://groups.google.com/forum/#!topic/google-web-toolkit/rpQPReLvgQs
Since I never inherited JUnit on my own, I started to check all other GWT modules that I'm using in my GWT project. Finally I found out that ErraiBus.gwt.xml is inheriting JUnit, because of its AbstractErraiTest class.
I can quite easily workaround issue 1 and 2, especially since issue 2 can be resolved by simply removing the .junit_symbolMaps folder. I still haven't found a fix to my symbol map generation problem. So any help on that will be much appreciated.
But my main question would be if it is really necessary to include the AbstractErraiTest class and its JUnit inheritence in the official ErraiBus module? Wouldn't it be better to have a separate module for that?
Thanks,
8-) Roman