Пример текстового поля <html: text> в Struts

Пример текстового поля Struts

Загрузите этот пример текстового поля Struts -Struts-TextBox-Example.zip

В этом примере Struts вы узнаете, как создать поле ввода текстового поля HTML с тегом Struts<html:text>, проверить текстовое поле с помощьюActionForm, отобразить сообщение об ошибке с помощьюActionErrors, а также ресурс сообщения на странице JSP.

1. Структура папок

Это окончательная структура проекта, созданная Maven. Пожалуйста, создайте соответствующие папки.

Struts-text-box-folder

2. Класс действий

Создайте класс Action, ничего не делайте, только перешлите запрос.

UserAction.java

package com.example.common.action;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;

public class UserAction extends Action{

    public ActionForward execute(ActionMapping mapping,ActionForm form,
        HttpServletRequest request,HttpServletResponse response)
        throws Exception {

        return mapping.findForward("success");
    }

}

3. Файл свойств

Создайте файл свойств и объявите сообщения об ошибках и пометите их.

Common.properties

#common module error message
error.common.name.required = Name is required.

#common module label message
label.common.name = UserName
label.common.button.submit = Submit
label.common.button.reset = Reset

4. ActionForm

Создайте ActionForm, примите имя пользователя и подтвердите его в методе validate (). Если имя пользователя пусто, получите сообщение об ошибке из указанного выше файла свойств и добавьте его как ключ «common.name.err» в ActionErrors, позже будет использовать это имя «common.name.err» для отображения сообщения об ошибке в JSP. .

UserForm.java

package com.example.common.form;

import javax.servlet.http.HttpServletRequest;

import org.apache.struts.action.ActionErrors;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.action.ActionMessage;

public class UserForm extends ActionForm{

    String username;

    public String getUsername() {
        return username;
    }

    public void setUsername(String username) {
        this.username = username;
    }

    @Override
    public ActionErrors validate(ActionMapping mapping,
    HttpServletRequest request) {

       ActionErrors errors = new ActionErrors();

        if( getUsername() == null || ("".equals(getUsername()))) {
           errors.add("common.name.err",
                         new ActionMessage("error.common.name.required"));
        }

        return errors;
    }

    @Override
    public void reset(ActionMapping mapping, HttpServletRequest request) {
        // reset properties
        username = "";
    }

}

5. Страница JSP

Используйте HTML-тег Struts<html:text> для создания поля ввода текстового поля HTML. Сообщение метки объявлено в приведенном выше файле свойств, вы можете получить его напрямую через<bean:message key=”label_name” />.

Сообщение об ошибке может отображаться двумя способами:

  1. Показать все сообщения об ошибках

    
    
  2. Отобразить указанное сообщение об ошибке, указав ключ сообщения об ошибке, объявленный в ActionErrors.

    
    

login.jsp

Struts html:text example

:

Отображение ввода текстового поля.
welcome.jsp

    Welcome

6. struts-config.xml

Создайте файл конфигурации Struts и свяжите все вместе.

В атрибутах тегов действий:

  • путь = веб-путь, к которому вы получаете доступ

  • type = ваш класс действий

  • имя = форма вашего действия

  • validate = true приведет к тому, что ActionForm вызовет метод validate () для проверки формы

  • input = если проверка false, куда пересылать?

Вы должны включить свой файл свойств в файлstruts-config.xml, чтобы Struts узнал о вашем пользовательском сообщении о ресурсе.






    
        

    

    

        

        

            
        
    

    

7. web.xml

Последний шаг, создайте web.xml для интеграции со структурой Strut.




  Maven Struts Examples

  
    action
    
        org.apache.struts.action.ActionServlet
    
    
        config
        
         /WEB-INF/struts-config.xml
        
    
    1
  

  
       action
       *.do
  

Доступ к нему

Struts-text-box-example1

Если пользователь не заполнил текстовое поле и не нажал кнопку отправки, появится сообщение об ошибке.

Struts-text-box-example2

Если пользователь заполнит текстовое поле и нажмите кнопку отправки.

Struts-text-box-example3

Он передаст входное значение текстового поля на страницу приветствия и отобразит его.

Struts-text-box-example4