Java Mailing List Archive

http://www.gg3721.com/

Home » users.tapestry »

Tapestry 5 Problems with client-side validation

andrethiago

2008-10-25

Replies: Find Java Web Hosting

Author LoginPost Reply

Hi all!

I'm using Tapestry 5.0.15, and I'm having some problems with validate (on
client side) a required text field in my forms. Basically, the validation
"bubble" does not appear for me. Let's show my codes.

First, I have an entity, called Organizadora. Here's is the code:

public class Organizadora implements Serializable {

 private static final long serialVersionUID = 1L;
 // primary key
 private Integer id;
 // other fields
 private String nome;
 private String sigla;
 private Set<Prova> provas;
 private String url;

 public Organizadora() {
 }

 public Integer getId() {
   return id;
 }

 public void setId(Integer id) {
   this.id = id;
 }

 public String getNome() {
   return nome;
 }

 public void setNome(String nome) {
   this.nome = nome;
 }

 public String getSigla() {
   return sigla;
 }

 public void setSigla(String sigla) {
   this.sigla = sigla;
 }

 public Set<Prova> getProvas() {
   return provas;
 }

 public void setProvas(Set<Prova> provas) {
   this.provas = provas;
 }

 public String getUrl() {
   return url;
 }

 public void setUrl(String url) {
   this.url = url;
 }

 public void adicionaProva(Prova prova) {
   if (this.provas == null) {
     this.provas = new HashSet<Prova>();
   }
   prova.setOrganizadora(this);
   this.provas.add(prova);
 }

 @Override
 public boolean equals(Object obj) {
   return super.equals(obj);
 }

 @Override
 public int hashCode() {
   return super.hashCode();
 }

 @Override
 public String toString() {
   return super.toString();
 }

}

Then, I have a page that contains a form to save a new entity. Here's the
.tml:

<t:border t:tituloPagina="Include Organizadora"
xmlns:t="http://tapestry.apache.org/schema/tapestry_5_0_0.xsd">
 <H3>Include Organizadora</H3>
 <t:form t:id="form">
   <fieldset>
   <TABLE cellSpacing="1" cellPadding="0" border="0">
     <TBODY>
       <TR>
         <TD><STRONG>Nome:</STRONG></TD>
         <TD><t:textfield t:id="nome" t:value="organizadora.nome"
t:validate="required" size="80"/></TD>
       </TR>
       <TR>
         <TD><STRONG>Url:</STRONG></TD>
         <TD><t:textfield size="80" t:id="url"
           t:value="organizadora.url" /></TD>
       </TR>
       <TR>
         <TD><STRONG>Sigla:</STRONG></TD>
         <TD><t:textfield size="40" t:id="sigla"
           t:value="organizadora.sigla" /></TD>
       </TR>
     </TBODY>
   </TABLE>
   </fieldset>
   <div align="right">
     <INPUT t:type="submit" type="submit" value="Include" />
   </div>    
 </t:form>
 <div align="center">
  Back to the Organizadora's list.
 </div>

</t:border>

As you can note, the text field nome is marked as required.

And, finally, here is the class for this .tml:

package br.com.tiquestoes.pages;

import org.apache.tapestry5.annotations.InjectPage;
import org.apache.tapestry5.annotations.Property;
import org.apache.tapestry5.ioc.annotations.Inject;

import br.com.tiquestoes.dao.OrganizadoraDAO;
import br.com.tiquestoes.dominio.Organizadora;

/**
* @author André Thiago
*
*/
public class PaginaIncluirOrganizadora {

 @Property
 private Organizadora organizadora;
 
 @Inject
 private OrganizadoraDAO organizadoraDAO;
 
 @InjectPage
 private PaginaListaOrganizadoras paginaLista;
 
 private Integer id;
 
 public void onActivate(Integer id){
   this.id = id;
   organizadora = new Organizadora();
  }
 
 public Object onPassivate() {
   return id;
 }
 
 Object onSubmitFromForm() {
   organizadoraDAO.inserirOrganizadora(organizadora);    
   paginaLista.setMensagemSucesso("Entity was included successfully.");    
   
   return paginaLista;
 }
 
}

But, as I said, when I click in the submit button, the client-side
validation is not performed.

Did I forget anything?

André Thiago
--
Sent from the Tapestry - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@(protected)
For additional commands, e-mail: users-help@(protected)

©2008 gg3721.com - Jax Systems, LLC, U.S.A.