<c:forEach var="user" items="${requestScope.listUser}">
             <tr>
      <td align="center"><font class="labelColor" >${user.userName}</font></td>
   <c:choose> 
                <c:when test="${user.role=='p'}"> 
  <td align="center"><font class="labelColor" >1</font></td>
</c:when> 
     <c:otherwise> 
 <td align="center"><font class="labelColor" >2</font></td> 
 </c:otherwise> 
 </c:choose>
 
            <form id="mgItemForm" name="mgItemForm" method="post" action="UserInfoServlet?action=updata&userID=${user.userid}">
              <td width="21%" align="center">
              <input type="submit" name="Submit" value="修改" class="form2Button" checktype="notes" />
              </td>
              </form>

  <form id="mgItemForm" name="mgItemForm" method="post" action="UserInfoServlet?action=delete&userID=${user.userid}">
              <td width="23%" align="center">              
   <input type="submit" name="Submit3" value="删除" class="form2Button" onClick="return confirm('确实要删除此信息吗?')" />
              </td>
  </form>
            </tr>
           </c:forEach> 
为什么总是输出2 ,即使当${user.role=='p'}也是输出 <c:otherwise></c:otherwise>里的内容, ${user.role}的值能得到,难倒foreach 里不能嵌套if语句,还是怎么回事,