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 > > > > >