That makes sense. I haven't really ever used the %key stuff so I wasn't quite aware of how it works. I thought these would be expanded using the locale with which the JVM was started.
I guess it also depends on what you use the %key stuff for. If you'd use it to provide localized descriptions for the elements in the descriptor (don't even know if that works) then that would certainly be useful as this is out of scope for the Messages objects. --knut On Tue, 25 Jan 2005 11:31:53 -0500, Howard Lewis Ship <[EMAIL PROTECTED]> wrote: > So I access a web application and part of the request involves a > service and a configuration, part of which is a %key contribution. > I'm localized to english, so the %key is expanded based on the > module_en.properties file. > > Later, you perform the same operation, but you are localized to German > (or are you Swiss ... please allow). Anyway, you hit the same > service and the same configuration, but the configuration is only > converted from XML -> Java Objects once. So you'll see the english > localization of %key, even if there's a module_de.properties file. > > By removing %key, we're shifting some responsibility for localization > back onto the services (the consumers of the configuration) and > removing some potential for non-intuitive runtime behavior. > > Now, a more complicated system than HiveMind might be able to track > all this localization, and have parallel services for different > locales, with parallel configurations as well. I'm going for the > simplest system that works. > > Eclipse doesn't have this issue with its plugin.xml files, because the > locale doesn't change during runtime. > > On Tue, 25 Jan 2005 17:24:53 +0100, Knut Wannheden > <[EMAIL PROTECTED]> wrote: > > Howard, > > > > I don't quite understand how the %-notation in the descriptors at all > > affect the message localization. I thought all the messages generated > > by the services would stem from the injected Messages (or now the > > MessagesProxy). The % stuff in the descriptor OTOH would be used to > > for instance to provide localized descriptions for services and > > configuration points. Where is the overlap? > > > > --knut > > > > On Tue, 25 Jan 2005 09:02:27 -0500, Howard Lewis Ship <[EMAIL PROTECTED]> > > wrote: > > > I'd like to take a crack at allowing the locale to be changed > > > dynamically. This would be more in keeping with HiveMind + a web > > > application (i.e., Tapestry), where each thread/request may want > > > messages localized to a different locale. > > > > > > I pretty much know how this will work: > > > - Registry's locale is the *default* locale > > > - A LocaleHolder service that stores the locale for the current thread > > > - A MessagesProxy > > > > > > MessagesProxy: The proxy is what's injected into services. It's > > > implementation will get the Locale from the LocaleHolder and ask the > > > Module for the concrete Messages for that locale, and redirect > > > implementations to that concrete Messages instance. > > > > > > The only problem is the %key syntax in the descriptors. That will > > > only be evaluated ONCE and in some arbitrary locale. I would propose > > > that the syntax be removed (or, at the very least, deprecated). > > > Thoughts? > > > > > > -- > > > Howard M. Lewis Ship > > > Independent J2EE / Open-Source Java Consultant > > > Creator, Jakarta Tapestry > > > Creator, Jakarta HiveMind > > > > > > Professional Tapestry training, mentoring, support > > > and project work. http://howardlewisship.com > > > > > > --------------------------------------------------------------------- > > > To unsubscribe, e-mail: [EMAIL PROTECTED] > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > -- > Howard M. Lewis Ship > Independent J2EE / Open-Source Java Consultant > Creator, Jakarta Tapestry > Creator, Jakarta HiveMind > > Professional Tapestry training, mentoring, support > and project work. http://howardlewisship.com > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]
