Title: RE: pb RequestDispatcher

Salut !

A priori, c'est normal, les specs Servlet disent :

"If the response has been committed, an IllegalStateException
must be thrown."

et

"Before the forward method of the RequestDispatcher interface
returns, the response must be committed and closed by the servlet
container."

Donc, pas trop de possibilité de ce côté là.

Je pense qu'il vaut mieux que tu regardes du côté
de la méthode include.

Olivier

> -----Message d'origine-----
> De : Jean Michel Flambard [mailto:[EMAIL PROTECTED]]
> Envoyé : lundi 3 juin 2002 17:57
> À : [EMAIL PROTECTED]
> Objet : pb RequestDispatcher
>
>
> Bonjour à tous,
>
> Voici mon probleme:
>
> J'ai une servlet (appelons la sA) qui execute un forward sur
> un jsp (jspA).
> jspA appele une servlet sB.
> Normalement à la sortie de sB, c'est sA qui reprend la main
> (si j'ai bien
> compris le fonctionnement
> de RequestDispatcher).
> Or, après le forward vers jspA, ma servlet sA execute un
> nouveau forward
> vers une servlet sC.
>
> Sauf que là mon applic. plante avec l'erreur suivante:
> forward() not allowed after buffer has commited.
> Et une IllegalStateException.
>
> D'ou ma question, peut-on faire deux forwards à la suite dans
> une servlet,
> comme ceci:
>
> RequestDispatcher rd =
> this.getServletContext().getRequestDispatcher("/jspA");
> rd.forward(req, res);
>
> rd = this.getServletContext().getRequestDispatcher("/servlet/sC");
> req.setAttribute("nomObject", objet);
> rd.forward(req, res);
>
> Merci d'avance,
>
> --
> Jean Michel
>
>
>
>

Répondre à