Struts will not automatically populate fields based on parameters passed via
the URL. Your action will need to implement the ParameterAware interface,
and the setParameters(Map<String, String[]> parameters) method. Then you can
use the map to populate your fields.

Jason

On Mon, Nov 29, 2010 at 5:25 AM, maven apache <apachemav...@gmail.com>wrote:

> 2010/11/29 Maurizio Cucchiara <maurizio.cucchi...@gmail.com>
>
> > Frankly, even after I watched your question on stackoverflow, I can't
> > figure out what you meant.
> >
> :(
>
> > You don't necessary need struts tag, you can pass parameter via http
> > request, so, for example, if you enter
> > http://your_url:your_port
> > /your_struts.action?personBean.firstName=your_name
> >  in the address bar
> >
> Thanks.
>
> I use the http://xxx.action?firstName=name. So it does not work.
>
>
> http://your_url:your_port
> /your_struts.action?personBean.firstName=your_name
>
> I do not know the parameter can be sent this way!!!
> Thanks.
>
>
> > struts will try to inject value inside your bean.
> >
> > Does this answer your question?
> >
> > 2010/11/29 maven apache <apachemav...@gmail.com>:
> > > BTW,this is a cross post at
> > > stackoverflow<
> >
> http://stackoverflow.com/questions/4300409/binding-paramters-in-struts2-without-the-form
> > >
> > > .
> > >
> > > 2010/11/29 maven apache <apachemav...@gmail.com>
> > >
> > >> <s:form action="register">
> > >>
> > >>
> > >>       <s:textfield name="personBean.firstName" label="First name" />
> > >>
> > >>
> > >>       <s:submit/>
> > >> </s:form>
> > >>
> > >> public class Register extends ActionSupport {
> > >>
> > >>
> > >>     private static final long serialVersionUID = 1L;
> > >>
> > >>
> > >>     private Person personBean;
> > >>
> > >>
> > >>         //................
> > >> }
> > >>
> > >>
> > >> Using the s:form tag one can bind the parameter from the client to a
> > java
> > >> object(the personBean in the Register action).
> > >>
> > >> However it seems that the struts tag is required,but my action is not
> > >> called from the web form,so any way?
> > >>
> > >> And I tried this way:
> > >>
> > >> public class ParaWrapper(){
> > >>
> > >>
> > >>   private String firstName;
> > >>
> > >>
> > >>   public void setFirstName(String ..){
> > >>
> > >>
> > >>     this.firstName=...
> > >>
> > >>
> > >>   }
> > >>   //the getter of firstName
> > >>
> > >>
> > >>   public ....
> > >>
> > >> }
> > >>
> > >>
> > >> public MyAction extends ActionSupport{
> > >>
> > >>
> > >>   private ParaWrapper wrapper;
> > >>
> > >>
> > >>   public void setXXX()...
> > >>
> > >>
> > >>   public void getXXX()...
> > >>
> > >>
> > >>   public void execute(){
> > >>
> > >>
> > >>     System.out.println(wrapper.getFirstName()); //here I can not get
> the
> > parameters,it seems that the parameters are not populated to this object.
> > >>
> > >>
> > >>   }
> > >> }
> > >>
> > >> It does not work since struts does not know which object should be
> used
> > to bind the parameter.
> > >>
> > >>
> > >> I wonder there is any way to using this manner?
> > >>
> > >>
> > >
> >
> >
> >
> > --
> > Maurizio Cucchiara
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: user-unsubscr...@struts.apache.org
> > For additional commands, e-mail: user-h...@struts.apache.org
> >
> >
>

Reply via email to