ドロップダウン リストのオプションとしてデータベース データを入力しています
<select name="AccountType">
<option value = "1">Please Select</option>
<c:forEach items="${UserItem}" var="AccountType">
<option value="${AccountType.getRoleId()}">${AccountType.getRoleName()}</option>
</c:forEach>
</select>
<%
if (errors.containsKey("AccountType"))
{
out.println("<span class=\"warning\">" + errors.get("AccountType") + "</span>");
}
%>
私のサーブレットでは、コードは次のとおりです
protected void doGet(HttpServletRequest req, HttpServletResponse resp)
throws ServletException, IOException
{
logger.debug("Add User page requested");
List<User> UserItems = new UserDAO().RoleTypeList();
req.setAttribute("UserItem", UserItems);
jsp.forward(req, resp);
}
ユーザーがドロップダウンリストで最初のオプション(選択してください)を選択するのを忘れたかどうかを判断するために、このコードを試しました
long AccountType = Integer.parseInt(req.getParameter("AccountType"));
if ("1".equals(AccountType))
{
errors.put("AccountType", "Required");
}
else if (req.getParameter("AccountType") != null && !"".equals(req.getParameter("AccountType")))
{
long RoleId = Integer.parseInt(req.getParameter("AccountType"));
emsItem.setRoleId(RoleId);
}
送信ボタンをクリックしても何も起こりませんでした。また、ドロップダウン リストの項目がなくなったので、ページに戻る必要があります。どうすればこれを解決できますか?