매개 변수를 서블릿에 전달하는 방법
-
04-07-2019 - |
문제
JSP의 Page UseBean에서 Java의 서블릿으로 매개 변수를 전달하려면 어떻게합니까? 제출 버튼에 아무런 문제가 없지만 다른 것을 보낼 방법이없는 양식에 데이터가 있습니다. 도와주세요? 내 코드는 다음과 같습니다.
<input name = "deleteGameButton" type = "submit" value = "Delete"
onclick = "submitToServlet('DeleteGameServlet');">
해당 JavaScript는 다음과 같습니다.
function submitToServlet(newAction)
{
document.userGameForm.action = newAction;
}
서틀이 사용자 비안에 액세스 할 수 있기를 바랍니다
<jsp:useBean id = "userBean" scope = "session" class = "org.project.User" />
해결책
당신은 여기서 엉망입니다.
onclick ()는 JavaScript이며 클라이언트 측에서 실행됩니다. 세션 스코프 콩을 업데이트하는 (직접) 방법이 없습니다. 그 Bean은 서버 측에 남겨져 있으며 HTML 페이지가있을 때 사용되었습니다. 생성. 매개 변수를 Servlet으로 전달하려면 오래된 양식 필드를 사용하고 양식을 제출해야합니다.
양식에 필드를 더 추가하고 제출하기 전에 값을 설정 한 다음 제출하십시오.
Servlet Call request.getParameter ( "name");
추신 : 이런 종류의 것들을 자동화합니다 스트럿을 사용하십시오. :-) struts는 원하는 것을 정확하게 수행합니다. 매개 변수를 동작으로 전달하기 전에 해당 매개 변수로 Bean을 채 웁니다. 투명하게.
다른 팁
그것은 당신이하려는 일에 정확히 달려 있습니다. 그만큼
<jsp:useBean id = "userBean" scope = "session" class = "org.project.User" />
태그를 사용하면 JSP에서 세션의 사용자 비인 속성을 사용할 수 있습니다. 세션에 사용자 빈 속성이없는 경우 새 항목 (org.project.user의 기본 생성자를 사용하여 새 항목을 생성하고 세션에 배치합니다.
그런 다음 서블릿에 도착하면 다음과 같이 검색 할 수 있습니다.
User user = (User)request.getSession().getAttribute("userBean");
getServletConfig().getServletContext().getRequestDispatcher("servlet path & name");
dispatcher.forward (request, response);
안녕하세요 다음 태그로 시도하십시오.
<jsp:useBean id = "userBean" scope = "session" class = "org.project.User"/>
<jsp:setProperty name="beanName" property="propertyname" value="value"/>
</jsp:useBean>
더 여기
행운을 빕니다!