1

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">
4

2 に答える 2

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)すぐに読む: JSPファイルでJavaコードを回避する方法は?

于 2013-10-25T07:46:57.470 に答える
0

あなたsession.getAttribute("role")は戻るかもしれませんnull。何が起こっているかを見るよりも、以下のように条件を変更してください。

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

String の場合、equals最初に固定値 (つまり、"National_Head") を使用します。これは決してスローしませんNPE

于 2013-10-25T07:45:34.403 に答える