Correction to the two BeanUtils calls, it should be:
    String sort = BeanUtils.getProperty(form,"sort");
    String order = BeanUtils.getPropety(form, "order");

But in either case it would yield the same result :-)
Chris

----- Original Message -----
From: "Chris Cranford" <[EMAIL PROTECTED]>
To: "Struts Users Mailing List" <[EMAIL PROTECTED]>
Sent: Wednesday, June 16, 2004 7:25 PM
Subject: Re: The Same Action With and Without a Form


> Hmm, checkin' something here :-)
>
> I defined a form just like the following form is defined below.  I then
> defined an action mapping as follows:
>
> <action
>     path="/searchtest"
>     type="com.setech.test.ChrisTestAction"
>     scope="request"
>     name="mySearchForm">
>     <forward name="success" path="/pages/cctest.jsp" />
> </action>
>
> Then in my ChrisTestAction executeAction function, I did the following:
>
>     String sort = BeanUtils.getSimpleProperty(form,"sort");
>     String order = BeanUtils.getSimpleProperty(form, "order");
>
>     Log log = LogFactory.getLog(ChrisTestAction.class);
>     if(log.isDebugEnabled()) log.debug("sort="+sort+",order="+order);
>
> I checked my tomcat output and both values were in fact populated.
>
> Then in my JSP, I can use javascript to alter 2 hidden fields that
represent
> the sort/order values when a user clicks on an icon or column header and
> then submit the form again to the action to handle updating the view based
> on the new sort/order values.  Alternatively, I could build the URL for
each
> link/image dynamically like:
>
> /searchtest.do?sort=X&order=Y
>
> but /searchtest.do does imply setting sort=postDate and order=DESC if
> they're not supplied by the request to the action :-)...
>
> How does your struts-config.xml look?  What about your JSP ?
>
> ----- Original Message -----
> From: "Caroline Jen" <[EMAIL PROTECTED]>
> To: "Struts Users Mailing List" <[EMAIL PROTECTED]>
> Sent: Wednesday, June 16, 2004 5:58 PM
> Subject: RE: The Same Action With and Without a Form
>
>
> > The property of the 'initial' attribute inside the
> > <form-property ....> tag (i.e. initial="postDate")
> > does not seem to become the default value.  The query
> > method (with sort and order among the parameters) that
> > retrieve articles from the database got the
> > NullPointerException.
> >
> > I know the query method works well because there is no
> > problem when I perform the action with a form.
> >
> > -Caroline
> >
> > --- "CRANFORD, CHRIS" <[EMAIL PROTECTED]>
> > wrote:
> > > Define your form in struts-config.xml like:
> > >
> > > <form-bean
> > >   name="mySearchForm"
> > >   type="org.apache.struts.action.DynaActionForm">
> > >   <form-property
> > >     name="sort"
> > >     initial="postDate"
> > >     type="java.lang.String"/>
> > >   <form-property
> > >     name="order"
> > >     initial="DESC"
> > >     type="java.lang.String"/>
> > >   .. Other properties here
> > > </form-bean>
> > >
> > > Then define your action mapping to use this
> > > formbean.  When your form posts,
> > > it will assume the default values for sort/order if
> > > they not present in the
> > > request.  If they're present in the HttpRequest
> > > object, then the form is
> > > populated with whatever values are coming from the
> > > request.
> > >
> > > Hope this helps.
> > > Chris
> > >
> > > -----Original Message-----
> > > From: Caroline Jen [mailto:[EMAIL PROTECTED]
> > > Sent: Wednesday, June 16, 2004 12:40 PM
> > > To: [EMAIL PROTECTED]
> > > Subject: The Same Action With and Without a Form
> > >
> > >
> > > I have a "list" of articles to be retrieved from the
> > > database and displayed.
> > >
> > > The first time I display the list, I simply sort the
> > > list by posting date and descending order (without
> > > providing a form) when I query the database.
> > >
> > > Thereafter, users are offered opportunities on top
> > > of
> > > the table of the list to choose 'sort' criteria from
> > > a
> > > drop down menu and to choose 'order', which is
> > > either
> > > ascending or descending, with a GO button.  That is
> > > to
> > > say, the same action (ListArticles) is called with a
> > > 'form' consisting of two menus.
> > >
> > > In my Java class that extends Action, I did the
> > > following:
> > >
> > >      String sort  = request.getParameter( "sort" );
> > >      String order = request.getParameter( "order" );
> > >      if ( sort.length() == 0 ) sort = "PostDate";
> > >      if ( order.length()== 0 ) order = "DESC";
> > >
> > > I do not know how to handle the name attribute of
> > > the
> > > <action .... /> tag in the struts-config.xml.
> > >
> > > Those are the same action.  There is actually an
> > > empty
> > > form the first time the action is called.  And there
> > > is a form consisting of two menus the second time
> > > the
> > > action is called.
> > >
> > > I need your instructions and help.
> > >
> > >
> > >
> > > __________________________________
> > > Do you Yahoo!?
> > > Yahoo! Mail - Helps protect you from nasty viruses.
> > > http://promotions.yahoo.com/new_mail
> > >
> > >
> > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > > [EMAIL PROTECTED]
> > > For additional commands, e-mail:
> > > [EMAIL PROTECTED]
> > >
> > >
> > >
> > ---------------------------------------------------------------------
> > > To unsubscribe, e-mail:
> > > [EMAIL PROTECTED]
> > > For additional commands, e-mail:
> > > [EMAIL PROTECTED]
> > >
> > >
> >
> >
> >
> >
> > __________________________________
> > Do you Yahoo!?
> > New and Improved Yahoo! Mail - Send 10MB messages!
> > http://promotions.yahoo.com/new_mail
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> > For additional commands, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>



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

Reply via email to