集合和映射的播放Java验证失败

集合和映射的播放Java验证失败,java,validation,playframework-2.0,Java,Validation,Playframework 2.0,我使用Play2.5.12提供一个web服务来创建一个对象并验证其属性。以下是我想做的简化代码: public class Example { private String lastName; private List<String> firstNames; private Map<String, Integer> vehicles; public Example() {} public String validate()

我使用Play2.5.12提供一个web服务来创建一个对象并验证其属性。以下是我想做的简化代码:

public class Example {

    private String lastName;

    private List<String> firstNames;

    private Map<String, Integer> vehicles;

    public Example() {}

    public String validate() {
        if (vehicles.get("Ferrari") != null)
            return "Liar!";
        return null;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this).append(lastName).append(firstNames).append(vehicles).toString();
    }

    // getters and setters
}


public class ExampleController extends Controller {

    private FormFactory formFactory;

    @Inject
    public ExampleController(FormFactory formFactory) {
        this.formFactory = formFactory;
    }

    @BodyParser.Of(BodyParser.Json.class)
    public Result createExample() {
        Example exampleFromJackson = Json.fromJson(request().body().asJson(), Example.class);
        System.out.println(exampleFromJackson.toString());
        Example exampleFromForm = formFactory.form(Example.class).bindFromRequest().get();
        System.out.println(exampleFromForm.toString());
        // etc
        return created();
    }
}
jackson反序列化的对象打印正确,然后发生此错误:

org.springframework.beans.InvalidPropertyException: Invalid property 'firstNames[0]' of bean class [models.Example]: Property referenced in indexed property path 'firstNames[0]' is neither an array nor a List nor a Map; returned value was [[]]
如果用列表替换集合,可以避免此错误,然后获得以下结果:

models.Example@68d2162a[Martin,[Robert, Cecil],{BMW=1, Seat=1}]
models.Example@29ef1c11[Martin,[Robert, Cecil],{}]
jackson反序列化的对象是正确的,但请求获得的对象不是,因此我无法进行正确的验证

所以我的问题是:
-为什么Play不让我使用一套?
-为什么不检索地图?

models.Example@68d2162a[Martin,[Robert, Cecil],{BMW=1, Seat=1}]
models.Example@29ef1c11[Martin,[Robert, Cecil],{}]