API для ServletContext # getRequestDispatcher () говорит:
Этот метод возвращает значение NULL, если ServletContext не может вернуть RequestDispatcher.
и
Возвращает: объект RequestDispatcher, который действует как оболочка для ресурса по указанному пути, или ноль, если ServletContext не может вернуть RequestDispatcher
По какой причине ServletContext не сможет вернуть RequestDispatcher?Сначала я подумал, что это будет, если был передан неверный путь, но он не возвращает ноль, это приводит к 404 в браузере.
Я проверяю на ноль перед вызовом метода forward () и вВ журналах я вижу, что время от времени RequestDispatcher имеет значение null, но я не знаю, почему, и я не могу выяснить, как его дублировать.
Спасибо
Обновление
Как предложил Фазал, я попытался создать RequestDispatcher для 'http://www.google.com/', чтобы посмотреть, что произойдет.Это вызвало IllegalArgumentException
java.lang.IllegalArgumentException: путь http://www.google.com/ не начинается с символа "/"
Исключение было обнаружено в моемблок try / catch, поэтому у меня никогда не было возможности проверить, был ли RequestDispatcher равен null, или вызвать метод forward ().
Таким образом, у метода ServletContext # getRequestDispatcher () должен быть другой способ вернуть ноль без исключения Exception?