Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
471 views
in Technique[技术] by (71.8m points)

internationalization - Overriding default i18n messages for play 2.0

We use @Constraint.Required to validate the fields of our forms, and this generates a ValidationError - which is all well and nice. This error has a standard error message (error.required) which is associated with the following string: "This field is required".

However, we want to have control over this string and (possibly) override it - how can we do this? We have a message file in our conf/-folder which has the following line:

error.required = dummytext

But the error message still reads "this field is required" - even though the messages-file is being read (we did some tests).

How can we override these messages?

Thanks!

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Answer

0 votes
by (71.8m points)

That's not quite good solution especially when you want to make multilingual app. So placing changed messages in annotations will fail in such case.

Fortunately there is solution, which works as expected. You need to place your labels into the language file with language code as an extension ie. conf/messages.en, even if there is only one language defined and it's English.

The default messages with their keys can be copied from the Play's sources


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome to OStack Knowledge Sharing Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

2.1m questions

2.1m answers

60 comments

57.0k users

...