Martin Cooper wrote:
> 
> (1) This would be fine with me. Given that there seem to be as many opinions
> on this subject as people expressing them, perhaps this would be the
> expedient choice for 1.0.
> 
> (2) I don't like this because of the disparity between the number of
> iterations and the size of the collection. The <bean:size> tag becomes
> somewhat less useful.
> 
> (3) I believe this is the best of the "do something" options. It effectively
> documents the issue and provides a simple way of handling it.
> 
> (4) This sounds like a pretty bad idea. :-}
> 
> (5) I really don't like this. It makes me think of Perl's "There's More Than
> One Way To Do It" slogan. IMHO, having more options is not always better.

I was thinking (5) would allow struts to be used as easily as possible
with
an existing middle tier. However, the more I think about (5) the more it
seems
like the options could be misused to implement business logic. This is
definitely
not desired.
I don't like (2) or (3) for the same reason, so I am now leaning towards
(1).

Nick


> 
> --
> Martin Cooper
> 
> ----- Original Message -----
> From: "Nick Pellow" <[EMAIL PROTECTED]>
> To: <[EMAIL PROTECTED]>
> Sent: Sunday, March 04, 2001 7:50 PM
> Subject: Re: Iterating over collections with null values
> 
> >
> >
> > "Craig R. McClanahan" wrote:
> > >
> > > Bugzilla bug report #706 reports that you will get a JSP page exception
> > > when you try to iterate over collection that contains null values.  This
> > > is caused by the fact that the JSP page context refuses to allow null
> > > attributes.  The bug report suggests one alternative (although the
> > > proposed implementation has problems), but I would like to solicit
> > > suggestions and thoughts on what the correct behavior should be.
> > >
> > > Here are the alternatives that I can think of:
> > >
> > > (1)  No change -- document a restriction in the usage notes
> > >      on the <logic:iterate> tag.
> > >
> > > (2)  Silently skip this element of the iteration, with no notice
> > >      to the surrounding page.  The total number of times through
> > >      the loop, from the perspective of the page, will be less than
> > >      the size of the underlying collection.
> > >
> > > (3)  Do not skip this element, but don't add it to the page context
> > >      either.  The page can then use <logic:notPresent> to test for
> > >      whether the item is actually there or not.
> > >
> > > (4)  Do not skip this element, but insert a reference to a dummy
> > >      object instead of the null.  This is likely to cause class cast
> > >      exceptions, and is unlikely to be practical when the iteration
> > >      explicitly includes a "type" attribute.
> > >
> > > (5)  Other alternatives I have not thought of?
> >
> >   (5) Add an attribute(s) on the iterate tag that allows the user to
> > decide between (1), (2) and (3). Defaulting to (1).
> >
> > >
> > > All of the listed alternatives have their problems, but I am currently
> > > leaning towards (1).  Comments?  Suggestions?
> > >
> > > Craig McClanahan

Reply via email to