处理JSP时发生HTTP错误500异常

时间:2014-04-08 12:35:56

标签: jsp java-ee

我是Java EE的新手,我从JSP页面获取了一些参数:

String cin = req.getParameter("cin");
    String nom = req.getParameter("nom");
    if(cin=="" && nom==""){
         listC= clientService.chercherTousLesClients();
    }

    req.setAttribute( "test", listC );
    this.getServletContext().getRequestDispatcher( "/chercherClient.jsp").forward( req, resp );

JSP文件中,我有以下代码:

<%
    ArrayList<Client> list;
    list = (ArrayList<Client>) request.getAttribute("test");

    %>
    <span><%=list.get(0).getCinClient() %><span>

这就是错误:

Etat HTTP 500 - 在第31行处理JSP页面/chercherClient.jsp时发生异常

31:         <span><%=list.get(0).getCinClient() %><span>

1 个答案:

答案 0 :(得分:0)

错误500表示存在内部服务器错误。我打赌你会在应用服务器日志中找到NullPointerException。

首先,您不能检查对象是否相等:cin=="",使用test for null和equals。第二个 - 您必须验证jsp中列表不为空。

String cin = req.getParameter("cin");
String nom = req.getParameter("nom");
if ((cin == null || cin.isEmpty()) && (nom == null || nom.isEmpty())) {
     listC = clientService.chercherTousLesClients();
}

req.setAttribute( "test", listC);
this.getServletContext().getRequestDispatcher( "/chercherClient.jsp").forward( req, resp);

JSP:

<%
ArrayList<Client> list;
list = (ArrayList<Client>) request.getAttribute("test");
%>
<c:if test="list != null">
    <span><%=list.get(0).getCinClient() %><span>
</c:if>