Java 通过从请求绑定创建正在使用的表单

Java 通过从请求绑定创建正在使用的表单,java,playframework,playframework-2.2,Java,Playframework,Playframework 2.2,我正在用play构建一个web应用程序,我对play框架非常陌生。我有一个类似这样的表单: class ComplexForm{ 列出人员名单; } 班主任{ 字符串名; 字符串电子邮件; } 我想在请求中传递一个complexForms数组,其中内容类型必须是application/x-www-form-urlencoded。我无法将其更改为application/json,因为其他依赖项很少。我传递的数据如下: persons[0][name]=name和person[0][email]=

我正在用play构建一个web应用程序,我对play框架非常陌生。我有一个类似这样的表单:

class ComplexForm{
列出人员名单;
}
班主任{
字符串名;
字符串电子邮件;
}
我想在请求中传递一个complexForms数组,其中内容类型必须是
application/x-www-form-urlencoded
。我无法将其更改为
application/json
,因为其他依赖项很少。我传递的数据如下:

persons[0][name]=name和person[0][email]=email和person[1][name]=name2和person[1][email]=email2

但当我这样做的时候:

Form.form(ComplexForm.class).bindFromRequest().get()
我得到一个错误:

org.springframework.beans.InvalidPropertyException:persons[0][name]既不是数组,也不是列表,也不是映射


如何使用play将此类请求绑定到上述嵌套对象?

name
email
person
的属性,因此您的身体应如下所示(无括号):


为可读性增加了新行。

姓名
电子邮件
人的属性
,因此你的身体应该如下所示(无括号):


为可读性添加了新行。

我仍然得到异常,这次是:java.lang.IllegalStateException:No Value是否设置了所有必需的属性?你的表单有getter/setter吗?表单有getter/setter。我没有设置任何必需的约束,所以我认为传递所有字段是否正确并不重要?我仍然得到异常,这次是:java.lang.IllegalStateException:No Values您是否设置了所有必需的属性?你的表单有getter/setter吗?表单有getter/setter。我没有设置任何必需的约束,所以我认为我是否通过所有字段并不重要?
persons[0].name=name&
person[0].email=email&
person[1].name=name2&
person[1].email=email2