Как отловить DeadlineExceedException в GAE / J? - PullRequest
0 голосов
/ 26 января 2010

Как вы перехватываете это исключение в сервлете, который занимает больше 30 секунд?

Спасибо!

1 Ответ

3 голосов
/ 26 января 2010

Вы можете использовать обычный try-catch для вашего кода и поймать исключение DeadlineExceededException:

import com.google.apphosting.api.DeadlineExceededException

try {
  // your code
} catch (DeadlineExceededException e) {
  // do something here to handle the exception in a user-friendly way
}

Помните, что ваше время, доступное после перехвата DeadlineExceededException, ограничено. Таким образом, вы не можете выполнить много кода внутри перехвата, потому что он сгенерирует HardDeadlineExceededError через короткий промежуток времени (обычно <1 сек). </p>

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...