| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > не могу запустить сервлет |
| Автор: azalia 14.5.2015, 17:02 | ||
| Доброго времени суток! Не получается развернуть сервлет на Томкат 7. Я пока не использую JSP. Не хочу пока заморачиваться отделением логики от представления. Сервлет хранится в C:\Tomcat 7.0\webapps\testApp\WEB-INF\classes\test1\web. В папке C:\Tomcat 7.0\webapps\testApp\WEB-INF хранится web.xml
Запускаю http://localhost:8080/testApp/DBServlet Возникает ошибка 500. Код сервлета могу привести позже, если будет нужен. Я понимаю, что тема уже избитая, но я все равно что-то никак не пойму ЧЯДНТ? |
| Автор: azalia 14.5.2015, 19:14 | ||||||
попробовала запустить типовой сервлет:
Добавила в web.xml в C:\Tomcat 7.0\webapps\testApp\WEB-INF
Запускаю http://localhost:8080/testApp/NewServlet Тоже ошибка 500.
|
| Автор: azalia 14.5.2015, 19:30 | ||
| добавила package test1.web; запустился... а в моем ему тогда что не нравится?
|
| Автор: AntonSaburov 15.5.2015, 09:36 |
| Так сам сервлет запустился ? Без всяких баз данных - пока просто вернуть просто Hello world. Это получилось ? |
| Автор: AntonSaburov 15.5.2015, 12:12 |
| Надо смотреть логи в Tomcat - <Tomcat>/logs/ - скорее всего файлы catalina или дщсфдрщые - там можно посмотреть на ошибку. Иначе что-то сказать не получится. Учтите на будущее - без описания ошибки только по коду 500 ничего выяснить не получится - так что смотрите логи. Всегда. Это иногда единственное, что спасает. Код 500 - это скорее всего какая-то проблема уже внутри сервлета. |
| Автор: azalia 15.5.2015, 12:29 |
Я уже пыталась там смотреть... Ничего путного не нашла. Странно, что у меня ничего не выводится. Может есть способ заставить его вывести ошибку на экран? Когда у меня не работал типовой сервлет, то на экран выводилась ошибка 500 вместе со стеком ошибок и было видно, что это выдача Томкат. А тут тоже ошибка 500, но она какая-то немного странная. Вернее, выглядит совсем по-другому, как будто сам сервер (Томкат) не доступен (Внутренняя ошибка сервера), и никаких признаков о том, что это вообще обработано Томкат. Значит сам сервлет с доступом к БД какой-то неправильный? Я его взяла с книжки. Только в ней была описана попытка доступа к Оракл, а я заменила на Майкрософт. |
| Автор: azalia 15.5.2015, 14:39 | ||
нигде не могу найти ответ на свой делитанский вопрос - чем же отличаются http-сервлеты от обычных? или обычных сервлетов не существует? можно ли превратить обычный java-класс с main в http-сервлет просто обернув его в следующую конструкцию?
|
| Автор: Samotnik 15.5.2015, 17:32 |
| http://docs.oracle.com/javaee/6/api/javax/servlet/Servlet.html, http://docs.oracle.com/javaee/6/api/javax/servlet/http/HttpServlet.html понятно или объяснить? |
| Автор: azalia 15.5.2015, 18:14 |
в общих чертах, да. |
| Автор: AntonSaburov 15.5.2015, 21:38 |
| Во-первых - если сервлет без базы выводит Hello World, значит проблема в коде уже внутри сервлета. Во-вторых - навставляйте внутрь сервлета System.out.println через каждый оператор и смотрите в логи - Томкат туда все пишет. А так разговор слепого с глухим. |
| Автор: azalia 16.5.2015, 15:20 | ||
все, у меня получилось! спасибо! |
| Автор: sergioK1 19.8.2015, 09:48 | ||
мусор в кеше, точнее файл .сlass исчез, точнее ушел в другую папку, с целью оптимизации при перекомпиляции исправляеться , возможно либо код не компилился и вы не видели, думая что все исправно, error 500 говорит что у вас нет драйвера к БД jar в папке lib есть? Я угадал ? |