Disclaimer: I'm fairly new to Struts2, so I may me wrong. But:

I feel the behaviour of checkbox tag lacking. I dont think there is a
straighforward way to do a common web-application case: a form with a
dynamic list of N "records" (rows), each of which can be selected by
the user by a checkbox. (Example: a webmail). The UI checkbox tag of
struts does not seem to cope well with this.

I know of checkboxlist; but this does not seem the right answer.
checkboxlist is thought as a macro-input component, very similar to a
select box with multiple selection. That is, its idea is one checkbox
tag instance which loops over all the N set of selections. I know
there are some twists to adapt it to my situation (N instances of the
checkboxlist tag, each of which has a list of only one element). This
can be worked, but I feel it hacky/dirty, and has some limitations
(BTW: I found the checkboxlist tag somewhat impredecible; the valueKey
and valueList work inconsistently, the label is used even with the
simple theme, etc).

For my situacion, I believe, one should be able to use the checkbox
tag (after all, one is trying to output one checkbox , not a list).
And the original html specification copes ok with this, and it has
been done for ages in web programming. In fact, the present struts
implementation of the checkbox tag severly limits the usefullnes of
the "fieldvalue" attribute: practically only the "true" and "false"
values seems to be expected.

My question/proposal: the checkbox UI tag should accept (and expect)
to be backed (via the "name" attribute) not only to a Boolean field,
but also to a Collection. In this case, the parameter interceptor
would work similarly than for a multiple-select: add the value to the
collection, and check for its existence.
Is there some catch for this not being implemented in that way?


Hernán J. González
http://hjg.com.ar/

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

Reply via email to