wpjr2’s Weblog

Artigos e tutoriais úteis

Struts Validator: Lab 09

Posted by wpjr2 em julho 5, 2008

Segue abaixo detalhes do laboratório 9 (Struts Validator) do curso de desenvolvimento de aplicações Web com Apache Struts:

1) Criar a classe EmpresaAction que estende de LookupDispatchAction

package curso.struts.visao.action;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

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

import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.actions.LookupDispatchAction;
import org.apache.struts.validator.DynaValidatorForm;

import curso.struts.modelo.dao.EmpresaDao;

public class EmpresaAction extends LookupDispatchAction {

public ActionForward pesquisar(ActionMapping mapping, ActionForm form,
HttpServletRequest request, HttpServletResponse response)
throws Exception {
// obtendo o formulario
DynaValidatorForm formulario = (DynaValidatorForm) form;
String nomeEmpresa = (String) formulario.get(“nome”);
// buscando a lista de empresa
List empresas = EmpresaDao.getInstancia().
getEmpresaPorNome(nomeEmpresa);
// salvando a lista na sessao
request.getSession().setAttribute(“empresas”, empresas);
// retornando para a lista
return mapping.findForward(“lista”);
}

protected Map getKeyMethodMap() {
Map mapa = new HashMap();
mapa.put(“acao.pesquisar”, “pesquisar”);
return mapa;
}
}

1a) Criar os arquivos de configuração (XML):

Copiar o validation-rules.xml do Lab09.zip para WEB-INF
Copiar o validation.xml do Lab09.zip para WEB-INF

2) Acrescentar no arquivo filtro.jsp a propriedade hidden:

<html:hidden property=”acao” value=”Pesquisar” />

3) Criar  no Struts-config.xml um novo form:

<form-bean name=”EmpresaForm”
type=”org.apache.struts.validator.DynaValidatorForm”>
<form-property name=”nome” type=”java.lang.String”/>
</form-bean>

4) Criar  no Struts-config.xml uma nova ação:

<action input=”/filtro.jsp” name=”EmpresaForm” parameter=”acao”
path=”/empresa” scope=”request”
type=”curso.struts.visao.action.EmpresaAction” validate=”true”>
<forward name=”lista” path=”/listaEmpresas.jsp”/>
</action>

5) Definir a validação do formulário no validation.xml:

<formset>
<form name=”EmpresaForm”>
<field depends=”required” property=”nome”>
<arg key=”empresa.nome” position=”0″ />
</field>
</form>
</formset>

6) Mudar no filtro.jsp a ação a ser executada pelo formulário:

Mudar de: <html:form action=”/pesquisaempresa”>
Para: <html:form action=”/empresa”>

7) Acrescentar no struts-config.xml o plugin do validator a ser usado:

<plug-in className=”org.apache.struts.validator.ValidatorPlugIn”>
<set-property property=”pathnames” value=”/WEB-INF/validator-rules.xml,/WEB-INF/validation.xml”/>
</plug-in>

8) Adicionar a lib Lib commons-validator-1.3.1.jar ao projeto Web:

A Lib commons-validator-1.3.1.jar deve estar no diretório WebContent/WEB-INF/lib

9) Acrescentar a propriedade no arquivo application.properties:

acao.pesquisar=pesquisar

10) executar a aplicação via URL:

http://localhost:8080/curso/filtro.jsp

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

 
%d blogueiros gostam disto: