Following a discussion in January on TheServerSide.com ("Winstone Servlet Container v0.8 released") and Geert Bevin's RIFE blog ("Winstone servlet container, yummy yet yikes"), the license for the Winstone Servlet Container has been updated to make it more commercially friendly. The GPL has been abandoned in favour of a dual LGPL / CDDL licensing scheme.
- Posted by: Rick Knowles
- Posted on: March 06 2006 07:25 EST
Community feedback suggested that the GPL prevented winstone from being used in embedded environments, so the new dual licensing scheme adopted allows LGPL to be used when distributing with GPL'd applications and the CDDL to be used when distributing with commercial applications.
Please download it at http://winstone.sourceforge.net, and give it a try with your servlet application.
- Congrats by Geert Bevin on March 06 2006 09:23 EST
- Winstone Servlet Container v0.8.1 - License changed to CDDL/LGPL by Kit Davies on March 06 2006 10:19 EST
- Winstone Servlet Container v0.8.1 - License changed to CDDL/LGPL by Rick Knowles on March 06 2006 10:57 EST
- Ya know... by Will Hartung on March 06 2006 13:43 EST
Congratulations Rick on the new release and the adoption of these new licenses. I just tried out this version again and I must say that I'm as impressed with the simplicity and the ease of use as before. Great work!
FWIW, here are the steps required to get Groovy working a la PHP under Winstone:
1. Create a folder for you Groovy webapps, eg. C:\groovy\webapps.
2. Create a Groovy webapp folder called eg 'myapp' under your the webapps folder from step 1. Groovy webapps contain WEB-INF which contains web.xml and folder 'groovy' containing your Groovy files. Web.xml should map Groovy script files to groovy.servlet.GroovyServlet and Groovy template files to groovy.servlet.TemplateServlet.
3. Copy the Winstone jar file to GROOVY_HOME\bin. It could go anywhere but this makes command line args a bit easier.
4. In GROOVY_HOME\bin, run
java -jar winstone-0.8.1.jar --webappsDir=<webapps-folder-from-step1> --commonLibFolder=..\embeddable
Et voila. Your Groovy web apps will be available on
Took me all of 5 minutes to work out.
Oh yes ... one thing I forgot to mention in the original post is that there are a couple of fixes for bugs that appeared when winstone is used in combination with appfuse, specifically related to servlet/JSP includes and web.xml parser validation errors.
I just have to giggle as I read the page and saw how it started out talking about wanting a "pure", "simple" Servlet container without all the "junk", yet, incrementally, creature feeping their way in to the build, comes the junk.
"All junk is created equal, but some junk is more equal than others."
With apologies to Mr. Orwell.
I just have to giggle as I read the page and saw how it started out talking about wanting a "pure", "simple" Servlet container without all the "junk", yet, incrementally, creature feeping their way in to the build, comes the junk."All junk is created equal, but some junk is more equal than others."With apologies to Mr. Orwell.
I can see why you might misunderstand this if you haven't really looked closely. The difference is in *how* features are added.
The only things that have actually been added in ways that are unremovable are the multi-webapp and virtual host support, which only account for about 12KB of the core jar anyway. The rest has been implemented as optional extras, in that you can (and people often do) simply removing that package from the jar and run without them. The lite version is just the full version with the non-core classes removed.
"Junk", in my definition, is the code I'm forced to use when I haven't or will never use it. That's why winstone is low on junk ... because if you don't use something, remove it and it still works.