Dans la spécification Servlet 3.0, si une chaîne de requête est incluse avec une demande, cette chaîne est mise à disposition dans la ressource distribuée. Dans la spécification Servlet 3.1, si une chaîne de requête est indiquée pour la ressources distribuée, cette chaîne de requête est mise à disposition pour la ressource distribuée au lieu de la chaîne de requête de la demande initiale.
L'exemple ci-dessous montre cette différence de comportement :
L'obtention de la demande ou de l'objet de réponse après l'appel de la méthode AsyncContext.dispatch() ou AsyncContext.complete() n'est pas autorisée et entraîne l'exception suivante :
java.lang.IllegalStateException : SRVE9015E :
Impossible d'obtenir la demande ou l'objet de réponse après AsyncContext.dispatch() ou AsyncContext.complete().
Cette règle marque les éléments suivants :
javax.servlet.annotation.WebServlet avec un attribut asyncSupported=trueweb.xml et web-fragment.xml avec un élément <async-supported>true</async-supported> dans l'élément <servlet>Pour plus d'informations sur les changements de comportement dans Servlet 3.1, voir la ressource suivante : Changements de comportement dans Servlet 3.1.