0

いくつかのJSPページと1つのサーブレットを使用しています。

サーブレットdoPost():

String userPath = request.getServletPath();
if (userPath.equals("/PageAdm")) {
     String username = request.getParameter("username");
     String password = request.getParameter("password");
     User userone = new User(username, password);
     request.setAttribute("user", user);
     RequestDispatcher view = request.getRequestDispatcher("view/Page.jsp");
     view.forward(request, response);
} else if (userPath.equals("/Page")) {
     String username = request.getParameter("username");
     UsersService us = new UsersService();
     User user = us.getUserByUsername(username);
     request.setAttribute("user", user);
     RequestDispatcher view = request.getRequestDispatcher("view/UserNameEdit.jsp");
     view.forward(request, response);
}

ログインするとユーザー名を変更できますが、フォームを送信(クリック)して変更すると、servletpathは「/ PageAdm」のままですが、ユーザー名を変更できるように「/Page」にする必要があります。「/UserNameEdit」に移動するようにservletpathを変更するにはどうすればよいですか?

4

1 に答える 1

2

正しいパスを指すように、フォーム要素にアクション属性を追加します。

<form action="<c:url value="/MyServletPath/Page"/>" method="post">
于 2013-02-20T00:18:16.883 に答える