2014-12-03 4 views
0

В Google App Engine Java я пытаюсь запустить бэкэнд, но всегда получаю сообщение об ошибке в журнале бэкэндов. .GAE Backend-Process завершен, потому что он не смог ответить на запрос запуска с кодом состояния HTTP от 200-299 или 404.

Процесс завершается, поскольку он не в состоянии ответить на запрос с кодом состояния HTTP 200-299 или 404.

App Engine Журналы

2014-12-07 11:06:31.944 /_ah/start 302 4842ms 0kb instance=0 module=default version=testservice 
0.1.0.3 - - [06/Dec/2014:21:36:31 -0800] "GET /_ah/start HTTP/1.1" 302 231 - - "0.testservice.testapp.appspot.com" ms=4842 cpu_ms=7626 cpm_usd=0.000026 loading_request=1 exit_code=107 instance=0 app_engine_release=1.9.16 

com.test.AppFilter doGet: Фильтр Инициирован ..!

Этот запрос вызвал новый процесс для вашего приложения, и, таким образом, ваш код приложения был загружен в первый раз. Этот запрос может потребовать больше времени и использовать больше CPU, чем типичный запрос для вашего приложения. E 2014-12-05 11: 02: 16,916

Процесс завершается, поскольку он не в состоянии ответить на запрос с кодом состояния HTTP 200-299 или 404.

Пожалуйста, помогите.

+0

У меня такая же проблема, я получил решение здесь http://stackoverflow.com/questions/21106874/http-status-code-200-299-or-400 – RBP

+0

@RBP Я проверил это, но до появления проблемы. – yogesh

+0

Можете ли вы предоставить полную запись в журнале со статусным кодом после 'GET/_ah/start HTTP/1.1'? Благодарю. –

ответ

2

Когда начинается модуль (или прежняя версия: бэкэнд), организатор Google App Engine отправляет HTTP-запрос /_ah/start. Вы можете использовать этот HTTP-запрос для выполнения любой операции инициализации.

Этот запрос HTTP, как описано в логах, должен возвращать код статуса HTTP либо между 200 и 299 (что говорит о том, что запрос был правильно обработан) или 404 Not Found (который говорит, что вы не придавала сервлет или фильтр на этот запрос).

Все это объясняется в документации Google at this page.

Здесь был ответ 302 Redirect. Обычно это происходит с помощью фильтра безопасности, который перенаправляется на экран проверки подлинности.

Если вы определили пользовательский фильтр безопасности или сервлет, обрабатывающий URL-адрес /_ah/start, убедитесь, что он возвращает HTTP-код 200.

Если вы установили <security-constraint> на этот URL (кроме принудительного SSL), удалите его.