在jsp页面上获取错误

时间:2013-10-25 07:40:33

标签: java jsp

我的jsp上出现以下错误。可能是由于会话超时而出现但是如何处理它:

org.apache.jasper.JasperException: An exception occurred processing JSP page /navbar.jsp at line 23

我的代码是:

20:                         <li><a href="homepage.jsp"><i class="icon-home"></i> Dashboard</a></li>
21: 
22:                         <li><a href="MenuTeamMember.jsp"><i class="icon-group"></i> Team</a></li>
23:                         <%if (session.getAttribute("role").equals("National_Head") || session.getAttribute("role").equals("Admin")) {%>
24:                         <li class="dropdown">
25:                             <a href="#" class="dropdown-toggle" data-toggle="dropdown"><i class="icon-globe"></i> Distribution<b class="caret"></b></a>
26:                             <ul class="dropdown-menu">

2 个答案:

答案 0 :(得分:0)

您的session.getAttribute("role")可能会返回null。改变你的状况,如下所示,看看发生了什么。

<%if ("National_Head".equals(session.getAttribute("role")) 
     ||       "Admin".equals(session.getAttribute("role")) {%>

如果字符串equals首先使用固定值(即“National_Head”),它将永远不会抛出任何NPE

答案 1 :(得分:0)

出来的步骤:

1.检查session.getAttribute("role") null是否

2)getAttribute返回Object,因此您应该将其投放到String进行检查。

 <%if ((String)session.getAttribute("role").equals("National_Head") ||
                   (String)session.getAttribute("role").equals("Admin")) {%>

3)Immeadiatly阅读:How to avoid Java code in JSP files?