2011-12-08 21 views
0

私は助けが必要です。ユーザーがbirthDateを入力するのを忘れたときに、日付フィールドが空白のままになっているときに例外をトラップするにはどうすればよいですか。私はそれを処理するためにValidatorインタフェースを使用しました。また、生年月日フィールドが空のときにJavaがブラウザに表示されるようにしたい場合はFootballPlayer birth date is required.生年月日フィールドが空の場合、例外と私が作成したエラーメッセージが表示されます。Java JSP - バリデータを使用して日付例外をキャッチする方法

java.lang.String型のプロパティ値を、プロパティbirthDateの必須型java.util.Dateに変換できませんでした。ネストされた例外はjava.lang.IllegalStateExceptionです:型[java.lang.String]の値を必須の型[java.util.Date]に変換できませんbirthDate:一致するエディタまたは変換戦略が見つかりません

FootballPlayer生年月日は必須。

私は印刷したいだけですFootballPlayer birth date is required.。これどうやってするの?

Imは、Javaとプログラミングにとって全く新しいものです。助けてください。

FootballPlayerValidator.java:

if (footballPlayer.getBirthDate() == null || footballPlayer.getBirthDate().equals(null)) { 
     try { 
      errors.rejectValue("birthDate", null, null, "FootballPlayer birth date is required."); 
     } catch (Exception ex) { 
      ex.printStackTrace(); 
     } 
    } 

FootballPlayerController.java:私のセッターで

@RequestMapping (value = "/add", method = RequestMethod.POST) 
public String saveFootballPlayer (@ModelAttribute ("footballPlayer") FootballPlayer footballPlayer, 
     BindingResult result, Model model, HttpSession session) { 
    System.out.println("Saving footballPlayer"); 
    footballPlayerValidator.validate(footballPlayer, result); 
    if (result.hasErrors()) 
     return "addFootballPlayer"; 
    saveFootballPlayer(footballPlayer); 
    return "successfullySaved"; 
} 

と私は日付と誕生日を宣言しても、私のデータベースにゲッター。

FootballPlayer.java:

private Date birthDate; 

public Date getBirthDate() { 
    return birthDate; 
} 

public void setBirthDate(Date birthDate) { 
    this.birthDate = birthDate; 
} 

答えて

0

これを試してみてください。

@NotNull 
public Date getBirthDate() { 
    return birthDate; 
} 

EDIT:

私はあなたが検証-APIを使用していないことがわかりません申し訳ありません。

+0

注釈@NotNullはどのように使用できますか?私はどのようにインポートするのですか? – NinjaBoy

+0

私はHibernate Valiadorを使用しています:http://www.hibernate.org/subprojects/validator.html – Baptiste

0

dateオブジェクトにjava.util.Dateを使用しているので、springにstring値をjspからDateオブジェクトに変換するように要求する必要があります。 hereは、それを行う方法に関するチュートリアルです

後で、検証(あなたが探しているもの)を設定する必要があります。そのサンプルはhereです。

関連する問題