2009-08-05 3 views
1

Я получаю необычную ошибку при запуске моего приложения, просто интересно, встретил ли кто-нибудь это раньше. Я использую буфера протокола Google, мой сервлет принимает запрос и пытается обработать его, я следующий код:Внутренняя ошибка сервера

InputStream s = request.getInputStream(); 
AdRequest adRequest = AdRequest.parseFrom(s); 

После выполнения второй строки я получаю ошибку ниже в MyEclipse отладчике:

Источника не найден для строки ApplicationFilterChain.internalDoFilter (ServletRequest, ServletResponse): 310

Я использую сервер приложений Jboss. Я получаю код состояния HTTP 500: ошибка внутреннего сервера.

Есть ли у кого-нибудь предложения/мысли?

+0

Если вы закомментируете ВСЕ строки кода в методе doGet, он все равно выдает ошибку? Кто называет метод internalDoFilter? Похоже на то, что вызывает контейнер сервлета, поэтому он может быть чем-то вроде конфигурации вашего веб-приложения (особенно фильтра) и вообще не связан с AdRequest. –

+0

Stack trace? Раньше у меня была ошибка 500: Internal Server. Существует не менее двух способов, которые могут произойти. – stevedbrown

+0

Я прокомментировал все строки кода и запустил мою клиентскую программу. Wihch называет сервлет на этот раз его успешным с Http Status 200. – msharma

ответ

1

Я разобрался с проблемой. Файл protobuffers.jar не включался в мои проекты .war-файла, хотя я добавил банку в мой проект. MyEclipse не включал его. Следуя по пути к серверу Jboss и заглянув внутрь .war, я узнал, что банку там не было. После его копирования в каталог Jboss /.../ default/server/deploy/myproject.war/WEB-INF/lib ошибка исчезла, и я могу отправить запрос на сервлет.

Спасибо.

С уважением.

0

Я бы проверял ваш сервер журналов jboss // log/server.log (при условии, что вы не настроили его где-то еще), и вы получите лучшее описание проблемы.

Внутренняя ошибка сервера просто означает, что необработанное исключение получает пропущенную цепочку фильтров.