2015-01-08 5 views
0

선언에 문제가 있습니다. int dept_id = Integer.parseInt(request.getParameter("dept_id")); 항상 java.lang.NumberFormatException : null을받습니다. int emp_id의 첫 번째 선언은 작동하지만 dept_id의 경우 항상 null 값을 얻습니다.두 번째 선언에서 JSP에서 Servlet으로 Null 값 가져 오기

가 여기 내 서블릿이다

public UserController() { 
    super(); 
    udao = new UserDao(); 
    ddao = new DepartmentDao(); 

} 

@Override 
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { 
    String forward=""; 
    String action = request.getParameter("action"); 

     forward = INSERT_OR_EDIT; 
     int emp_id = Integer.parseInt(request.getParameter("emp_id")); 
     int dept_id = Integer.parseInt(request.getParameter("dept_id")); 


     User user = udao.GetUser(emp_id); 
     User user2 = ddao.GetHub(dept_id); 

     request.setAttribute("user", user); 
     request.setAttribute("user2", user2); 



    RequestDispatcher view = request.getRequestDispatcher(forward); 
    view.forward(request, response); 
} 

JSP

<fieldset> 
     <legend id="myLegend">User</legend> 
<!--  <label for="emp_id"> 
       Employee ID : 
       </label> --> 
     <input type="text" readonly="readonly" name="emp_id" style="display:none" 
        value="<c:out value="${user.emp_id}" />" /> 


     <label for="serial_number">Serial Number :</label> 
       <input type="text" name="serial_number" placeholder=" 
        value="<c:out value="${user.serial_number}" />" /><br /><br /> 


      <!--  <label for="dept_id"> 
       Department ID : 
       </label> --> 
     <input type="text" readonly="readonly" name="emp_id" style="display:none" 
        value="<c:out value="${user2.dept_id}" />" /> 


       <label>Hub :</label> 
       <input type="text" name="department_name" 
        value="<c:out value="${user2.dept_name}" />" /><br /><br /> 



    </fieldset> 
+1

''에'emp_id'를 두 번 지정했습니다. 하나는'dept_id '가 될 것으로 예상된다. 그러므로 폼에'dept_id'라는 이름의 엘리먼트가 없다. – Tiny

+0

아마도 emp_id 입력 코드를 복사했고 이름을 dept_id로 바꾸는 것을 잊었을 것입니다. – Theresa

답변

1

은 당신의 DEPT_ID의 이름은 EMP_ID된다. 모양은 다음과 같습니다 :

<input type="text" readonly="readonly" name="dept_id" style="display:none" 
       value="<c:out value="${user2.dept_id}" />" /> 

나는 이것을 간과했다고 생각합니다.

+0

나는 이미 그것을 바 꾸었지만 여전히 동일하다. 그것의 여전히 'int dept_id = Integer.parseInt (request.getParameter ("dept_id"));' – user3496683

관련 문제