Apache Tomcat Servlet 404 Устранение неисправностей

Я поддерживаю веб-приложение GWT, которое использует 3 сервлета Java для загрузки / выгрузки файлов и передачи данных. У меня был свой грешный сервлет, отображающий место греха, и я не трогал их месяцами, всего несколько дней назад я начал получать 404 ошибки при попытке доступа к моим сервлетам. Кажется, я даже не могу получить доступ к сервлетам, набрав их полный путь из каталога WEB-INF/classes (то есть /servlet/com/company/project/servletname).

К сожалению, они запускаются из плана общего хостинга, и у меня нет доступа к запуску или остановке tomcat или чего-либо еще. Перед тем, как отправлять заявку на устранение неполадок моему хостинг-провайдеру, я просто хотел проверить, верны ли мои предположения о сервлетах, и узнать, есть ли какие-либо действия, которые я должен предпринять для такой ситуации.

Нужно ли перезапускать tomcat, чтобы использовать новый сервлет, загруженный в каталог "WEB-INF/classes"? Нужно ли перезапускать tomcat, чтобы прочитать изменения в файле web.xml в каталоге "WEB-INF"?

Если я помещу файл.class в /WEB-INF/classes/foo/bar.class, я смогу немедленно получить к нему доступ через " http://www.mydomain.com/servlet/foo/bar" или мне нужно не ждать, пока Tomcat распознает этот новый файл класса? Или я должен включить его в существующий файл отображения сервлета web.xml?

Спасибо за любую помощь

1 ответ

Решение

Нужно ли перезапускать tomcat, чтобы использовать новый сервлет, загруженный в каталог "WEB-INF/classes"?

Это зависит, если ваш

Нужно ли перезапускать tomcat, чтобы прочитать изменения в файле web.xml в каталоге "WEB-INF"?

Это зависит, если ваш

Если я помещу файл.class в /WEB-INF/classes/foo/bar.class, я смогу немедленно получить к нему доступ через " http://www.mydomain.com/servlet/foo/bar" или мне нужно не ждать, пока Tomcat распознает этот новый файл класса?

Нет, класс будет доступен для загрузчика классов веб-приложения немедленно, если ваш контекст перезагружается, см. Выше.

Или я должен включить его в существующий файл отображения сервлета web.xml?

Чтобы получить доступ к вашему классу (при условии, что он расширяет HttpServlet) через HTTP, ему потребуется сопоставление web.xml (при условии, что вы используете прямые http-сервлеты)

Другие вопросы по тегам