« Version 4.5 Released | Main | Program D 4.6 release candidate 1 »

September 25, 2005

a "proper" web application

I am preparing a 4.6 version of Program D in which (finally!) one of the available configurations is a .war file (a web application that can be deployed on Tomcat, JBoss, Dynamo, etc.) There will still be the "simple console" and "GUI console" configurations available, but possibly I will stop packaging Jetty, so users will need to choose and set up the web application server themselves.

I'm successfully using the code that's currently in CVS as an integrated part of another application (via a redesigned servlet).

Some of the highlights of this are:

* All that "template" stuff is in the trash. You can use JSP.
* There are a few AIML tags now available via a JSP custom taglib.
* The crazy-zany-wacky-nutty "ServletResposeRequestRespondingBlahBlah" stuff that I put in the previous release is all gone. So is the "responder" concept in general. Everything we were trying to do with all that huffing and puffing can be managed just fine with J2EE standard stuff.
* Authentication is something you do with your app server (or not). I've used a couple of the different Realm implementations provided by Tomcat; you should be able to use (or not) whatever you want. This way any user authentication for the bot server can be part of the user authentication of your whole environment/application/whatever.

One current side effect is that the interactive console is not available for the web app. But I won't worry about this unless anybody can tell me why it's a problem.

I would appreciate hearing from anyone who would be able to test out preliminary versions of this on any application server. I've been putting it through the wringer with Tomcat 5.5.9, but additional testing on that platform, as well as any other, will be great, to uncover whatever issues might arise. (I've had to do a lot of cleanup of path construction and usage (URLs) due to various problems I discovered when running it from a war file, running it using the Apache httpd-Tomcat connector (jk2), etc. I'm sure there are other things that should be ironed out.)

I would also like to know what people think about not including Jetty anymore. I know that it is an attraction of Program D that one can download it and have a running web-based interface within a few minutes. On the other hand, packaging a particular app server has always added a layer of irritation for me. What would seem preferable is just to have a nice HOWTO, explaining the steps for setting up any number of popular servers and deploying the Program D war file. I think that Program D is largely incompatible with the casual hobbyist group, in any case. People who just want to play around a little bit and make an Alice clone can use Pandorabots or one of the others -- Program D is really meant to be a platform for more serious bot development.

All thoughts and reactions are welcome!

Noel

Posted by Noel at September 25, 2005 09:31 PM

Comments