Java Playframework 2.2:IllegalStateException:调用bindFromRequest时没有值
在PlayFramework2.2.x中,我在尝试将表单数据绑定到pojo时遇到了这个错误Java Playframework 2.2:IllegalStateException:调用bindFromRequest时没有值,java,playframework,Java,Playframework,在PlayFramework2.2.x中,我在尝试将表单数据绑定到pojo时遇到了这个错误 IllegalStateException: No value 下面是我的示例代码: Form<OrderRequest> form = new Form<OrderRequest>(OrderRequest.class); final OrderRequest orderRequest = form.bindFromRequest().get(); formform=新表单
IllegalStateException: No value
下面是我的示例代码:
Form<OrderRequest> form = new Form<OrderRequest>(OrderRequest.class);
final OrderRequest orderRequest = form.bindFromRequest().get();
formform=新表单(OrderRequest.class);
final OrderRequest OrderRequest=form.bindFromRequest().get();
这篇文章旨在为遭受类似问题的人留下线索
我稍后会亲自回答 我想知道是什么导致了这个问题,所以我决定找出可能触发这个问题的参数
public class OrderRequest {
private Integer num;
private Boolean isAdmin;
private String name;
....
}
以下是OrderRequest的结构:
public class OrderRequest {
private int num;
private boolean isAdmin;
private String name;
....
}
我能够将它缩小到两个参数,结果是当输入参数[num]为null时,它不能将null识别为类型int,参数[isAdmin]也不能识别为类型boolean,因为它们是原始数据类型,所以不是可为null的类型。
为了避免这种情况,我建议始终检查每个参数的类型,确保设置值与类型匹配
如前所述,基本数据类型不是可为空的类型。
您可以做的一件事是将原始数据类型替换为,它将解决此问题
public class OrderRequest {
private Integer num;
private Boolean isAdmin;
private String name;
....
}