Validação no struts

2 respostas
V
E ai galera tenho um ActionForm que faz a validação de um campo e esta codificado mais ou menos da seguinte Maneira:
class userRegistrationForm extends ActionForm{
private String firstName;
. . .   . . .

public ActionErrors validade(ActionMapping mapping, HttpServletRequest request){
    ActionErrors errors = new ActionErrors();
    if(firstName == null || firstName.trim().equals("") ) 
        errors.add("firstName", new ActionError("userRegistration.firstName.problem");
     . . .   . . .
     }
}

No meu arquivo jsp defino assim :

<%@taglib uri="http://struts.apache.org/tags-html" prefix="html"%>
<%@taglib uri="http://struts.apache.org/tags-bean" prefix="bean"%>
<html>
<head>
    <title>User Registration</title>
</head>
<body>

    <h1>User Registration</h1>
    <html:errors/>
    
    <table>
        <html:form action="/userRegistration">
            <tr>
                <td>
                    <bean:message key="userRegistration.firstName"/>
                </td>
                <td>
                    <html:text property="firstName"/>
                </td>
            </tr>
       . . .     . . .

Esta tudo dando certo, mas quando deixo o campo firstName sem nenhum valor, ao invés de ver a mensagem de erro na página tenho a seguinte mensagem de erro padrão do tomcat:
No input attribute for mapping path /userRegistration

O arquivo resorce.property já esta com o valor do erro para ser exibido.

2 Respostas

F

<%@taglib uri=“http://struts.apache.org/tags-html” prefix=“html”%>
<%@taglib uri=“http://struts.apache.org/tags-bean” prefix=“bean”%>

tenta colocar o URI como “/WEB-INF/tags-html.tld” e “/WEB-INF/tags-bean.tld”

e coloque essas tags(tags-html.tld e tags-bean.tld) no diretorio WEB-INF

No form coloque “getFirstName()” no lugar de firstName!

V

Acho que vc não esntendeu a minha questão!!! O meu jsp esta funcionando corretamente o meu form bean está escrito da maneira adequada com todos os métodos get e set para todos as atributos (apenas foram omitidos do código). O problema esta quando validade retorna um objeto ActionErrors cheio. Aparece aquela página do tomcat no lugar do form que eu defini no atributo input de <action-mapping>. Eu não sei o que está ocorrendo!!!

Criado 17 de janeiro de 2005
Ultima resposta 17 de jan. de 2005
Respostas 2
Participantes 2