2010-02-10 36 views
4

我正在與Glassfish一起開發JSF項目。我的驗證效果很好,但我不會成爲自定義錯誤消息。.properties文件中的Bean驗證和錯誤消息

//Class = User, package = devteam 
@NotEmpty @Pattern("[email protected]+\\.[a-z]+") 
private String emailAddress; 

我ValidationMessages.properties與此內容的WEB-INF文件夾:

devteam.User.emailAddress=Invalid e-mail address 

謝謝。

回答

6

這裏有兩個問題。首先,ValidationMessages.properties文件的位置。它必須位於類路徑的根目錄中,因此將其移入WEB-INF /類 您的第二個問題是消息鍵。例如,Pattern約束的默認消息密鑰是{javax.validation.constraints.Pattern.message}。你的情況要指定在@Pattern註釋的消息參數:

@Pattern(regexp="[email protected]+\\.[a-z]+", message="{devteam.User.emailAddress}") 
+0

謝謝。這工作greate – ThreeFingerMark 2010-02-10 20:12:59

+0

我不使用tomcat,所以我不能將屬性文件添加到WEB-INF /類。相反,我在eclipse中做了一個scala項目,但我無法使用它來使用屬性文件。你會在標準的eclipse項目中添加屬性文件? – Marius 2013-04-01 17:41:13

+0

@Marius,檔案根目錄 – Hardy 2013-04-02 08:34:15

1

你應該把文件中的根,然後

devteam.User.emailAddress[Pattern] = "Your message here" 

通知[圖案]指定消息在模式違反約束時輸出。 這使得它更容易在我看來,保持VS具有類似於

@Patterh(regexp ="xx", message = "your message here") 

消息爲每二傳手