Hi,

I'm trying to prepopulate a form for editing it and I can't understand what's wrong.

From a list of objects I want to edit one. I have an action for that:

<action      path="/polizza_mod"
        type="mypackage.PolizzaFormModAction"
        name="polizza_newForm"                
        scope="request"
        input="/gestione/polizza_mod.jsp"                             
        validate="false">
<forward name="OK" path="/gestione/polizza_mod.jsp"/> </action>

^^^^^^^^^^^^^^^^^
polizza_newForm is a DynaActionForm defined in the struts-config.xml

^^^^^^^^^^^^^^^^^
The action is:

import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;

import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.apache.struts.action.Action;
import org.apache.struts.action.ActionForm;
import org.apache.struts.action.ActionForward;
import org.apache.struts.action.ActionMapping;
import org.apache.struts.validator.DynaValidatorForm;

public class PolizzaFormModAction extends Action
{
        public boolean DEBUG = true;    
        
        public ActionForward execute(   ActionMapping mapping,
                                        ActionForm form,                        
                                        HttpServletRequest request,
                                        HttpServletResponse response)
                                        throws Exception
        {
        HttpSession session = request.getSession();                             

        // Here I create the bean
PolizzaBean pb = new PolizzaBean(getDataSource(request, Parameters.NOME_DATA_SOURCE));
        PolizzaDTO p = pb.getPolizza(request.getParameter("id"));

        // SAVE THE OBJECT "polizza" in the session
        session.setAttribute("polizza", p);
        
        ServletContext sc = this.getServlet().getServletContext();
        xferToForm(p,form,sc);
        session.setAttribute("polizzaForm", form);
        return (mapping.findForward("OK"));                   

        }
        
        /**
         * transfer bean data to form
         */
private void xferToForm(PolizzaDTO polizza, ActionForm form, ServletContext sc)
        {
                ((DynaValidatorForm)form).set("nome",polizza.getNome());
        }       
}

^^^^^^^^^^^^^^^^^

Everything works fine but the form
"/gestione/polizza_mod.jsp"
is empty?

Why???

If I try to print on that form the bean polizza_newForm the properties are correct:

<c:out value="${polizza_newForm}" />
gives:

DynaActionForm[dynaClass=polizza_newForm,nome=test]

My form is:
<html:form action="/polizza_new_preview.do">
        <html:text
                name="polizza_newForm"
                property="nome"
                size="25"
                maxlength="25"
                value= ""
        />
<html:submit value="Conferma" styleClass="bottone" />
<html:button value="Elimina" property="Elimina" styleClass="bottone" /> <html:reset value="Annulla" styleClass="bottone" />
</html:form>      

Thanks

LuKe


--
Email.it, the professional e-mail, gratis per te: http://www.email.it/f

Sponsor:
Iscriviti GRATUITAMENTE: ci sono 5 Euro che ti aspettano .e decine di corsi...
* Clicca qui: http://adv.email.it/cgi-bin/foclick.cgi?mid=3416&d=10-7

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to