2009-10-15 5 views
0

J'ai une action Struts qui remplit un champ.Comment accéder à Struts Formulaire de propriétés DynaValidatorForm JSP

public ActionForward appForm(ActionMapping mapping, 
      ActionForm  form, 
      HttpServletRequest request, 
      HttpServletResponse response) { 
    DynaValidatorForm dyna = (DynaValidatorForm) form; 
    String identifier = (String) request.getParameter("id"); 
    ApplicationDTO app = manager.getApplication(identifier); 
    dyna.set("firstName",app.getFirstName()); 
    return (mapping.findForward("application.success"));  
} 

La fève de forme ressemble à:

<form-bean name="ApplicationForm" type="struts.ApplicationForm">  
    <form-property name="id" type="java.lang.String" initial="0" /> 
    <form-property name="firstName" type="java.lang.String" /> 
    ... 
    .. 
    . 
</form-bean> 

ApplicationForm étend DynaValidatorForm et il fait un peu de validation.

Comment puis-je accéder à une valeur de propriété de forme struts dans mon jsp.

<html:text property="firstName" styleId="firstName" value="TODO Add code to access the form property fistName END TODO"/> 

SOLUTION

utilisateur le nom attribut dans le html: text tag. L'attribut name spécifie le nom d'un objet (dans n'importe quelle portée) dont le champ, spécifié par l'attribut de propriété, sera utilisé pour remplir ce contrôle avec des données. Exemple:

<html:text property="firstName" styleId="firstName" name="ApplicationForm"/> 

Répondre

0

Voici une autre façon d'accéder à des propriétés dans les haricots Dynamic ActionForm si vous voulez une sortie de texte brut:

<bean:write name="ApplicationForm" property="firstName"/>