Как скрыть null в JSP страничке?

91
08 июня 2021, 12:30

Имеется код:

<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%@page import="entity.User"%>
<%@page import="controllers.RegisterController"%>
<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
        <title>Registration Form</title>
    </head>
    <body>
        <jsp:useBean id="user" scope="request" class="entity.User"></jsp:useBean>
        <form action="RegisterController" method="post">
            <center>
                <table border="1" width="15%" cellpadding="5">
                    <thead>
                        <tr>
                            <th colspan="2">Register Form</th>
                        </tr>
                    </thead>
                    <body>
                        <tr>    
                            <td>First Name : </td>
                            <td><input type="text" name="firstname" value="<jsp:getProperty name="user" property="firstName"/>"></td>
                        </tr>
                        <tr>    
                            <td>Last Name : </td>
                            <td><input type="text" name="lastname" value="<jsp:getProperty name="user" property="lastName"/>"></td>
                        </tr>
                        <tr>    
                            <td>Username : </td>
                            <td><input type="text" name="login" value="<jsp:getProperty name="user" property="login"/>"></td>
                        </tr>
                        <tr>
                            <td>Password : </td>
                            <td><input type="password" name="password" value="<jsp:getProperty name="user" property="password"/>"></td>
                        </tr>
                        <tr>
                            <td><center><input type="reset" value="Reset" /></center></td>
                            <td><center><input type="submit" value="Register"></center></td>
                        </tr>
                    </body>
                </table>
            </center>
        </form>
    </body>
</html>

По итогу страница отображает в формах значения null.

Как решить эту проблему?

Answer 1

Прописать дефолтные значения в колонках базы данных: " "

Answer 2

Один из вариантов представлен тут (антиспам заблокировал, но если погуглить, можно найти ссылку (: ). То есть Вы можете написать скрипт на jsp по присваиванию значений переменным и последующей их проверке. И если проверка выдаст null, то с чистой совестью заменять значение на "любую строку".

<%    
    String s = p.getValue();
    if (s == null) {
        s = "not empty string";
    } else { %>
<!-- do nothing -->
<% }%>

А уже затем заполнять этими значениями поля, а не сразу тянуть значения в поле из метода.

Либо второй вариант, сделать тоже самое, но на сервере. Если сервер хочет отдавать null, то вы можете сказать ему этого не делать, а вместо null отдавать, например, просто new String("");

READ ALSO
Поиск подходящих выражений как это сделано в IDEA

Поиск подходящих выражений как это сделано в IDEA

Есть набор предложений по типу "Green Apple", и каждое имеет от 2 до 7 словНужно находить среди них к примеру "Green Apple" по таким ключевым словам как...

87
Обработка нескольких слушателей

Обработка нескольких слушателей

У меня есть два поля EditText и 4 кнопки

81
Прикрутить git к processbuilder

Прикрутить git к processbuilder

решил поработать с командной строкой в javaНашел способ работы с cmd через ProcessBuilder

115