Tomcat can run in embedded mode - so you can ship a double-clickable desktop app that starts a Tomcat running on localhost. Then there would be no servlet engine to install. (You would ship all web app files in a .war file.)
Does the DB have to be multi-user? If not, have you considered embedding Derby? Again, there would be nothing to install.
I’ve looked at a lot of different solutions, and in my humble opinion Aspose is the way to go. Here’s the link: http://aspose.com
subject: deploy web application as a standalone zip ?