В спецификации Servlet 3.0 отправляемому ресурсу доступна строка оператора запроса, включенная в запрос к серверу. В спецификации Servlet 3.1 отправленному ресурсу доступна строка запроса, которая есть у ресурса-отправителя, а не строка запроса из исходного запроса к серверу.
Приведенный ниже пример демонстрирует это отличие:
Получение объекта запроса или ответа после вызова метода
AsyncContext.dispatch() или AsyncContext.complete()
является недопустимым и приводит к возникновению следующей исключительной
ситуации:
java.lang.IllegalStateException: SRVE9015E:
Нельзя получать объект запроса или ответа после AsyncContext.dispatch() или AsyncContext.complete().
Это правило помечает следующие элементы:
javax.servlet.annotation.WebServlet в атрибуте asyncSupported=trueweb.xml и web-fragment.xml с элементом
<async-supported>true</async-supported>
внутри элемента <servlet>Дополнительные сведения об изменении поведения Servlet 3.1 см. в ресурсе: Изменение поведения Servlet 3.1.