Вам потребуется настроить другую службу в вашем файле server.xml (tomcat_home / conf).Если вы не изменили файл сервера, у вас уже должен быть файл с именем Catalina (я использую Tomcat 5.5, у вас может быть что-то немного отличающееся в зависимости от версии)
<Service name="Dev2">
<Connector port="8090" maxHttpHeaderSize="8192"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
connectionTimeout="20000" disableUploadTimeout="true" />
<Connector port="8092"
enableLookups="false" redirectPort="9443" protocol="AJP/1.3" />
<Engine name="Dev2" defaultHost="MyDev">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm"
resourceName="UserDatabase"/>
<Host name="MyDev" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
</Host>
</Engine>
</Service>
Обратите внимание, что имена изменились с Catalina наDev2 и localhost для MyDev.Измените их на то, что вам подходит для вашего приложения.Порты и разъемы также изменились.После настройки новой службы вам необходимо развернуть приложения на соответствующем сервисе / порте.Это достигается с помощью XML-файлов в разделе (см. Виртуальный хостинг )
Tomcat_Home/conf/Catalina/localhost/
и
Tomcat_Home/conf/Dev2/MyDev/
для соответствующих настраиваемых портов
На данный момент все, что вам нужно сделать, это добавить еще несколько файлов, чтобы указать Сервис на ваше приложение.Например, в разделе Tomcat_Home/conf/Dev2/MyDev/
у меня есть файл, который называется Another.xml. Этот файл содержит следующее
<Context path="/" docBase="C:/to_delete" debug="10" crossContext="false">
</Context>
Теперь я могу получить доступ к новому приложению с помощью веб-адреса http://127.0.0.1:8090/Another
Если я попытаюсь получить доступ к этомуиспользуя порт 8080 по умолчанию, я получаю сообщение об ошибке, поскольку приложение не было развернуто для данного порта.
Несколько замечаний по поводу этой настройки.Если вы используете VirtualVM для просмотра приложения, вы заметите, что они используют один и тот же идентификатор процесса.Поэтому вы должны быть особенно осторожны со своими ресурсами.Они будут использовать одно и то же пространство кучи, и все потоки будут отображаться в одном списке.Если вы входите в свои приложения (т. Е. Log4j), убедитесь, что у вас есть возможность показать, какой поток выполнял работу, так как в противном случае было бы сложно определить, из какого порта / приложения это будет происходить.
КакБожо уже указывал: может быть проще просто запустить два экземпляра Tomcat вместо одного сервера, который прослушивает несколько портов.