Bonjour,
Je suis actuellement sur un problème avec l'utilisation du plugin Validator et des formulaires dynamiques. J'explique mon problème :
Je possède actuellement un formulaire assez simple : un champs pour le nom, un autre pour le pasword. Ce formulaire permet simplement de s'identifier.
J'ai donc décidé d'utilisé un DynaValidatorActionForm dont j'ai décrit l'implémentation dans struts-config.xml. Jusque là, pas de problème.
J'ai ensuite créé un formulaire tout simple. Vous remarquerez qu"il n'y a pas l'attribut "onsubmit=return validateFormDynaIdent(this)" car pour ce formulaire, je souhaite que le mot de passe soit crypté.<form-bean name="FormDynaIdentBean" type="org.apache.struts.validator.DynaValidatorActionForm">
<form-property name="login" type="java.lang.String" initial="" />
<form-property name="password" type="java.lang.String" initial="" />
</form-bean>
Pour que le mot de passe soit crypter, j'utilise un algorithme de crypter que j'appelle au niveau du javascript. Voici la fonction "envoyer(this)" :<html:form action="/identReponse" styleId="formDynaIdent">
<table>
<tr>
<td>login : </td>
<td><html:text property="login" /></td>
</tr>
<tr>
<td>password : </td>
<td><html:password property="password" /></td>
</tr>
</table>
<table>
<tr>
<td><input type="button" value="Valider" onclick="envoyer(this)" /></td>
</tr>
</table>
</html:form>
La fonction MD5 est là pour crypter le password avant qu'il ne soit envoyer à la servlet de contrôle. Seulement, cela ne fonctionne pas car la fonction "validateFormDynaIdent(form)" n'est pas reconnu.function envoyer(form)
{
form.password.value = MD5(form.password.value);
if(validateFormDynaIdent(form))
{
form.submit();
}//if
}//envoyer
Pouvez-vous m'aider à résoudre ce problème svp ??
Sinon, j'ai lu un topic sur le même forum à propos de la différence entre les 2 type de formulaire : dynamique ou pas. Comme peu de personne ont donnée leur avis, j'aimerais reposé le débat : lequel des deux formulaires est le mieux.
Pour ma part, je trouve le formulaire statique plus contraignant niveau code à produire, mais mieux au niveau de la gestion des erreurs (insérables dans la page JSP avec <html:errors />). Concernant les formulaires dynamiques, selon certains sites, il est dit qu'ils sont plus rapide au niveau de la validation coté client.
Votre avis sur ce point ??
Partager