当前位置: 首页 > 知识库问答 >
问题:

JSP在收到servlet响应之前不显示文本

唐焕
2023-03-14

我正在尝试使用servlet检索从servlet返回的数据以显示在页面上。我的问题是,我的JSP代码片段可以工作,但在接收到服务器的响应之前,它在屏幕上显示了来自Request.GetAttribute代码的null。

这是我的代码

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>

    <title>GameAlytics Login</title>
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel ="stylesheet" href="styles.css">

</head>
<body>


 <div id="navbar">
                <div id="logo">
                <img SRC="logo.png" ALT="Unable to load image" WIDTH=150 HEIGHT=90>
            </div>
                <div id="navbar-right">
                    <a class="active" href="index.html">Home</a>
                    <a href="Login.html">Login</a> 
                    <a href="ViewData.html">View Data</a>
                    <a href="Contact.html">Contact</a>
                    <a href="About.html">About</a>
                </div>
            </div>

    <form action="Login" method="GET">
          <div class="imgcontainer">
            <img src="images/avatar.jpg" alt="Avatar" class="avatar">
          </div>

          <div class="container">
            <label for="username"><b>Username</b></label>
            <input type="text" placeholder="Enter Username" name="username" id="username"  required>

            <label for="psw"><b>Password</b></label>
            <input type="password" placeholder="Enter Password" name="password" id="password" required>

            <button>Login as administrator</button>
          </div>
        </form>
        <p style="color:red; font-size: 20px;"><%=request.getAttribute("errorMessage")%></p>
        <div id="footer">
          <h2>Copyright of GameAlytics 2019</h2>
        </div>
        </body>
        </html>
 //if details entered are correct, take user to system info page
          if(enteredUsername.equals(dbUsername)&&enteredPassword.equals(dbPassword)){

             response.sendRedirect("ViewData.html");     
          }

          ///if details entered are incorrect, user remains on login page
          else{

               request.setAttribute("errorMessage", "Invalid user or password");
               request.getRequestDispatcher("test.jsp").forward(request, response); 
          }

        }//try end

共有1个答案

韩嘉祯
2023-03-14

您可以检查值是否为null,如下所示:

//here we check if  the errorMessage is not null
<% if(request.getAttribute("errorMessage") !=null){ %>
  <p style="color:red; font-size: 20px;">
<%=request.getAttribute("errorMessage"); %>
 </p>
<% } %>
 类似资料:
  • 我有一个名为campaignMaint.java的Servlet,其中有一个doGet和一个doPost,还有一个名为jcampaignMaint.JSP的JSP。在输入URL/campaignMaint?campaign=Treasury时,doGet将数据构建为数组并执行: jcampaignMaint.jsp然后构建一个包含一些可修改字段的表,如下所示: 单击Submit按钮时,HTTP P

  • 我有一个索引。带有“刷新”、“转发”和“编辑”按钮的jsp页面。如果我单击刷新按钮,它将调用一个Servlet,并在索引上显示值。jsp页面。 当我点击“forward”按钮时,它调用另一个servlet并转到另一个页面forward\u call\u log。jsp。在这个页面中,当我点击“转发”按钮时,它调用另一个servlet,该servlet显示索引。jsp页面。索引。显示jsp页面,但数

  • 我需要帮助将结果集值从servlet转发到jsp,而不使用JSTL实现 工作流程: 用户在输入框中输入值并单击搜索按钮 单击搜索时会调用servlet。servlet专注于数据库实现并将结果集值转发到请求所在的同一jsp页面。 问题:我的结果集大小是3,但仅表顶部的值就打印在我的jsp页面中。其余2个值缺失。我希望所有的值都打印在我的jsp页面中。 这是我的代码: Productlist.jsp

  • 问题内容: 我认为(实际上我知道!)我在这里做错了事,我试图将一些值填充到HashMap中,并将每个hasmap添加到将添加到JSON对象的列表中: 我的问题是我知道这将返回一个字符串,我似乎无法解析(这是问题)。我的问题是如何返回实际的JSON编码的字符串(甚至应该这样做?),或者针对这种类型的问题的最佳攻击方法是什么?我为此使用的JavaScript如下: 请注意,JSON响应可以很好地返回,

  • 我不确定,如果我遗漏了什么,但在谷歌上也找不到。我正在研究Jmeter的一些特性。我也用过邮递员。我们有API POST请求,它返回JSON响应。 在从Postman访问API时,我得到了“JSON”响应。(即无问题)和API触发我的服务。 现在,如果从Jmeter命中。如果200和我的服务也触发,则响应。但作为回应,我得到了一些代码或键,而不是JSON值。 就像'e5e9e97a9ba2144b

  • 介绍:JAVA Web应用程序中包含的Servlet。有一些值用于所有servlet,而另一些值仅与指定的servlet相关。因此,使用一个输入表单(JSP),然后它将这些值/表单输入发布到另一个“新”JSP。从这个JSP中,以前的表单(JSP)中的值应该被发布到一个servlet(-有时,会加入新表单中的附加值) 使用一个简单的HTML表单,将JSP中的值成功地发布到另一个JSP中。 问题:比如