2017-03-13 60 views
0

我已經設置了一個刪除按鈕來刪除數據庫中的一行。 get方法使用id作爲參數。通過get方法在jsp中傳遞grab int

<a class="btn btn-sm btn-danger" href="teacherDelete.jsp?=<%=t.getId()%>">Delete</a> 

這是我抓住id並刪除一行代碼teacherDelete.jsp

 <% 

     if (request.getMethod().equals("GET")) { 
       TeacherDAO tdao = new TeacherDAOImpl(); 
       Teacher t = new Teacher(); 
       t.setId(Integer.parseInt(request.getParameter("id")));        
       tdao.delete(t); 
      // New location to be redirected 
      String site = new String("teachersShow.jsp"); 
      response.setStatus(response.SC_MOVED_TEMPORARILY); 
      response.setHeader("Location", site);      
      } 
    %> 

我得到org.apache.jasper.JasperException: java.lang.NumberFormatException: null誤差HTTP Status 500

如何獲取傳入參數並將其傳遞給我的方法?

回答

1

你之前轉換爲int,你應該檢查是否包含null或不

<a class="btn btn-sm btn-danger" href="teacherDelete.jsp?=<%=t.getId()%>">Delete</a> 

sohould是

<a class="btn btn-sm btn-danger" href="teacherDelete.jsp?id=<%=t.getId()%>">Delete</a> 
1

你錯過了在代碼中的參數ID teacherDelete.jsp?=

<a class="btn btn-sm btn-danger" href="teacherDelete.jsp?id=<%=t.getId()%>">Delete</a>