Jsp 如何提交下拉列表的选定选项?

Jsp 如何提交下拉列表的选定选项?,jsp,jakarta-ee,struts2,Jsp,Jakarta Ee,Struts2,我有下面的代码向用户显示一个列表以选择一个选项,它正确地显示列表选项,但是当选择一个选项并提交表单时,它会遇到以下错误 错误 JSP 实际上,问题在于您的s:select,这里的值标记导致了问题 试试这个 <s:select list="listOfdevelopers" name="developerID" headerKey="-1" headerValue="Select Any Deve

我有下面的代码向用户显示一个列表以选择一个选项,它正确地显示列表选项,但是当选择一个选项并提交表单时,它会遇到以下错误

错误

JSP


实际上,问题在于您的s:select,这里的值标记导致了问题

试试这个

    <s:select list="listOfdevelopers" 
              name="developerID"
              headerKey="-1" 
              headerValue="Select Any Developer"
              listKey="developerID"               // your collection_element
              listValue="developer_name"          // your collection_element
    />


范例

<s:select list="genderList"
          id="gender"
          name="gender"
          cssClass="listmenu validate-selection"
          listKey="name"
          listValue="details"
          headerKey=""
          value="userInfo.userPersonalInfo.gender"
          headerValue="Please choose one."
          ></s:select>


这是如何回答OP问题的?我不明白你的意思,你能详细说明你想说什么吗?这不是问题的答案。错误是因为
listOfdevelopers
而不是因为值。但问题是表单呈现时的列表。也许你可以解释为什么没有寻址来回答这个问题。你没有在提交时填充地图。有填充集合的代码吗?@Daniel Morgan你能展示struts.xml你在struts.xml中配置了任何拦截器吗?你最初是如何使用表单访问页面的?它必须经过一个操作,并且必须初始化开发人员列表。请显示执行该操作的代码。
....
private Map listOfdevelopers;
private Development development = new Development();

public Map getListOfdevelopers() {
    return listOfdevelopers;
}

public void setListOfdevelopers(Map listOfdevelopers) {
    this.listOfdevelopers = listOfdevelopers;
}

public Development getDevelopment() {
    return development;
}

public void setDevelopment(Development development) {
    this.development = development;
}

@Override
public Development getModel() {
    return this.development;
}
...    
    <s:select list="listOfdevelopers" 
              name="developerID"
              headerKey="-1" 
              headerValue="Select Any Developer"
              listKey="developerID"               // your collection_element
              listValue="developer_name"          // your collection_element
    />
<s:select list="listOfdevelopers"
                        id="developerID"
                         name="developerID"
                             label="developerID"
                             headerKey=""
                              headerValue="Please choose one."
                            value="%{development.developerID}"
                      />
<s:select list="genderList"
          id="gender"
          name="gender"
          cssClass="listmenu validate-selection"
          listKey="name"
          listValue="details"
          headerKey=""
          value="userInfo.userPersonalInfo.gender"
          headerValue="Please choose one."
          ></s:select>