Comment envoyer des paramètres à partir d'une servlet
Je suis en train d'utiliser un RequestDispatcher pour envoyer des paramètres à partir d'une servlet.
Voici mon code de la servlet:
protected void processRequest(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String station = request.getParameter("station");
String insDate = request.getParameter("insDate");
//test line
String test = "/response2.jsp?myStation=5";
RequestDispatcher rd;
if (station.isEmpty()) {
rd = getServletContext().getRequestDispatcher("/response1.jsp");
} else {
rd = getServletContext().getRequestDispatcher(test);
}
rd.forward(request, response);
}
Voici ma jsp, avec le code pour lire la valeur - toutefois il montre la valeur null.
<h1>response 2</h1>
<p>
<%=request.getAttribute("myStation") %>
</p>
Merci pour toutes les suggestions.
Plus verte
RequestDispatcher n'est pas utilisé pour lire les paramètres. Donc j'ai édité ton post.
OriginalL'auteur Greener | 2009-09-10
Vous devez vous connecter pour publier un commentaire.
Dans votre servlet utilisation demande.setAttribute de la manière suivante
où la valeur se trouve être l'objet que vous souhaitez lire plus tard.
et l'extraire plus tard dans une autre servlet/jsp en utilisant demande.getAttribute comme
ou
Faire remarquer que la portée de l'utilisation de get/setAttribute est limitée dans la nature - les attributs sont remis à zéro entre les demandes. Si vous avez l'intention de stocker des valeurs de plus, vous devez utiliser la session ou le contexte de l'application, ou mieux une base de données.
Attributs sont différents paramètres, que le client ne définit les attributs. Les attributs sont plus ou moins utilisés par les développeurs pour le transfert de l'état à partir d'une servlet/JSP à l'autre. Donc, vous devriez utiliser getParameter (il n'y a pas de setParameter) pour extraire des données à partir d'une demande, définissez les attributs si nécessaire à l'aide de setAttribute, la demande en interne à l'aide de RequestDispatcher et d'en extraire les attributs à l'aide de getAttribute.
OriginalL'auteur Vineet Reynolds
Utilisation getParameter(). Un attribut est de définir et de lire en interne au sein de l'application.
OriginalL'auteur erickson
Dans votre code,
String test = "/response2.jsp?myStation=5";
Vous ajoutez myStation=5 comme la chaîne de requête.Comme les paramètres de chaîne de requête sont stockées
en tant que paramètres de la requête dans l'Objet de Requête.
Vous pouvez donc l'utiliser ,
Il fonctionne très bien.Merci.
OriginalL'auteur reddy