To run your application, a user needs the J2SE Runtime Environment,
which is freely available from Sun. Or, You can redistribute the
J2SE Runtime Environment for free with your application, according
to the terms of the Runtime Environment's license.
С http://java.sun.com/j2se/1.5.0/jre/README
Я не читал мелкий шрифт, кажется, что Sun собирается, чтобы люди распространяли JRE. Кроме того, существует много продуктов (например, install4j), которые позволяют легко распространять JRE, поэтому это кажется законным.
Что касается остального, вы можете также связать tomcat со встроенной службой, чтобы ваше приложение автоматически запускалось, и создать ярлык на рабочем столе для вашего локального веб-приложения, чтобы пользователи не могли набирать ht tp: // локальный: 8080 / веб-приложение. Существует множество установщиков FOSS (например, izpack), которые позволят вашим пользователям установить пакет и управлять созданием ярлыков на рабочем столе. Вы упомянули, что предпочитаете не использовать установщик, но даже распаковка является своего рода установкой - ваши пользователи должны выбрать каталог, к которому у них есть доступ для записи, и это не отличается от полноценного установщика.
Но, учитывая возможности ваших пользователей, является ли локально установленное решение наиболее подходящим для них? Онлайн-решение может предложить более простое развертывание (например, запуск через Java или даже в виде апплета).