从struts中的Beans填充选择选项

时间:2013-05-17 11:31:38

标签: java struts struts-1

我有Struts 1.2 bean,如下所示,其中包含数组中的位置

Register.java

public class Register extends ActionForm 
{   
  private String[] userLocation = {"Chennai", "Bangalore", "Delhi", "Singapore"};
  .
  .
  //Getters and Setters
  .
  .
  .

}

我想在Dropdown select in options中填充它。我尝试了以下代码,但它无法正常工作。任何想法如何做到这一点。是否可以通过使用数组使用集合来完成此任务。

RegisterForm.jsp

<html:select property="userSelectedLocation">
    <html:options  property="id" labelProperty="name" />
 </html:select>

1 个答案:

答案 0 :(得分:2)

阅读select标记和options标记的文档。

select标签希望在属性中找到选择框的选定值。您将userSelectedLocation作为属性,但操作表单似乎没有任何getUserSelectedLocation()方法。

options标签从值集合中获取选项。获取集合的位置取决于三个属性:集合,名称和属性。文档说:

  

仅指定了属性 - 此属性的值是与表单关联的ActionForm bean的属性名称,该属性将返回集合。

这意味着options标签在动作表单中查找将返回值数组的方法getId()。你似乎没有这样的方法。

文档清楚地解释了标签的工作原理。如果您告诉我们您想要做什么(您希望选择的选项具有什么值和标签,包含所选值的属性是什么),我们可以告诉您要使用的内容。