Je suis nouveau aux servlets et JSPs. Récemment .. J'ai essayé d'envoyer des données de ma servlet à JSP en utilisant requestDispatcher.JSP retournant null pour request.getParameter() mais montre des valeurs dans EL
Ceci est mon code Servlet responsable:
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
sampleClass sampleObject = new sampleClass(1, "myname");
ObjectMapper mapper = new ObjectMapper();
String jsonstring = mapper.writeValueAsString(sampleObject);
request.setAttribute("values", jsonstring);
request.setAttribute("valuees", "testing");
request.getRequestDispatcher("/somejsp").forward(request, response);
}
partie Ma JSP responsable de la récupération des données:
${values}
${valuees}
<%
//out.println(Message);
Enumeration enume = request.getParameterNames();
for (Entry<String, String[]> entry : request.getParameterMap().entrySet()) {
String name = entry.getKey();
String value = entry.getValue()[0];
// ...
}
String value = request.getParameter("values");
out.println(value);
String valuee = request.getParameter("valuees");
out.println(valuee);
%>
Mais la sortie que je reçois est:
{ "n": 1 , "nom": "myname"} test null null
comme vous pouvez le voir à la fois le EL donne une sortie correcte, l'imp La lementation avec l'énumération ne retourne rien et les deux autres retournent null.
Je ne comprends pas cela. Je n'ai pas trouvé de solution en ligne.