Hi! I want to use my DB-based Messages implementation instead of the T5 property file based one. My problem is that the getValidationMessages method of my source is only called once, and probably cached until next server restart. This doesn't work very good for me, as every request potentially is a new user with a new Locale/language that should be looked up from DB. Any ideas on how I could configure the system to do a fresh read from Messages service every time a validation message is computed?
public static void contributeServiceOverride(MappedConfiguration<Class, Object> configuration, @Local final org.apache.tapestry5.ioc.Messages messages, @Local final ValidationMessagesSource validationMessagesSource) { configuration.add(org.apache.tapestry5.ioc.Messages.class, messages); configuration.add(ValidationMessagesSource.class, validationMessagesSource); } The implementation of my ValidationMessagesSource: public class CustomValidationMessagesSource implements ValidationMessagesSource, UpdateListener { private final Messages messages; public CustomValidationMessagesSource(Messages messages) { this.messages = messages; } public Messages getValidationMessages(Locale locale) { return messages; } public void checkForUpdates() { // Included to find out what this does } }