Jython and Django on GlassFish
By Jacob Kessler on Jun 08, 2009
Since Vivek Pandey already put up an excellent blog about how to get Django and Jython working with GlassFish, I thought I would take some time to talk about the support, and our thoughts and goals with it.
First of all, like JRuby we wanted Jython support to be as unobtrusive to users as possible. That means no code modifications or anything like that. Any Django app that will run in Jython should run in unmodified in GlassFish as well, without any per-application GlassFish configuration. Like with JRuby, we assume that Jython developers want to do as little as possible to deploy on GlassFish. I think we've succeeded with that, as demonstrated by the sucessful deployment of the Django admin console. I've also successfully deployed StartTheDark, an open-source Django tutorial application that's a bit more involved than the admin console. The only lingering annoyance, in fact, are python modules that use C extensions. The hope, though, is that as Jython matures and becomes more popular Java or Python-based modules will arise to provide the same functionality.
Secondly, like JRuby we wanted to provide easy extensibility. We can't predict the popularity of new frameworks, and we don't want people to have to wait for a new release to use UltraCoolNewFramework: you want to use the latest and greatest Right Now. Since the JRuby extensibility framework seemed to work well, we've added a similar mechanism for the Jython support. Like with JRuby, you just need to point GlassFish at a piece of Python code that will start up your framework and application, and after that it will serve it as happily as it will a Django application.
So, for anyone out there who uses Jython, particularly with Django, download it and try it out. Feedback is always appreciated, especially if something isn't working the way you expect it to or if there's a feature you'd like to see that isn't there.