Ah, in the "modern" world of AJAX and the like, enclosing forms many times
are no longer much use.  I wouldn't say it does much harm to still do it
in most cases, it just becomes somewhat superfluous.

Maybe you have a <select> who's purpose is to change the contents of a
<div> by firing off an AJAX event.  No form to submit, so there isn't much
benefit to having that <select> in a form.  But again, probably not much
harm in most cases.

-- 
Frank W. Zammetti
Founder and Chief Software Architect
Omnytex Technologies
http://www.omnytex.com
AIM: fzammetti
Yahoo: fzammetti
MSN: [EMAIL PROTECTED]

On Mon, December 12, 2005 3:46 pm, Laurie Harper said:
> The documentation for html:select states that, 'This tag is only valid
> when nested inside a form tag body.' It *might* work without an
> enclosing html:form tag, but you would need to tell the
> html:optionsCollection tag where to lookup the 'system_href' property.
> Try adding name="availableSystem" to the html:optionsCollection tag.
>
> I'm not sure why you're using html:select / html:optionsCollection
> without an enclosing form in the first place, though. What use is a
> select list outside a form?
>
> L.
>
> Leung Ping Cheung wrote:
>> Should the jsp be tied to a form for this case?
>>
>> I do not make up a form.
>> I do this in the jsp.
>> <%
>>   List availableSystemList =
>> UserSystemService.getInstance().getAvailableSystemList(request.getRemoteUser());
>>   request.setAttribute("availableSystem", availableSystemList);
>> %>
>>
>> <html:select property="availableSystem">
>>        <html:optionsCollection property="system_href"/>
>> </html:select>
>>
>> where system_href is one of the attributes of availableSystem.
>>
>> I get the error message of
>>
>> ERROR - Servlet.service() for servlet jsp threw exception
>> javax.servlet.jsp.JspException: Cannot find bean under name
>> org.apache.struts.taglib.html.BEAN
>>      at
>> org.apache.struts.taglib.html.SelectTag.calculateMatchValues(SelectTag.java:240)
>>      at
>> org.apache.struts.taglib.html.SelectTag.doStartTag(SelectTag.java:200)
>>      at
>> org.apache.jsp.user.assignUserSystem_jsp._jspx_meth_html_select_0(org.apache.jsp.user.assignUserSystem_jsp:123)
>>      at
>> org.apache.jsp.user.assignUserSystem_jsp._jspService(org.apache.jsp.user.assignUserSystem_jsp:82)
>>      at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:97)
>>
>>
>>
>> On 12/8/05, Keith Sader <[EMAIL PROTECTED]> wrote:
>>> You need to make use of the html:optionsCollection tag
>>>
>>> <html:select property="yearOfManufacture">
>>>        <html:optionsCollection property="years"/>
>>> </html:select>
>>>
>>> In your form bean you need an object that has the properties label and
>>> value.  Like this:
>>>
>>> public class ComboBoxItem implements Serializable, Comparable {
>>>        private String label;
>>>        private String value;
>>>
>>>        // This is the contract for html:optionsCollection, label is
>>> what is
>>>        // displayed on the form, and value is the code behind it.
>>>        public ComboBoxItem(String label, String value) {
>>>                this.label = label;
>>>                this.value = value;
>>>        }
>>>
>>>        public String getLabel() {
>>>                return label;
>>>        }
>>>        public String getValue() {
>>>                return value;
>>>        }
>>>
>>>        public int compareTo(Object o) {...}
>>>
>>> Then, in your populate action, you'll set a Collection<ComboBoxItem>
>>> on the form.  That should to it.
>>>
>>> On 12/8/05, Leung Ping Cheung <[EMAIL PROTECTED]> wrote:
>>>> I think there are many people asking the same question. But I cannot
>>>> find the answer. any web sites have more or less coding example of
>>>> populating a dropdown box or list in a Struts way before the web page
>>>> displays.
>>>>
>>>> Thanks
>>>>
>>>
>>> --
>>> Keith Sader
>>> [EMAIL PROTECTED]
>>> http://www.saderfamily.org/roller/page/ksader
>>> http://www.jroller.com/page/certifieddanger
>>>
>>> ---------------------------------------------------------------------
>>> To unsubscribe, e-mail: [EMAIL PROTECTED]
>>> For additional commands, e-mail: [EMAIL PROTECTED]
>>>
>>>
>
>
>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: [EMAIL PROTECTED]
> For additional commands, e-mail: [EMAIL PROTECTED]
>
>


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

Reply via email to