Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 播放2-格式->;目标_Java_Playframework 2.0_Morphia_Objectid - Fatal编程技术网

Java 播放2-格式->;目标

Java 播放2-格式->;目标,java,playframework-2.0,morphia,objectid,Java,Playframework 2.0,Morphia,Objectid,我对游戏2中的表单有问题 型号: @Id private ObjectId id; 形式 这是objectid的正确构造函数。如您所见,这是我的解决方法,我不使用guideForm.bindFromRequest()我只需要直接绑定它 这感觉有点不舒服。是我可以使用普通绑定的解决方案吗 Form<Myclass> guideForm = form(Myclass.class); Form<Myclass> filledForm = guideForm.bindFromR

我对游戏2中的表单有问题

型号:

@Id private ObjectId id;
形式

这是objectid的正确构造函数。如您所见,这是我的解决方法,我不使用
guideForm.bindFromRequest()我只需要直接绑定它

这感觉有点不舒服。是我可以使用普通绑定的解决方案吗

Form<Myclass> guideForm = form(Myclass.class);
Form<Myclass> filledForm = guideForm.bindFromRequest();
formguideform=Form(Myclass.class);
Form filledForm=guideForm.bindFromRequest();

尝试在的onStart()中注册自定义DataBinder:

Formatters.register(ObjectId.class,新的SimpleFormatter(){
@凌驾
公共ObjectId解析(字符串输入,语言环境l)引发ParseException{
return…;//从表单的输入创建对象
}
@凌驾
公共字符串打印(ObjectId ObjectId,Locale l){
返回字符串.valueOf(objectId.id);
}
});
该文件可在本页末尾找到:

ObjectId id = new ObjectId(form().bindFromRequest().get("id"));
Form<Myclass> guideForm = form(Myclass.class);
Form<Myclass> filledForm = guideForm.bindFromRequest();
Formatters.register(ObjectId.class, new SimpleFormatter<ObjectId>() {

    @Override
    public ObjectId parse(String input, Locale l) throws ParseException {

        return ...; // create the object from the input of the form
    }

    @Override
    public String print(ObjectId objectId, Locale l) {
        return String.valueOf(objectId.id);
    }

});