On Friday, March 29, 2002, 11:19:25 AM, Maturo, Larry wrote:

ML> We define a separate bean that mirrors our
ML> EmployeeBean, but has string fields.  We then
ML> get a list of EmployeeBeans and manually convert
ML> them to a list of EmployeeStringBeans. :-)  It's
ML> a pain, but it works.  Note that we only populate
ML> the fields we actually plan on displaying, since
ML> it is pointless to populate the other fields.

    Thanks for your feedback Larry. (By the way nice job on that
    AthensGroup paper on Struts if you wrote it).

    Currently I already have an EmployeeForm bean (all String fields)
    and an EmployeeBean (Strings, ints, etc.). The business tier does
    the DB query and returns an ArrayList of EmployeeBeans. Now the
    question becomes what next in order to iterate through this list
    and display the EmployeeBean fields in a nice way (ie. proper date
    format, currency format, etc.) ?...

    I'm assuming from your reply that you might have extra logic
    somewhere that will take that ArrayList of EmployeeBeans and loop
    through the list and populate a new List of EmployeeForm beans. In
    this step calls will be made to make sure the Strings in each
    EmployeeForm object are correctly formatted. I see how this idea
    will work, although it seems a shame that you have a perfectly
    good ArrayList of Employee objects and now you are iterating
    through it just to populate another ArrayList of Employee objects
    with all String fields.

    Before I looked into Struts I didn't see the big deal of iterating
    though this list of regular EmployeeBean objects and then where
    formatting was needed just call my helper util class to change the
    format. For example:
    <%= RickUtils.displayDateAsString( bean.getBirthDate() ) %>

    I know, everyone says the above it bad because you now have
    scriplets in your JSP code. Still, though, this seems to make more
    sense to me than to going through the overhead of looping through
    possibly a large ArrayList of beans in order to just populate a
    similar ArrayList with just String fields. I suppose I will go
    the later route in order to maintain the Struts architecture of
    perfectly clean JSP pages.

    Being new to struts and new to using tags, would it be that
    difficult to create a tag that when passed a double it new to spit
    out a display in some currency format or if it received a Date it
    would display it in the proper format. I noticed there is a tag
    library out there for display dates, but ideally I would like one
    tag that would just pick up the datatype and "if datatype is
    double" display this way, if Date display this way."

    Does a tag library like the above already exist?

    Thanks again for your feedback. I'm posting this to the list as
    well for any other ideas.


    
ML> There is a utility in Struts to help with this, but
ML> I have never used it, since it always seemed like
ML> learning to use it was more work than doing it
ML> manually.

ML> -- Larry Maturo
ML>    [EMAIL PROTECTED]


ML> -----Original Message-----
ML> From: Rick Reumann [mailto:[EMAIL PROTECTED]]
ML> Sent: Thursday, March 28, 2002 9:09 PM
ML> To: Struts Users Mailing List
ML> Subject: This hopefully is a simple question that has been dealt with


ML> Sorry to post this question again, but I'm still curious about this
ML> ...

ML> I'm sure this question has come up but I'm not having much luck
ML> searching the archives. I'm really new to Struts so I hope this
ML> question isn't too out of place for this list. Lets say we are dealing
ML> with Employee beans. I would my EmployeeBean to be able to have
ML> members that are not all Strings. (In this example say Age would be an
ML> int, birthDate a java.util.Date, etc.). Now in the sample app I'm
ML> developing I have an EmployeeForm class also that currently has just
ML> String datatypes for these fields. Having the information from the
ML> actual form jsp's going to the EmployeeForm in as all Strings without
ML> any conversions is not that big of a deal since wherever I do anything
ML> with this data (jdbc inserts in the business logic I could always
ML> covert them there if I need to ). However, I'm more concerned with
ML> getting this information displayed correctly using the iterate tag.
ML> For example, say I have on an Action class that gets back and
ML> ArrayList of EmployeeBean objects and puts this list into the request
ML> before forwarding. I really can't do:

ML> <logic:iterate id="row" name="employeeList">
ML>     <bean:write name="row" property="firstName"/><BR>
ML>     <bean:write name="row" property="lastName"/><BR>
ML>     <bean:write name="row" property="age"/><BR>
ML>     <bean:write name="row" property="birthDate"/><BR>
ML>     <BR>
ML> </logic:iterate>

ML> since I won't have birthDate formatted correctly, or say I was
ML> returning a Double that I needed in a currency format. What is the
ML> best way to deal with this situation? I could of course maybe have my
ML> business logic return me a Collection of EmployeeForm beans instead
ML> and inside the EmployeeForm beans there would be methods like
ML> setBirthDateDate( Date date ) that would take a java.util.Date and
ML> format it into a String and then call the EmployeeForm setBrithDate(
ML> String date ). Although that would work, I'd still rather deal with
ML> the business logic that returns a Collection of EmployeeBeans... as
ML> this seems to make the most reusable sense (maybe the components later
ML> won't just be for the web).

ML> Thanks for any help.


ML> --

ML> Rick

ML> mailto:[EMAIL PROTECTED]

ML> "Why do people in ship mutinies always ask for 'better treatment'? I'd
ML> ask for a pinball machine, because with all that rocking back and
ML> forth you'd probably be able to get a lot of free games."
ML>   -Jack Handey


ML> --
ML> To unsubscribe, e-mail:
ML> <mailto:[EMAIL PROTECTED]>
ML> For additional commands, e-mail:
ML> <mailto:[EMAIL PROTECTED]>




--

Rick

mailto:[EMAIL PROTECTED]

"Sometimes you have to be careful when selecting a new name for
yourself. For instance, let's say you have chosen the nickname 'Fly
Head. Normally you would think that 'fly Head' would mean a person who
has beautiful swept-back features, as if flying through the air. But
think again. Couldn't it also mean 'having a head like a fly'? I'm
afraid some people might actually think that."
  -Jack Handey


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

Reply via email to