Question

Si je mets en œuvre Synchronizer Token dans mon application Struts, aurais-je besoin de modifier toutes mes formes d'ajouter une sorte de balise pour le jeton ou est-ce fait automatiquement par des entretoises?

Était-ce utile?

La solution

La méthode de saveToken() d'action génère un jeton et le met dans la portée de la session, puis la balise html:form ajoute le jeton automatiquement à votre page.

Voici un extrait de code du gestionnaire de balises personnalisée html:form:

String token = (String) session.getAttribute(Globals.TRANSACTION_TOKEN_KEY);
if (token != null) {
  results.append("<input type=\"hidden\" name=\"");
  results.append(Constants.TOKEN_KEY);
  results.append("\" value=\"");
  results.append(token);
  if (this.isXhtml()) {
      results.append("\" />");
  } else {
     results.append("\">");
  }
}

Donc, si vous utilisez les balises Struts html:form vous n'avez rien à faire, Struts prendra soin d'ajouter le champ. Si au contraire, vous utilisez des balises de formulaire HTML classique, alors vous devez ajouter le champ par vous-même.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top