Вы можете использовать предоставленный JnlpDownloadServlet как способ заблокировать доступ. JnlpDownloadServlet (ищите его в примерах, поставляемых с JDK) будет обрабатывать запросы к файлам Jar и анализировать их. Если вы настроили свой файл web.xml как
<servlet>
<servlet-name>JnlpDownloadServlet</servlet-name>
<servlet-class>com.sun.javaws.servlet.JnlpDownloadServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>JnlpDownloadServlet</servlet-name>
<url-pattern>/app/*</url-pattern>
</servlet-mapping>
тогда все запросы на файлы в / app будут проходить через этот сервлет. Это помешает пользователям выполнять простой просмотр доступных файлов, но если они знают имя файла, они все равно могут создать запрос на получение, чтобы получить его через сервлет.
Если это проблема, вы также можете установить безопасность доступа к этому сервлету (как и любому другому сервлету), используя параметры security-limit в файле web.xml. Если вы добавите это, то программа запуска javaws потребует от пользователя предоставить действительные учетные данные, прежде чем он загрузит файлы. Я использовал BASIC в качестве auth-метода , потому что я не был уверен, будет ли клиент javaws соблюдать другие.