1

Inquiry オブジェクトにデータを投稿するフォームがあります。Inquiry オブジェクトは、明示的に定義されたコンストラクターを持たない Controller の ModelAttribute です。ageフォームで入力要素の値属性を空の文字列に設定しているにもかかわらず、ゼロとして表示されます。ageこれは、ゼロに初期化された Inquiry オブジェクトから既存の値を取得していると思わせます。enquiry.age現在の値をページに表示せずに投稿する方法はありますか?

私のフォーム

<form:form commandName="enquiry" method="post" action="mycontext/jsp/enquiry-search">
    <form:input path="name" value=""/>
    <form:input path="age" value=""/>
</form:form>

私のコントローラーの一部

    @RequestMapping( value = "/enquiry/{screenType}", method = {RequestMethod.GET, RequestMethod.POST})
@ResponseStatus( HttpStatus.OK )
public String getEnquiryScreen(@ModelAttribute ("enquiry") Enquiry enquiry, @PathVariable("screenType") String screenType) {

    return "enquiry";
}

@ModelAttribute( "enquiry" )
public Enquiry getEnquiry() {
    return new Enquiry();
}

私の探究クラス

public class Enquiry {

private String name;
private int age;

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public int getAge() {
    return age;
}

public void setAge(int age) {
    this.age = age;
}
4

1 に答える 1