gpt4 book ai didi

java - Play Framework : could not bind from form

转载 作者:行者123 更新时间:2023-12-01 12:59:55 25 4
gpt4 key购买 nike

我正在开发一个 play 2.2.3 应用程序,但在将表单绑定(bind)到我的模型类时遇到一些问题。这是我的模型类:

package models;

import java.util.Date;

import javax.persistence.Access;
import javax.persistence.AccessType;
import javax.persistence.Entity;
import javax.persistence.Id;

@Entity
@Access(AccessType.FIELD)
public class User {
@Id
private int id;
private String firstname;
private String lastname;
private Date birthdate;
private String gender;
private String username;
private String password;

// some getter and setters...

}

我的表格:

@(form: Form[User])

@helper.form(action = routes.Application.register) {
<fieldset>
<legend>Persönliche Daten</legend>
@helper.inputText(form("firstname"),'_label -> "Vorname:")
@helper.inputText(form("lastname"),'_label -> "Nachname:")
@helper.inputDate(form("birthdate"),'_label -> "Geburtstag:")
@helper.inputRadioGroup(form("gender"),options = Seq(("male"->"Männlich"),("female"->"Weiblich")),'_label -> "Geschlecht:")
</fieldset>
<fieldset>
<legend>Login Daten</legend>
@helper.inputText(form("username"),'_label -> "Benutzername*:")
@helper.inputText(form("password"),'_label -> "Passwort*:")
<input id="registersubmit" type="submit" value="Registrieren" accesskey="s"/>
<p id="requiredhint">Mit "*" gekennzeichnete Felder sind Pflichtfelder</p>
</fieldset>
}

以及我的操作方法:

@Transactional
public static Result register() {
Form<User> form = Form.form(User.class).bindFromRequest();
if (form.hasErrors()) {
return badRequest("/registration");
} else {
User user = form.get();
//JPA.em().persist(user);
System.out.println("User "+user.getUsername()+" successfully saved!");
return redirect("/index");
}
}

这些字段位于表单中,但随后它们不会绑定(bind)到用户,并且 user.getUsername() 会打印 null。可能是什么问题?

最佳答案

好像还好。您可以将字段设置为公共(public)字段并删除 getter 和 setter 吗?只是为了检查它们是否有问题或将完整的 User 类放入示例中。

关于java - Play Framework : could not bind from form,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23588250/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com