Java JSP中的登录验证

Java JSP中的登录验证,java,html,jsp,Java,Html,Jsp,我试图做的是在没有用户登录的情况下启动一个新会话,如果有人登录,则应该重定向到一个页面(loginsucces.jsp),在该页面上他们将看到当前登录的实际用户。问题是,如果我把这段代码放进去,它完全可以工作: <% if ( session.isNew() ) { out.println( "<h3>NB: New session starting</h3>" ); } else { session.invalidat

我试图做的是在没有用户登录的情况下启动一个新会话,如果有人登录,则应该重定向到一个页面(loginsucces.jsp),在该页面上他们将看到当前登录的实际用户。问题是,如果我把这段代码放进去,它完全可以工作:

  <%
   if ( session.isNew() )
   {
     out.println( "<h3>NB: New session starting</h3>" );
  }
  else
  {
    session.invalidate();
%>
    <jsp:forward page="example91.jsp" />
<%
  }
%>

这应该是我想要实现的代码,但它不起作用

<%
  if ( session.isNew() )
  {
    out.println( "<h1>New session starting </h1>" );
  }
  else (session.is)
  {
    out.println( "<h1>You are already logged in!");
  }
%>
    <jsp:forward page="userlogin.jsp" />
<%
    <jsp:forward page="loginsucces.jsp" />
%>

我发现您的代码中有两个即时错误。请参阅内联注释

<%
  if ( session.isNew() )
  {
    out.println( "<h1>New session starting </h1>" );
  }
  else (session.is) // TYPO HERE
  {
    out.println( "<h1>You are already logged in!");
  }
%>
    <jsp:forward page="userlogin.jsp" />

// THIS JSP TAG SHOULD NOT BE INSIDE <% %>
<%
    <jsp:forward page="loginsucces.jsp" />
%>

//此JSP标记不应位于内部

错误是什么?键入异常报告消息无法为JSP编译类:说明服务器遇到内部错误,无法满足此请求。异常org.apache.jasper.JasperException:无法为JSP编译类:JSP文件中的第48行发生错误:/userlogin.JSP标记语法错误,结构错位45:%>46:47:50:51:该错误有什么混淆之处?也许可以在你的问题中清楚地表达出来。好的,解决了!但是我应该把else重定向()放在哪里呢?