선언에 문제가 있습니다. 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>
''에'emp_id'를 두 번 지정했습니다. 하나는'dept_id '가 될 것으로 예상된다. 그러므로 폼에'dept_id'라는 이름의 엘리먼트가 없다. – Tiny
아마도 emp_id 입력 코드를 복사했고 이름을 dept_id로 바꾸는 것을 잊었을 것입니다. – Theresa