Not A Java Web Frameworks Survey: Just use Wicket!
‘Java Web Frameworks Survey’ was my first blog posted which was reposted at dzone. Sadly there never was a follow up of it. Although I planned followups with jZeno, SpringMVC, Seam, Vaadin (at that time: IT-Mill Toolkit), MyFaces, Stripes, Struts, ItsNat, IWebMvc
Now, today I have just a short, subjective mini-follow-up, for anyone who is interested after all those months. Over the months I have additionally investigated JSF, Rails, Vaadin and one more:
- No comments to JSF :-/
- Rails is great! Especially the db migrations and other goodies. Partials are a crap: I prefer component based UI frameworks. If you don’t like ruby take a look at grails with autobase.
- Additionally I highly recommend everyone to take a look at vaadin (‘server-side GWT’) if you need a stateful webapplication. Loading time was a problem for me. Other client-side performance problems can be solved if you use CssLayout, I think.
But for jetwick I chose wicket! There were/are 10 reasons:
- great performance,
- ease of use (highly subjective, of course),
- component based + no routing,
- good documentation and active community,
- ajax fallback and simplicity,
- quick get-started,
- out-of-the-box back-button support,
- integrated testing support,
- unbeaten separation of html and Java code
- and a simple guice integration
The most important thing is: if you use ‘mvn jetty:run’ and NetBeans in combination then the development cycle feels like Rails: modify html, css or even Java code. Save and hit F5 in the browser. Nothing more.
The only problem is the database migration (wicket solves only the UI problems). For that I would use liquibase. Or simply run db4o, a nosql solution ‘or’ solr.
From http://karussell.wordpress.com/2010/07/13/not-a-java-web-frameworks-survey-just-use-wicket/
(Note: Opinions expressed in this article and its replies are the opinions of their respective authors and not those of DZone, Inc.)





Comments
Daniel Alexiuc replied on Wed, 2010/07/14 - 1:27am
Jetty is not just restricted to netbeans and wicket either, pretty much any IDE and java web framework combination can benefit.
Using jetty as a local development webserver gave me one of those WOW moments too - the immediate increase in productivity is really quite amazing.
Martin Wildam replied on Wed, 2010/07/14 - 2:10am
Thank you very much for your follow-up.
Many people would recommend always use the right framework for the right job. But honestly, I don't have the time to learn and get familiar (and getting expert later) all those frameworks.
I have chosen Java also because it is a language that has the power to solve many different kind of problems and so should be the framework of my choice - it should be easy and allow me to solve 90 % of my web application needs efficiently.
I personally don't care much about db integration - this is something I have ever done myself - so I also don't use hibernate and the like.
Peter ___ replied on Wed, 2010/07/14 - 2:30am
in response to:
Daniel Alexiuc
Marcos de Sousa replied on Wed, 2010/07/14 - 3:48am
I use ZK in production environnement since version 2.0.4. All version 2.x.x, 3.x.x, 5.x.x are less than 2.5 MB.
Where did you get 20 MB?
Lukas Zapletal replied on Wed, 2010/07/14 - 7:11am
Jacek Furmankiewicz replied on Wed, 2010/07/14 - 8:00am
Uhm, have you looked at Django?
If I may...
http://www.developer.com/java/web/article.php/3890451/The-Django-Frameworks-Killer-Feature-for-Java-Developers.htm
I doubt Wicket can match the Django admin interface productivity.
David Lee replied on Wed, 2010/07/14 - 8:42am
Peter ___ replied on Wed, 2010/07/14 - 8:47am
in response to:
Jacek Furmankiewicz
Jacek Furmankiewicz replied on Wed, 2010/07/14 - 9:14am
in response to:
Peter ___
Becase what would take you X number of lines in Wicket will probably take X/10 number of lines in Django Admin interface.And it will probably look and behave better. And you may not need to write a single line of HTML/CSS/JS for many of your CRUD screens.
With the Jython-Django project you can even deploy it as a WAR (with JNDI lookup of datasource) directly into your existing Java web server:
http://packages.python.org/django-jython/
Adedayo Ominiyi replied on Wed, 2010/07/14 - 11:49am
Peter ___ replied on Wed, 2010/07/14 - 2:44pm
in response to:
Jacek Furmankiewicz
Jacek Furmankiewicz replied on Wed, 2010/07/14 - 4:24pm
in response to:
Peter ___
Yeah, but Django is just so much simpler, easier and really polished. Although I've heard good things about Grails too.
So if you picked up Ruby for Rails, why not try Grails as well? I have a feeling most would prefer that one as well over Wicket...and let's not forget Stripes and Play!
But for us Django rules for the gadzillion CRUD screens we are always faced with...
Jose Maria Arranz replied on Thu, 2010/07/15 - 3:27am
Peter, have you really done a review of ItsNat?
I invite you to do this review.Peter ___ replied on Thu, 2010/07/15 - 5:19pm
in response to:
Jose Maria Arranz
Marc Stock replied on Mon, 2010/07/19 - 12:45pm
Liezel Jane Jandayan replied on Mon, 2011/09/19 - 1:22am