Я только что распаковал и настроил Tomcat 8.0.3 на Windows 7 с виртуальным хостом. Я успешно протестировал его при использовании веб-приложений по умолчанию, однако мой виртуальный хост не распознает изменения в файлах или классах JSP.
Вот моя настройка:
% CATALINA_HOME%\конф\server.xml
...
<Engine name="Catalina" defaultHost="localhost">
...
<Host name="ww.virtual.com" appBase="vapps" unpackWARs="true" autoDeploy="true">
</Host>
</Engine>
...
% SystemRoot%\system32\Drivers\Etc\хостов
...
127.0.0.1 ww.virtual.com
% CATALINA_HOME%\vapps\ROOT\META-INF\context.xml
<?xml version="1.0" encoding="UTF-8"?>
<Context antiResourceLocking="true" privileged="true" reloadable="true">
<Resource name="jdbc/INVENTORY" auth="Container" type="javax.sql.DataSource"
maxActive="100" maxIdle="30" maxWait="10000"
username="sqlusr" password="secret1" driverClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://127.0.0.1:1433;instanceName=SQLSERVER;DatabaseName=INVENTORY"/>
</Context>
% CATALINA_HOME%\vapps\ROOT\WEB-INF\web.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee
http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
version="3.1"
metadata-complete="true">
<display-name>Test Display</display-name>
<description>Test Description</description>
<resource-ref>
<description>Test DB Connection</description>
<res-ref-name>jdbc/INVENTORY</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
</web-app>
Затем у меня есть JSP файлы, расположенные в% CATALINA_HOME%\vapps\ROOT\и классы в% CATALINA_HOME%\vapps\ROOT\WEB-INF\classes\MainPackage \, которые должным образом загружаются при запуске сервера. Но если я вношу какие-либо изменения в JSP или.class файлы, сервер не распознает обновление. Что я делаю не так?
Это происходит потому, что вы включили блокировку антиресурсов. С помощью этой опции веб-приложение не развертывается из базы приложений, а из копии в рабочем каталоге. Если вы редактируете копию в рабочем каталоге, вы увидите изменения.
В качестве альтернативы удалите опции блокировки защиты от ресурсов и исправьте любую ошибку, вызвавшую их необходимость в первую очередь.