Как развернуть сервлет в пристани?
-
29-09-2019 - |
Вопрос
Я создал простой сервлет, который я хочу развернуть в Jetty 7.2. Причал работает и может подавать страницы JSP на http://localhost:8080/jonas/test.jsp
. Отказ Я начал пристани с java -jar start.jar
команда.
Я сохранил свой собственный сервлет MyServlet.class
в <my_jetty_directory>/webapps/jonas/WEB-INF/classes/MyServlet.class
а затем попытался получить доступ к этому сервлету на http://localhost:8080/jonas/servlets/MyServlet
Но я получаю HTTP 404
ошибка.
HTTP ERROR 404
Problem accessing /jonas/servlet/MyServlet. Reason:
Not Found
Есть что -то еще, что мне нужно сделать? Где в структуре причала я должен разместить MySerlvet.class
?
Теперь я создал простой web.xml
подать и сохранить его в <my_jetty_directory>/webapps/jonas/WEB-INF/web.xml
И перезапустил мою пристани, но это не работает. Вот мое простое web.xml
<?xml version="1.0" encoding="UTF-8"?>
<web-app>
<servlet>
<servlet-name>MyServlet</servlet-name>
<servlet-class>MyServlet</servlet-class>
</servlet>
</web-app>
У меня была похожая проблема с JSP, которая сейчас решается: Как развернуть файл JSP в веб -сервере Jetty?
Решение
Вы должны сопоставить свой сервлет в web.xml
, с использованием <servlet>
и <servlet-mapping>
, или аннотировать это с помощью @WebServlet
При использовании сервлета 3.0.
Другие советы
Я думаю, что в папке установки или в лобке или CON CON CONF вашего придурного сервера должен быть файл конфигурации или readme.txt. Прочитайте их, и вы получите конкретные каталоги, чтобы поставить свои занятия. Установите каталог ваших классов на сервере придумывания или, по крайней мере, запомните его. Это будут классы, которые запускаются, когда запускается сервер Jetty.
Что касается пути класса, у Java есть способ, когда ему сказали запускать классы из -за определения папок. Вы можете добавить A-:
* "." at the end of classpath variable in WINDOWS NT platform
* set CLASSPATH=%CLASSPATH%;. in command mode or AUTOEXEC.bat of other WINDOWS
* set CLASSPATH=%CLASSPATH%:. and export CLASSPATH in linux
С этим, "." - FullStop, в переменной классов, вы запустите команду Java поиск классов в этом текущем направлении.