Jsp Struts combobox未在验证时填充所选值

Jsp Struts combobox未在验证时填充所选值,jsp,validation,session,struts2,Jsp,Validation,Session,Struts2,我已经对combobox进行了验证。如果我不选择任何值并提交表单字段,则会出现错误,但如果我选择某个值并提交表单,则所选值不会填充 注意:它在提交表单之前填充所选值 <s:combobox label="" id="NotifSound" cssStyle="padding:0px;width:200px" headerKey="-1" headerValue="--- Select ---" value=" - Add or Select - " list="%{#session

我已经对combobox进行了验证。如果我不选择任何值并提交表单字段,则会出现错误,但如果我选择某个值并提交表单,则所选值不会填充

注意:它在提交表单之前填充所选值

<s:combobox label="" id="NotifSound" cssStyle="padding:0px;width:200px" 
 headerKey="-1" headerValue="--- Select ---" value=" - Add or Select - " 
 list="%{#session.NotificationSoundList}" maxlength="50" name="messageBean.sound"
 labelSeparator="" cssClass="form_textbox" labelposition="left" />

我认为您遇到的问题是使用变量。因为这个变量在返回结果之前应该手动更新

如果您从提交,则它具有值属性,该属性在您选择某个内容时填充。然后将该值发送到设置为action属性的struts


现在,操作被执行,您可以从会话映射中获取列表,并添加提交后获得的值。然后,如果您将结果返回给JSP,那么新的select元素将被呈现,并用操作已经更新的值重新填充

您的操作中是否有一个名为messageBean的对象及其Setter,并且在该对象中有一个名为sound的字符串属性及其Setter?是的,我有,并且在单击submit按钮之前选择了一种声音类型时能够得到。单击“提交”按钮后,我遇到了问题填充列表时,您正在从%{session.NotificationSoundList}读取该列表;提交后,您将向getMessageBean.setSound发送列表中选定的元素或自定义输入的元素。当您发送单个选定值时,提交填充的组合框之前和提交之后的内容之间绝对没有相关性。请再次检查,或发布您的操作代码。。。