I have had a few conversations with Vladimir on this topic and from my own Tomcat experience and a painful Xindice experience (losing the database) have led me to the following:
Storing the database within the WAR structure should only be done when the data is inherently very transient and only needed for something limited to things like a users session. Any data that is to be persistent should be stored outside of the WAR structure, which, by its very nature is a transient thing. Consider this from the Tomcat 'Host Container' webpage: --- "Any web application archive file that does not have a corresponding directory of the same name (without the ".war" extension) will be automatically expanded, unless the unpackWARs property is set to false. If you redeploy an updated WAR file, be sure to delete the expanded directory when restarting Tomcat, so that the updated WAR file will be re-expanded." --- In order to reliably redeploy a WAR you must delete the old expanded WAR directory in order for Tomcat to deploy the new WAR. If your database is located within this area then you will not be happy if you forget to move it prior to deleting the old WAR directory. Conversely though, requiring that the user modify system.xml prior to being able to even start Xindice IMO is a bit harsh, especially for newbies. It may turn out that this is necessary but perhaps it could be considered to place the default database at a file location of something like /Xindice/db or some other location that would work for any OS (/usr/bin/???) . Anything that would work as a default and then those that wish to change it could edit system.xml later. This would make things easier on those just being introduced to Xindice and who just want to drop the WAR into Tomcat, surf to an Xindice servlet url and begin to get a feel for what Xindice is all about without having to first learn what they need to do in order to config a system.xml file. It's like any new toy - most people just want to push the power button and see something happen! The initial user experience is actually very important. __________________________________________________ Do you Yahoo!? Yahoo! Mail Plus - Powerful. Affordable. Sign up now. http://mailplus.yahoo.com
