Nicht umleiten mit der Antwort.sendRedirect
Habe ich gegoogelt und gegoogelt für Stunden, wie man ein redirect in der jsp oder servlets.
Allerdings, wenn ich versuche, es funktioniert nicht.
Code, den ich in der jsp-Seite:
<%
String articleId = request.getParameter("article_id").toString();
if(!articleId.matches("^[0-9]+$"))
{
response.sendRedirect("index.jsp");
}
%>
Weiß ich aus Debuggen, regexp funktioniert und wenn einer mal, artikelID ist nicht die Anzahl, die if
geht hinein, aber wenn es erreicht Antwort.sendRedirect es nicht wirklich macht umleiten.
Vermisse ich etwas sehr grundlegendes in diesem Fall ?
Vielen Dank im Voraus.
InformationsquelleAutor Dmitris | 2009-06-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sollten Sie
return
nach einer Umlenkung:Es lohnt sich zu überlegen, "warum" diese. Die sendRedirect() fügt einen header der HTTP-Antwort, und das ist es. Wenn Sie gehen dann ein paar schreiben Inhalte für die Antwort, dann die browser betrachten kann die redirect-header überflüssig, und es ignorieren. Es ist immer eine überlegung Wert, die Reihenfolge, in denen Sie Methoden aufrufen, auf das response-Objekt ist, kann es oft dazu führen, ungerade Fehler-Möglichkeits-ohne einen offensichtlichen Grund. Die Servlet API ist ziemlich explizite beschreiben diese potenziellen Probleme.
ich habe auch das gleiche problem, versuchte ich diese Lösung aber nicht, woking vorhanden, bitte helfen
InformationsquelleAutor objects
Gibt es Inhalte, bevor diese scriptlet? Wenn dem so ist, wird die Umleitung nicht funktionieren würde.
Auch, die gängige Praxis ist, diese Logik in einem servlet oder einer anderen Klasse dient als controller, und verlassen die JSP zu behandeln nur das rendering des HTML. Es kann auch Ihr problem lösen. Zum Beispiel, sehen Sie hier
InformationsquelleAutor David Rabinowitz