#forms #struts2 #user-input
#формы #struts2 #пользовательский ввод
Вопрос:
Я использую Struts 2, я использую тег формы для захвата пользовательского ввода и обновления базы данных. После обновления я должен остаться на той же странице.
Каким должен быть возвращаемый тип для struts.xml ?
Ответ №1:
Если название вашей страницы editUser.jsp
, чем вы должны указать его при успешном выполнении действия в struts.xml
<action name="update-user" method="execute" class="yourPackageName.yourActionClassName">
<result name="success">/editUser.jsp</result>
</action>
обновление-пользователь — это действие, которое вы можете задать в атрибуте действия тега формы.
В yourAction.java
public String execute() {
//code for update
return "success";
}
Если вы загружаете данные формы из другого действия, а не из struts.xml вы должны указать название этого действия. Например, если действие по загрузке данных для отображения в текстовых полях формы является loadUserForm.action, то после обновления та же страница должна отображаться с обновленными значениями. В struts.xml
<action name="update-user" method="execute" class="yourPackageName.yourActionClassName">
<result type="redirectAction" >load-user-form</result>
</action>
И эта загружаемая пользователем форма будет иметь
<action name="load-user-form" method="execute" class="yourPackageName.yourLoadingUserdataActionClassname">
<result name="success">/editUser.jsp</result>
</action>
Комментарии:
1. Спасибо trivedi. Но моя проблема заключается в чем-то конкретном. Как будто я перехожу на определенную страницу с несколькими вариантами навигации по действию. И я попал во всплывающее окно. где пользователь может вводить некоторые комментарии и публиковать их. комментарии должны быть обновлены в серверной части, и мне нужно получить всплывающее окно с сообщением о публикации комментария. и всплывающее окно должно быть закрыто. Я не могу указать действие, которое будет перенаправлено, это может быть action…