| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Java EE (J2EE) и Spring > Хелп со STRUTS |
| Автор: ylims 11.4.2007, 11:43 | ||||
имеется JSP-ka:
Struts-config.xml
описанный в struts-config BEAN содержит стандартные get set. Вопрос следующий, в каком месте мне сделать запись данных из формы в БД, и как ? (Если из Action то как получить данные из бина) Добавлено через 11 минут и 32 секунды Вопрос снят. разобрался ) |
| Автор: BlackD 11.4.2007, 12:04 |
| ActionForms represent request data coming from the browser. ActionForms are used to populate HTML forms to display to end users and to collect data from HTML forms. In order to create an ActionForm, you need to follow these steps: 1. Create a new class in the strutsTutorial package called UserRegistrationForm that subclasses org.apache.struts.action.ActionForm as follows: import org.apache.struts.action.ActionForm; import org.apache.struts.action.ActionMapping; import org.apache.struts.action.ActionErrors; import org.apache.struts.action.ActionError; import javax.servlet.http.HttpServletRequest; public class UserRegistrationForm extends ActionForm { 2. Now you need to create JavaBean properties for all the fields that you want to collect from the HTML form. Let’s create firstName, lastName, userName, password, passwordCheck (make sure they entered the right password), e-mail, phone, fax and registered (whether or not they are already registered) properties. Add the following fields: private String firstName; private String lastName; Add getter and setter methods for each field as follows: public String getEmail() { return email; } public void setEmail(String string) { email = string; } 3. Next you need validate the user entered valid values. In order to do this, you need to override the validate method as follows: public ActionErrors validate( ActionMapping mapping, HttpServletRequest request) { ActionErrors errors = new ActionErrors(); if (firstName==null || firstName.trim().equals("")){ errors.add("firstName", new ActionError( "userRegistration.firstName.problem")); } ... return errors; } Я вчера с этим разбирался Создай класс, наследуемый от ActionForm, там записывай данные в базу. В конфиге сделай из него бин, в <action сяжи его со страницей ввода и все вроде. А вообще, посмотри в книге Jakarta Struts Live, если есть. Там отличный пример. Опоздал.... :( |
| Автор: ylims 12.4.2007, 03:57 | ||||||||||
BlackD прикинь запоролся на том же что и ты, вылетает
хотя вроде всё верно, и всё работало, не понял чего вдруг стало вылетать Struts-config
web.xml
класс inteface.addNewUser.beans.Form
Action
Добавлено через 11 минут и 25 секунд сори пометил как решённый, щас снял |
| Автор: tux 12.4.2007, 07:31 |
Причинами могут быть следующие:
|
| Автор: ylims 12.4.2007, 07:53 | ||
ошибка вылазит очевидно из-за тега
т.е если заменить его на стандартный форм то страница грузиться |
| Автор: tux 12.4.2007, 09:11 | ||
Так напиши:
|
| Автор: ylims 12.4.2007, 09:48 | ||
всё равно такая же ошибка. млин чо за ф..гня, всёж вроде правильно |
| Автор: ylims 12.4.2007, 11:36 | ||
млин добавил в web.xml
вроде заработало, а что они означают? |
| Автор: BlackD 12.4.2007, 11:38 | ||
у тебя
Попробуй поменять имя переменной f на field. У тебя же <html:text property="field"/>, так откуда оно знает, что f - это field. |
| Автор: kkorsakoff 12.4.2007, 12:03 |
| У тебя не было load-on-startup. Один раз случайно удалил строку, промучился пару дней. Причем ошибки выскакивали в совершенно неожиданных местах с совершенно необъяснимым описание и стектрейсом |
| Автор: ylims 13.4.2007, 07:06 | ||||||||
сорри я ошибся просто, у мя везде поле называется f, так что не в этом проблема BLACKD слушай просьба такая можеш мне выложить рабочий пример который ты сделал с ActionForm. Добавлено через 2 минуты и 7 секунд
после добывления данной строки, страница грузиться но при сабмите всё равно вылазит
|
| Автор: ylims 13.4.2007, 10:58 |
| всё, всем спасибо, разобрался. Ошибка глупейшая, не верно указал Package где находился Action, поэтому и не находил асtion (вот я д..блоид |