注销按钮不起作用(会话无效)

use*_*995 0 java session jsp

海兰!

我有一个名为konto(engl.帐户)的jsp站点最后,我有一个按钮,通过单击并重定向回登录页面来使当前会话无效,但这不起作用.

码:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
   "http://www.w3.org/TR/html4/loose.dtd">
<jsp:useBean id="konto" scope="session" class="at.korn.web.Konto"></jsp:useBean>
<% if (session.getAttribute("user")== null)
    {
%>
    <jsp:forward page="index.jsp"></jsp:forward>

<% }
if (request.getParameter("logout")!= null)
    {
    session.invalidate();
    %>
    <jsp:forward page="index.jsp"></jsp:forward>
   <% } %>

<% konto.holeKontostand(String.valueOf( session.getAttribute("user")));%>

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Konto</title>
    </head>
    <body>
        <h1>Kontoübersicht</h1>
        <p>Herzlich Willkommen <% out.print(session.getAttribute("user"));%> </p>
        <p>Ihr Kontostand beträgt: ${konto.ktostand} </p>
        <input type="submit" value="Logout" name="logout" />
        <br>
    </body>
</html>
Run Code Online (Sandbox Code Playgroud)

错误应该在该文件中.请帮忙!

Bal*_*usC 5

您需要将按钮放在一个按钮<form>才能使其工作.

<form>
    <input type="submit" value="Logout" name="logout" />
</form>
Run Code Online (Sandbox Code Playgroud)

也就是说,在单个JSP(视图)中混合模型,视图和控制器并不是最佳实践.