Tomcat сообщает об ошибке 404 во всех вновь развернутых WAR файлах?

Я развернул файл WAR в файл $TOMCAT_HOME/webapps, скопировав файл в каталог, как я уже делал это тысячу раз. Tomcat обнаруживает WAR и раздувает его. Я могу пересечь дерево каталогов на моем сервере в командной строке (это Fedora).

Но когда я обращаюсь к webapp в моем браузере клиентской машины, я получаю только 404 ошибки. Это произошло с двумя последними развертываниями полностью отдельных WAR.

Первая была заменой существующей ВОЙНЫ. Я сначала удалил WAR и его раздутую директорию, а затем скопировал в WAR, которая раздулась... 404. Я снова удалил все, вернул ранее действующую WAR из резервной копии. Он завышен и работал.

Вторая была совершенно новой, никогда ранее не развернутой WAR... ничего, кроме 404.

Другие WARs работают, но теперь я боюсь что-то изменить, пока не узнаю, что происходит. Любые подсказки?


Изменить. Из моего комментария вы можете видеть, что журналы, содержащие "SEVERE: Error listenerStart" после того, как WAR была развернута Tomcat. Не было обнаружено следов стека или других ошибок.


Edit2. Оказывается, вторая WAR искала ELResolver и не могла ее найти. Это было похоронено в файле журнала localhost.

Ответы

Ответ 1

Вы должны перейти на вкладку "Серверы" и щелкнуть правой кнопкой мыши по "свойствам" и нажать кнопку "Переключить местоположение". После этого вы повторите тест. Дайте мне знать, если это сработает. (Ссылка: 404 с развернутым webapp.

с помощью tomcat/eclipse.

Ответ 2

Можно ли удалять файлы в каталоге tomcat автоматически после выполнения, т.е. Все файлы должны быть удалены после запуска tomcat? Любое предложение????

Ответ 3

Если веб-приложение не развертывается правильно, вы получите 404.

Вам следует просто удалить WAR файл и позволить Tomcat удалить завуалированную папку войны.

ListenerError может быть тем, что web.xml все еще относится к слушателю, который не находится в новом коде, который вы хотите ввести в войну.

Ответ 4

Удалите файл войны, очистите tomcat, начните, опустите, а затем снова поставьте войну.

ONTO: Убедитесь, что война была сгенерирована правильно.

Ответ 5

  1. Стоп Tomcat
  2. Храните только одну версию файла войны
  3. Удалить надутую папку
  4. Удалите "рабочую" папку и ее содержимое из базового каталога tomcat (или) CATALINA HOME
  5. Перезапустите tomcat и протестируйте приложение.

Ответ 6

Эта проблема случилась со мной также, когда я использовал Tomcat. Если в развертывании нет ошибок, скорее всего, если вы откроете веб-консоль (Developer Tools → Console) или Ctrl-Shift-I в Chrome, он скажет, что ищет определенный отсутствующий файл.

Как только вы добавите этот файл обратно (если вышеприведенное верно), Tomcat должен работать правильно.