Jsp <;选择>;错误:请求的列表键';类型调查';无法解决

Jsp <;选择>;错误:请求的列表键';类型调查';无法解决,jsp,struts2,Jsp,Struts2,这是我的jsp: <s:form action="InsertSurvey"> <table> <tr> <td> ID Survey: </td><td><s:textfield name="SurveyValues.survey.idtextsurvey"/> </td> <td>

这是我的jsp:

<s:form action="InsertSurvey">
        <table>
            <tr>
                <td> ID Survey: </td><td><s:textfield name="SurveyValues.survey.idtextsurvey"/> </td>
                <td> Tipo Survey: </td><td><s:select list="typeSurvey"/> </td>

            </tr>
        </table>
    </s:form>
为什么我会有这个问题? *

标记“选择”,字段“列表”:字段 请求的列表键“typeSurvey”可能无效 不能作为一个整体来解决 集合/数组/映射/枚举/迭代器 类型。示例:人或人。{name} -[未知位置]

我有struts2的最新版本


<struts>
<constant name="struts.devMode" value="true"/>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />



<package name="default"  extends="struts-default">

    <action name="InsertSurvey" class="it.survey.actions.InsertSurveyAction">
        <result name="success">/InsertSurvey_step1.jsp</result>
    </action>

</package>
/InsertSurvey_step1.jsp

问题是您没有为typeSurvey列表声明getter, 试一试
公共列表getTypeSurvey(){
复检;

}

问题是标签
仅在提交后显式运行,在您的情况下,操作未执行,因此typeSurvey值不可用。

问题是您试图访问jsp页面(直接访问jsp页面)无需遍历任何操作,因此不会在此过程中初始化列表。因此,请尝试在操作的“准备”方法中初始化列表。

只需定义列表typeSurvey的Getter和Setter即可


创建typeSurvey的对象,并将列表中的项目添加到构造函数中,而不是在prepare方法中。

谢谢您的帖子!请勿在帖子中使用签名/标语。您的用户框算作您的签名,您可以使用您的个人资料发布您喜欢的任何关于您自己的信息。我尝试在构造函数中初始化列表,同时在实例变量区域中声明它。还是不走运!:(
<struts>
<constant name="struts.devMode" value="true"/>
<constant name="struts.enable.DynamicMethodInvocation" value="false" />



<package name="default"  extends="struts-default">

    <action name="InsertSurvey" class="it.survey.actions.InsertSurveyAction">
        <result name="success">/InsertSurvey_step1.jsp</result>
    </action>

</package>