Ответ 1
Сначала остановите свой Tomcat, затем дважды щелкните на своем сервере, нажмите Server Locations
и проверьте Use Tomcat Installation (takes control of Tomcat installation)
.
Я установил Eclipse и Tomcat 7. Ошибка заключается в том, что при запуске Tomcat из Eclipse он запускается, но после этого, когда я открываю localhost:8080
в Google Chrome, я получаю HTTP Error 404()
. Как я могу это решить, пожалуйста?
Сначала остановите свой Tomcat, затем дважды щелкните на своем сервере, нажмите Server Locations
и проверьте Use Tomcat Installation (takes control of Tomcat installation)
.
Это связано с тем, что веб-приложение ROOT по умолчанию отсутствует. Когда вы создаете веб-приложение и развертываете его в Tomcat с помощью Eclipse, вы сможете получить к нему доступ с URL-адресом в форме
http://localhost:8080/YourWebAppName
где YourWebAppName - это какое-то имя, которое вы передаете своему веб-приложению (так называемый контекст контекста приложения).
Цитата из Jetty Documentation Wiki (внимание мое):
Контекст - это префикс пути URL, который используется для выбора веб-приложение, к которому направляется входящий запрос. типично URL-адрес сервера сервлетов Java имеет формат
http://hostname.com/contextPath/servletPath/pathInfo
, где каждый из элементы пути могут быть нулевыми или более/разделенными элементами. Если есть не является контекстным контуром, контекст называется корневым контекстом.
Если вам по-прежнему требуется приложение по умолчанию, к которому обращается URL-адрес формы
http://localhost:8080
или если вы измените порт 8080 по умолчанию на 80, тогда просто
http://localhost
то есть. без контекста контекста приложения читайте следующее (цитата из Учебное пособие: установка Tomcat 7 и использование его с Eclipse, акцент мой)
Скопируйте веб-приложение ROOT (по умолчанию) в Eclipse. Eclipse забывает копировать приложения по умолчанию (ROOT, примеры, документы и т.д.), когда он создает Tomcat в рабочей области Eclipse. Идти к C:\apache-tomcat-7.0.34\webapps и скопируйте папку ROOT. Затем перейдите к рабочего пространства Eclipse, перейдите в папку .metadata и выполните поиск "wtpwebapps". Вы должны найти что-то вроде
C:\your-eclipse-workspace-location\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps
(или.../tmp1/wtpwebapps
, если у вас уже зарегистрирован другой сервер в Eclipse). Перейдите в папкуwtpwebapps
и вставьте ROOT (скажите "да", если спросил, хотите ли вы объединить/заменить папки/файлы). Затем перезагрузитеhttp://localhost/
, чтобы увидеть страницу приветствия Tomcat.
Eclipse забывает копировать приложения по умолчанию (ROOT, примеры и т.д.), когда создает папку Tomcat внутри рабочего пространства Eclipse. Перейдите на C:\apache-tomcat-7.0.34\webapps, нажмите R-клик по папке ROOT и скопируйте его. Затем перейдите в рабочее пространство Eclipse, перейдите в папку .metadata и найдите "wtpwebapps". Вы должны найти что-то вроде вашего-eclipse-workspace.metadata.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps (или.../tmp1/wtpwebapps, если у вас уже есть другой сервер, зарегистрированный в Eclipse). Перейдите в папку wtpwebapps, нажмите R-клик и вставьте ROOT (скажите "да", если вас спросят, хотите ли вы объединить/заменить папки/файлы). Затем перезагрузите http://localhost/, чтобы увидеть страницу приветствия Tomcat.
Проверьте настройки конфигурации сервера и папок:
Открыть представление серверов (Окно → Открыть представление... → Другие... → Найти "серверы".
Щелкните правой кнопкой мыши по серверу (мой Tomcat v6.0) → свойства → Нажмите "Swicth Location" (проверьте, что местоположение похожее/серверы...
Дважды щелкните по серверу. Это откроет новую страницу серверов. В области "Месторасположения серверов" установите флажок "Использовать установку Tomcat (требуется контроль над установкой Tomcat)".
Перезагрузите сервер.
Наслаждайтесь!
Если вы изменили местоположение, воспользовавшись опцией "Использовать настраиваемое местоположение (не изменяя установку Tomcat)", а развернутый каталог "wtpwebapps", вам необходимо:
<role rolename="manager-gui"/> <role rolename="manager-status"/> <role rolename="manager-jmx"/> <role rolename="manager-script"/> <role rolename="admin-gui"/> <role rolename="admin"/> <user username="admin" password="yourpassword" roles="admin, admin-gui, manager-gui"/>Затем отредактируйте "< ваш веб-каталог > /conf/server.xml", добавьте атрибут:
readonly="true"в < Ресурс / > ключа < GlobalNamingResources/ > группа. Перезагрузите сервер и попробуйте войти в систему с настроенными учетными данными.
ПРИМЕЧАНИЕ. Если вы измените конфигурацию сервера, скажите, если вам нравится сравнивать конфигурацию по умолчанию (используйте каталог установки tomcat) и "новый каталог", при переходе в "новый каталог" этот "tomcat-users.xml" будет перезаписанный файлом по умолчанию, поэтому СОХРАНИТЕ СОДЕРЖАНИЕ ЭТОГО ФАЙЛА где-то перед этим, а затем скопируйте его обратно. Если вы укажете только имя пользователя "admin", вам будут предложены справочные сообщения. В нем говорится: вы не должны предоставлять роли администратора или gui роль "manager-jmx" и "manager- script".
Еще один способ исправить это - перейти к свойствам сервера на eclipse (щелкните правой кнопкой мыши по серверу → свойствам). В общей вкладке вы увидите местоположение как workspace.metadata. Нажмите на местоположение коммутатора.
У меня была эта или аналогичная проблема после установки Tomcat.
Другие ответы не совсем сработали, но привели меня на правильный путь. Я ответил на fooobar.com/questions/327408/... после обнаружения видеоролика YouTube, в котором была показана точная проблема, с которой я столкнулся.
Таким образом, Eclipse получит полный контроль над Tomcat, таким образом вы также сможете получить доступ к домашней странице Tomcat по умолчанию с помощью Tomcat Manager при запуске изнутри Eclipse.