My aproach is as follows:

Each form bean property which can be searched is a descendant of
SearchableProperty. A SearchableProperty consists of:

*A String value representing the user's input
*The selected business entity (if the user has selected one)
*An object descended from Lookup, which implements the associated search
functionality

I have a base form & dispatch action. 

The base action contains methods which are called to show the search screen;
do a search ;use a searched value etc.

The base form contains hidden fields, populated via javascript, which tell
the dispatch action which property the search function is being invoked for,
and other 'paramaters' such as the id of a selected record.

The view of my application uses the struts nested tags, and JSP includes to
provide reuseable components to render a SearchableProperty and it's
associated search view. The search view is part of the same page - the app
only ever uses one browser window, with no frames.

The upside of this approach is that I can place, with little effort,
sophisticated searching functions anywhere is the app. Due to the inclusion
of the user selected business entity behind the scenes, my view can display
any properties of the selected entity, without a change to the form bean.

The downside of this is that the form bean must be stored in session scope.
I have done a bit of load testing and it didn't seem to be a problem, but I
didn't have much to compare with - this is my first Struts app.

So, that's the approach I use. I've no idea how that compares to the best
practices out there, nut I'm eager to find out!

Paul

-----Original Message-----
From: Chawla, Yogesh [mailto:[EMAIL PROTECTED]
Sent: 26 September 2003 08:19
To: 'Struts Users Mailing List'
Subject: Struts Design Issue - Search Functionality - Best Practices
Importance: High


Hi,

Design Requirement - Show a list of Search records. The screen will have
buttons for Previous/Next Month. On clicking these records would be shown.

Issues - 

a) How to store data and best practices to be followed in Struts. Return
back a Collection of Form Beans and iterate over these. However certain
other fields are required to be stored also which are not displayable. i.e.
Current Date which is a hidden parameter. Any comments ?

b) Use a single Form Bean which has variables like String[] to store the
array of Displayable Fields. However, this seems to be a less than perfect
solution. Any comments ???

c) Use Generic Search - Search on different modules, with different fields ?
Any Brilliant Guru contributions for this one..Sure need some wizard out
here...

Pls. advise on the best approach for the Search functionality. We need to
design an application which has Search on each and every page.

Thanks for your time ,

Regards,

Yogesh
DISCLAIMER: The information in this message is confidential and may be
legally privileged. It is intended solely for the addressee.  Access to this
message by anyone else is unauthorised.  If you are not the intended
recipient, any disclosure, copying, or distribution of the message, or any
action or omission taken by you in reliance on it, is prohibited and may be
unlawful.  Please immediately contact the sender if you have received this
message in error. Thank you.

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


**************************************
Axios Email Confidentiality Footer
Privileged/Confidential Information may be contained in this message. If you are not 
the addressee indicated in this message (or responsible for delivery of the message to 
such person), you may not copy or deliver this message to anyone. In such case, you 
should destroy this message, and notify us immediately. If you or your employer does 
not consent to Internet email messages of this kind, please advise us immediately. 
Opinions, conclusions and other information expressed in this message are not given or 
endorsed by my Company or employer unless otherwise indicated by an authorised 
representative independent of this message.
WARNING:
While Axios Systems Ltd takes steps to prevent computer viruses from being transmitted 
via electronic mail attachments we cannot guarantee that attachments do not contain 
computer virus code.  You are therefore strongly advised to undertake anti virus 
checks prior to accessing the attachment to this electronic mail.  Axios Systems Ltd 
grants no warranties regarding performance use or quality of any attachment and 
undertakes no liability for loss or damage howsoever caused.


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

Reply via email to