My only good advice is "if it works - use it". ;-)

Matt

On 9/17/07, arief <[EMAIL PROTECTED]> wrote:
>
> Sorry Matt,
>
> I guessed i had done a copy-paste on that post. In the code i did used your
> suggested code.
> I have done some experiment on this..
>
> My Model contains:
> private Long hostelSessionId;
> private String residenceNo;
>
> // with setters & getters
>
> By ommiting the form:option, the screen can be loaded and the dropdown able
> to pre-select existing value behind the model.
> <form:select path="hostelSessionId">
>   <form:options items="${sessionList}" itemValue="value" itemLabel="label"/>
> </form:select>
>
> Same result with form:select only
> <form:select path="hostelSessionId" items="${sessionList}" itemValue="value"
> itemLabel="label">
> </form:select>
>
> However, if i add form:option between the form:select. The screen is not
> loaded at all, even though from the log, i can see that my backingObject
> contains value for that particular attribute.
>
> After that, i tried using attribute type String to hold the Long value
> (after converting to string)
> <form:select path="residenceNo">
>   <form:option value="-" label="--Please Select Session--"/>
>   <form:options items="${sessionList}" itemValue="value" itemLabel="label"/>
> </form:select>
>
> And it works like nothing went wrong :confused:.
>
> Until i realized that my form:option default value is "-" which i think the
> initBinder will not be able to recognize or to parse this, since my
> hostelSessionId is Long type. Thus, by replacing it with empty or "0".. my
> original form:select is working fine finally.. =^D
>
> <form:select path="hostelSessionId">
>   <form:option value="0" label="--Please Select Session--"/>
>   <form:options items="${sessionList}" itemValue="value" itemLabel="label"/>
> </form:select>
>
> So, does my theory on this is correct? Any good advice?
> Thanks
>
>
>
>
> mraible wrote:
> >
> > You might try:
> >
> > <form:options items="${hostelSessionList}" itemValue="value"
> > itemLabel="label"/>
> >
> > Matt
> >
> > On 9/16/07, arief <[EMAIL PROTECTED]> wrote:
> >>
> >> Hi Guys,
> >>
> >> I'm having similar problem (I guess) but not sure what went wrong.
> >> I'm using:
> >> - Appfuse 2.0 RC1 with basic Spring MVC
> >> - iBatis
> >>
> >> I tried using form:select where the path for form:select is the command's
> >> setter/getter and with it i'm using
> >> form:option (for displaying "Please select xxx") and form:options where
> >> all
> >> the dropdown list will come in. The list is made of appfuse's LabelValue
> >> class.The list came from referenceData.
> >>
> >> <form:select path="hostelSessionId">
> >>  <form:option some stuff here>
> >>  <form:options items="${hostelSessionList}" itemValue="id"
> >> itemLabel="name"/>
> >> </form:select>
> >>
> >> What happen whas.. the screen is not rendered at all. I got a blank
> >> screen
> >> when using this. But if replace the form:select&form:option with
> >> something
> >> else like form:input, i immediately can see the value coming from my
> >> backingObject being displayed.
> >>
> >> So, I guess my model does have data when it passed to the screen. But i
> >> wonder why form:select wont work.
> >> Any idea?
> >>
> >>
> >> Mike Horwitz wrote:
> >> >
> >> > On 8/7/07, syg6 <[EMAIL PROTECTED]> wrote:
> >> >>
> >> >>
> >> >> Thanks for the explanation, that cleared up a lot of questions I had.
> >> >> Have
> >> >> you ever considered writing your own documentation / book on Spring or
> >> >> Spring MVC? You'd be doing us all a favor!
> >> >
> >> >
> >> > Pleasure. Good news on the book front, it's already been done, although
> >> > not
> >> > by me! There is a list here: http://www.appfuse.org/display/APF/Spring
> >> >
> >> > In the end it worked with the code Absolut posted. The only glitch was
> >> > when
> >> >> I have a new PackageInspection it was choking saying my Inspector
> >> object
> >> >> was
> >> >> null. This was because I didn't initialize the
> >> >> PackageInspection.Inspector
> >> >> object in my constructor. Once I did that, all was well.
> >> >
> >> >
> >> > O.K.! As long as it works... ;-)
> >> >
> >> > For the moment it seems I do not need to create a Custom Property
> >> Editor;
> >> >> all CRUD operations are working a-ok. But something tells me I'll need
> >> to
> >> >> use them at some point (not really clear on what they do) so I'll have
> >> to
> >> >> look into it ...
> >> >>
> >> >> Many thanks for the timely help!
> >> >> Bob
> >> >>
> >> >>
> >> >> Michael Horwitz wrote:
> >> >> >
> >> >> > The select list tag needs several elements to work:
> >> >> >
> >> >> > 1) A collection of objects to populate the list (items)
> >> >> > 2) A property on each object in the collection used to populate the
> >> >> > corresponding option label (itemLabel)
> >> >> > 3) A property on each object in the collection used to populate the
> >> >> > corresponding option value (itemValue)
> >> >> > 3) The value currently set on your command object so that the
> >> >> appropriate
> >> >> > element in the collection can be marked as 'selected' (path).
> >> >> >
> >> >> > So the path performs two functions: it sets the name of the input,
> >> and
> >> >> it
> >> >> > tells the form which option in the select list should be marked as
> >> >> > 'selected'.
> >> >> >
> >> >> > Also worth noting, if you have not done so already, that you will
> >> most
> >> >> > likely need to register a custom property editor to handle your
> >> >> inspector
> >> >> > class (assuming the inspector is a class.....).
> >> >> >
> >> >> > Mike.
> >> >> >
> >> >> > On 8/6/07, syg6 <[EMAIL PROTECTED]> wrote:
> >> >> >>
> >> >> >>
> >> >> >> Excellent! That's the piece I was missing! I didn't know what to
> >> put
> >> >> for
> >> >> >> the
> >> >> >> path. I still don't think it's very intuitive. I thought path
> >> referred
> >> >> to
> >> >> >> a
> >> >> >> getter in your command object. Which I thought was quite limiting
> >> as
> >> >> you
> >> >> >> wouldn't be able to use it for other objects in the request. But
> >> now I
> >> >> >> see
> >> >> >> it can work with any old object. But I am curious why 'country.id'
> >> is
> >> >> >> used
> >> >> >> as the path. Is the path nothing more than the name of the form
> >> input
> >> >> id
> >> >> >> you
> >> >> >> send to the server when you submit?
> >> >> >>
> >> >> >> At any rate, I'll try it first thing in the morning at work.
> >> >> >>
> >> >> >> Many thanks!
> >> >> >>
> >> >> >> Bob
> >> >> >>
> >> >> >>
> >> >> >>
> >> >> >> Absolut wrote:
> >> >> >> >
> >> >> >> > It is possible to write a list of objects to the request in order
> >> to
> >> >> >> use
> >> >> >> > this values to populate a drop down.
> >> >> >> >
> >> >> >> > Here a short example code:
> >> >> >> >
> >> >> >> > SpringController:
> >> >> >> >       ....
> >> >> >> >       @Override
> >> >> >> >       protected Map referenceData(HttpServletRequest request)
> >> throws
> >> >> >> > Exception {
> >> >> >> >               Map<String, Object> model = new HashMap<String,
> >> >> >> Object>();
> >> >> >> >               model.put("countryList",
> >> countryManager.getCountries
> >> >> ());
> >> >> >> >               return model;
> >> >> >> >       }
> >> >> >> >       ....
> >> >> >> >
> >> >> >> > JSP:
> >> >> >> > <form:select path="country.id">
> >> >> >> >    <form:options items="${countryList}" itemValue="id"
> >> >> >> itemLabel="name"/>
> >> >> >> > </form:select>
> >> >> >> >
> >> >> >> > Bye,
> >> >> >> >
> >> >> >> > Peter
> >> >> >> >
> >> >> >> >
> >> >> >> > -----Ursprüngliche Nachricht-----
> >> >> >> > Von: syg6 [mailto:[EMAIL PROTECTED]
> >> >> >> > Gesendet: Montag, 6. August 2007 15:07
> >> >> >> > An: [email protected]
> >> >> >> > Betreff: Re: [appfuse-user] AW: AW: Can I use form:select with
> >> data
> >> >> >> bound
> >> >> >> > using referenceDate()
> >> >> >> >
> >> >> >> >
> >> >> >> > Yes, I see that the problem is with the 'path' attribute.
> >> >> >> >
> >> >> >> > The problem is that I want to use the form:select tag with an
> >> object
> >> >> in
> >> >> >> > the
> >> >> >> > request, not my command object. Overriding the referenceData()
> >> >> method
> >> >> >> > causes
> >> >> >> > Spring to stick whatever data you load there in the request (I
> >> think
> >> >> >> ...).
> >> >> >> > It's that data that I want to use to populate my select.
> >> >> >> >
> >> >> >> > It is rightly not a part of the command object, but rather data
> >> from
> >> >> >> which
> >> >> >> > I
> >> >> >> > choose an Inspector. And that Inspector is assigned to my command
> >> >> >> object
> >> >> >> > when I submit.
> >> >> >> >
> >> >> >> > I am not opposed to using spring:bind, I just thought I could
> >> >> somehow
> >> >> >> tell
> >> >> >> > the form:select tag, 'oy! don't use the command object, use the
> >> >> >> request!'
> >> >> >> >
> >> >> >> > But I guess not ...
> >> >> >> >
> >> >> >> > Bob
> >> >> >> >
> >> >> >> >
> >> >> >> > Absolut wrote:
> >> >> >> >>
> >> >> >> >> It is possible to use a collection of objects generated in the
> >> >> >> >> referenceData method, I don't think that this the problem in
> >> your
> >> >> >> >> code.
> >> >> >> >> I think that you have a wrong value in your "path" attribute:
> >> >> >> >>
> >> >> >> >> If your command object has a setter called "setInspector(String
> >> >> >> >> inspector)", your form tag would look like <form:select
> >> >> >> >> path="inspector"
> >> >> >> >> items="${inspectors}"  itemLabel="name" itemValue="id"/>
> >> >> >> >>
> >> >> >> >> Please take a close look at the "path" notation:
> >> >> >> >> The value must be the same as the corresponding setter / getter
> >> in
> >> >> >> >> your command object (...setInspector(...) / getInspector(...)->
> >> >> >> >> path="inspector"). In your example (1. mail), the value is
> >> >> >> >> "...path="inspectors"....". Maybe the "s" is wrong there...
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> Bye,
> >> >> >> >>
> >> >> >> >> Peter
> >> >> >> >>
> >> >> >> >> PS: The error message corresponds to the "path" attribute, not
> >> to
> >> >> one
> >> >> >> >> of the other attributes (items, itemValue od itemLabel):
> >> >> >> >>>>Invalid property 'inspectors' of bean class
> >> >> >> >> [com.mycompany.myapp.model.PackageInspection]: Bean property
> >> >> >> >> >'inspectors'
> >> >> >> >> is not readable or has an invalid getter method
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> -----Ursprüngliche Nachricht-----
> >> >> >> >> Von: syg6 [mailto:[EMAIL PROTECTED]
> >> >> >> >> Gesendet: Montag, 6. August 2007 14:49
> >> >> >> >> An: [email protected]
> >> >> >> >> Betreff: Re: [appfuse-user] AW: Can I use form:select with data
> >> >> bound
> >> >> >> >> using
> >> >> >> >> referenceDate()
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> Hi Peter, thanks for the response,
> >> >> >> >>
> >> >> >> >> I read the reference guide already and unfortunately it only has
> >> >> one
> >> >> >> >> example, when your command object has a getter for the reference
> >> >> data
> >> >> >> >> you want to use to populate a Select. I don't have this option
> >> >> because
> >> >> >> >> my command object, PackageInspection, has exactly one Inspector,
> >> >> not
> >> >> a
> >> >> >> >> list of Inspectors.
> >> >> >> >>
> >> >> >> >> I would think this is a pretty normal thing to want to do, but
> >> it
> >> >> >> >> looks as if the form:select tag only works with objects within
> >> the
> >> >> >> >> command
> >> >> >> > object.
> >> >> >> >>
> >> >> >> >> Am I wrong about this?
> >> >> >> >>
> >> >> >> >> Cheers,
> >> >> >> >> Bob
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> Absolut wrote:
> >> >> >> >>>
> >> >> >> >>> Hi Bob!
> >> >> >> >>>
> >> >> >> >>> I think the problem is the part ... path="inspectors"... It
> >> seems
> >> >> >> >>> that your command object of the type "PackageInspection" has no
> >> >> >> >>> property "inspectors"
> >> >> >> >>> (or no method "getInspectors()")
> >> >> >> >>>
> >> >> >> >>> There are many ohter possibilities how to generate an "select"
> >> tag
> >> >> >> >>> with the new Spring Taglib.
> >> >> >> >>> For more details i would recomend to read
> >> >> >> >>> "
> >> >> http://static.springframework.org/spring/docs/2.0.x/reference/mvc.ht
> >> >> >> >>> m
> >> >> >> >>> l#mvc-
> >> >> >> >>> formtaglib"
> >> >> >> >>>
> >> >> >> >>> Bye,
> >> >> >> >>>
> >> >> >> >>> Peter
> >> >> >> >>>
> >> >> >> >>> -----Ursprüngliche Nachricht-----
> >> >> >> >>> Von: syg6 [mailto:[EMAIL PROTECTED]
> >> >> >> >>> Gesendet: Montag, 6. August 2007 14:34
> >> >> >> >>> An: [email protected]
> >> >> >> >>> Betreff: [appfuse-user] Can I use form:select with data bound
> >> >> using
> >> >> >> >>> referenceDate()
> >> >> >> >>>
> >> >> >> >>>
> >> >> >> >>> All the posts I see, here on the AppFuse mailing list and all
> >> over
> >> >> >> >>> the net, use the old spring:bind tag. Can I use the Spring 2.0
> >> >> >> >>> form:select tag?
> >> >> >> >>>
> >> >> >> >>> I have implemented referenceData() in my XxFormController
> >> class,
> >> >> and
> >> >> >> >>> add a Map of Inspectors to the Model. But in the jsp, the
> >> >> following
> >> >> >> >>> code:
> >> >> >> >>>
> >> >> >> >>> <form:select  path="inspectors"
> >> >> >> items="${inspectors}"  itemLabel="name"
> >> >> >> >>> itemValue="id"/>
> >> >> >> >>>
> >> >> >> >>> gives me this:
> >> >> >> >>>
> >> >> >> >>>>Invalid property 'inspectors' of bean class
> >> >> >> >>> [com.mycompany.myapp.model.PackageInspection]: Bean property
> >> >> >> >>> >'inspectors'
> >> >> >> >>> is not readable or has an invalid getter method
> >> >> >> >>>
> >> >> >> >>> Ostensibly this is because Inspectors is not part of the
> >> 'command'
> >> >> >> >>> class, PackageInspection, but rather a list of Inspectors added
> >> to
> >> >> >> >>> the request via
> >> >> >> >>> referenceData() to populate a Select.
> >> >> >> >>>
> >> >> >> >>> Can I use the select tag or do I have to use the old bind tag?
> >> >> >> >>>
> >> >> >> >>> Thanks,
> >> >> >> >>> Bob
> >> >> >> >>> --
> >> >> >> >>> View this message in context:
> >> >> >> >>>
> >> >> http://www.nabble.com/Can-I-use-form%3Aselect-with-data-bound-using-r
> >> >> >> >>> e
> >> >> >> >>> ferenc
> >> >> >> >>> eDate%28%29-tf4223839s2369.html#a12015409
> >> >> >> >>> Sent from the AppFuse - User mailing list archive at
> >> Nabble.com.
> >> >> >> >>>
> >> >> >> >>>
> >> >> ---------------------------------------------------------------------
> >> >> >> >>> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> >>> For additional commands, e-mail:
> >> [EMAIL PROTECTED]
> >> >> >> >>>
> >> >> >> >>> No virus found in this incoming message.
> >> >> >> >>> Checked by AVG Free Edition.
> >> >> >> >>> Version: 7.5.476 / Virus Database: 269.11.6/938 - Release Date:
> >> >> >> >>> 05.08.2007
> >> >> >> >>> 16:16
> >> >> >> >>>
> >> >> >> >>>
> >> >> >> >>> No virus found in this outgoing message.
> >> >> >> >>> Checked by AVG Free Edition.
> >> >> >> >>> Version: 7.5.476 / Virus Database: 269.11.6/938 - Release Date:
> >> >> >> >>> 05.08.2007
> >> >> >> >>> 16:16
> >> >> >> >>>
> >> >> >> >>>
> >> >> >> >>>
> >> >> ---------------------------------------------------------------------
> >> >> >> >>> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> >>> For additional commands, e-mail:
> >> [EMAIL PROTECTED]
> >> >> >> >>>
> >> >> >> >>>
> >> >> >> >>>
> >> >> >> >>
> >> >> >> >> --
> >> >> >> >> View this message in context:
> >> >> >> >>
> >> >> http://www.nabble.com/Can-I-use-form%3Aselect-with-data-bound-using-re
> >> >> >> >> ferenc
> >> >> >> >> eDate%28%29-tf4223839s2369.html#a12015604
> >> >> >> >> Sent from the AppFuse - User mailing list archive at Nabble.com.
> >> >> >> >>
> >> >> >> >>
> >> >> ---------------------------------------------------------------------
> >> >> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> >> >> >>
> >> >> >> >> No virus found in this incoming message.
> >> >> >> >> Checked by AVG Free Edition.
> >> >> >> >> Version: 7.5.476 / Virus Database: 269.11.6/938 - Release Date:
> >> >> >> >> 05.08.2007
> >> >> >> >> 16:16
> >> >> >> >>
> >> >> >> >>
> >> >> >> >> No virus found in this outgoing message.
> >> >> >> >> Checked by AVG Free Edition.
> >> >> >> >> Version: 7.5.476 / Virus Database: 269.11.6/938 - Release Date:
> >> >> >> >> 05.08.2007
> >> >> >> >> 16:16
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> ---------------------------------------------------------------------
> >> >> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> >> >> >>
> >> >> >> >>
> >> >> >> >>
> >> >> >> >
> >> >> >> > --
> >> >> >> > View this message in context:
> >> >> >> >
> >> >> >>
> >> >>
> >> http://www.nabble.com/Can-I-use-form%3Aselect-with-data-bound-using-referenc
> >> >> >> > eDate%28%29-tf4223839s2369.html#a12015922
> >> >> >> > Sent from the AppFuse - User mailing list archive at Nabble.com.
> >> >> >> >
> >> >> >> >
> >> >> ---------------------------------------------------------------------
> >> >> >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> > For additional commands, e-mail: [EMAIL PROTECTED]
> >> >> >> >
> >> >> >> > No virus found in this incoming message.
> >> >> >> > Checked by AVG Free Edition.
> >> >> >> > Version: 7.5.476 / Virus Database: 269.11.6/938 - Release Date:
> >> >> >> 05.08.2007
> >> >> >> > 16:16
> >> >> >> >
> >> >> >> >
> >> >> >> > No virus found in this outgoing message.
> >> >> >> > Checked by AVG Free Edition.
> >> >> >> > Version: 7.5.476 / Virus Database: 269.11.6/938 - Release Date:
> >> >> >> 05.08.2007
> >> >> >> > 16:16
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> ---------------------------------------------------------------------
> >> >> >> > To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> > For additional commands, e-mail: [EMAIL PROTECTED]
> >> >> >> >
> >> >> >> >
> >> >> >> >
> >> >> >>
> >> >> >> --
> >> >> >> View this message in context:
> >> >> >>
> >> >>
> >> http://www.nabble.com/Can-I-use-form%3Aselect-with-data-bound-using-referenceDate%28%29-tf4223839s2369.html#a12022790
> >> >> >> Sent from the AppFuse - User mailing list archive at Nabble.com.
> >> >> >>
> >> >> >>
> >> ---------------------------------------------------------------------
> >> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> >> >>
> >> >> >>
> >> >> >
> >> >> >
> >> >>
> >> >> --
> >> >> View this message in context:
> >> >>
> >> http://www.nabble.com/Can-I-use-form%3Aselect-with-data-bound-using-referenceDate%28%29-tf4223839s2369.html#a12029565
> >> >> Sent from the AppFuse - User mailing list archive at Nabble.com.
> >> >>
> >> >> ---------------------------------------------------------------------
> >> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >> >>
> >> >>
> >> >
> >> >
> >>
> >> --
> >> View this message in context:
> >> http://www.nabble.com/Can-I-use-form%3Aselect-with-data-bound-using-referenceDate%28%29-tf4223839s2369.html#a12726084
> >> Sent from the AppFuse - User mailing list archive at Nabble.com.
> >>
> >> ---------------------------------------------------------------------
> >> To unsubscribe, e-mail: [EMAIL PROTECTED]
> >> For additional commands, e-mail: [EMAIL PROTECTED]
> >>
> >>
> >
> >
> > --
> > http://raibledesigns.com
> >
> >
>
> --
> View this message in context: 
> http://www.nabble.com/Can-I-use-form%3Aselect-with-data-bound-using-referenceDate%28%29-tf4223839s2369.html#a12740723
> Sent from the AppFuse - User mailing list archive at Nabble.com.
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


-- 
http://raibledesigns.com

Reply via email to