Cheers for pointing that out. As of yet I don't need message arguments so that'll be fine.
Was there any reason for having a getLocale(request) method? I'm guessing the implementation was different from just request.getLocale(). Hubert Rabago <[EMAIL PROTECTED]> wrote in news:[EMAIL PROTECTED]: > On Wed, 13 Oct 2004 10:38:09 -0500, Hubert Rabago <[EMAIL PROTECTED]> > wrote: >> Yup, copy/paste from existing code works fast. :) > > It's also not foolproof. This excerpt was specific to the needs of > the class I took it from. Check the getMessage() method -- it can > actually accept message arguments, but the evaluateMessage() doesn't > use them. If you do need them, just modify evaluateMessage() to also > accept an argument parameter. > Sorry about that. > >> >> On Wed, 13 Oct 2004 15:35:24 +0000 (UTC), Alan Pocklington >> <[EMAIL PROTECTED]> wrote: >> > Wow, thanks for the quick reply. Will do! >> >> >> > >> > Hubert Rabago <[EMAIL PROTECTED]> wrote in >> > news:[EMAIL PROTECTED]: >> > >> > >> > >> > > Put this in a util class and call evaluateMessage(): >> > > >> > > /** >> > > * <p>Evaluate the given message resource key.</p> >> > > * >> > > * @param messageKey the name of the resource entry to >> > > retrieve * @param bundle The key specified in the >> > > * <code><message-resources></code> element for the >> > > * resource bundle to use >> > > * @param request the request being processed >> > > * @param servletContext the current [EMAIL PROTECTED] ServletContext} >> > > * @return the value of paramName from the message resources >> > > */ >> > > public String evaluateMessage( >> > > String messageKey, >> > > String bundle, >> > > HttpServletRequest request, >> > > ServletContext servletContext) { >> > > // get the message resources >> > > MessageResources resources; >> > > if (bundle != null) { >> > > resources = getResources(bundle, request, >> > > servletContext); >> > > } else { >> > > resources = getResources(request); >> > > } >> > > // evaluate the message >> > > String messageString = getMessage(messageKey, null, >> > > request, >> > > resources); >> > > >> > > // add it to the redirect parameters >> > > if ((messageString != null) && (messageString.length() > >> > > 0)) { >> > > return messageString; >> > > } >> > > return null; >> > > } >> > > >> > > >> > > /** >> > > * <p>Look for the ActionMessage in the provided >> > > MessageResources.</p> * >> > > * @param messageKey the key to look for >> > > * @param args the arguments to be used in evaluating the >> > > message * @param request the request being processed >> > > * @param resources the application's message resources >> > > * @return the message formed from the given ActionMessage >> > > */ >> > > protected String getMessage(String messageKey, >> > > Object[] args, >> > > HttpServletRequest request, >> > > MessageResources resources) { >> > > if (messageKey == null) { >> > > //log.warn("Call to getMessage() with a null >> > > messageKey."); return null; >> > > } >> > > >> > > String result = null; >> > > try { >> > > // first, get the locale from the request >> > > Locale userLocale = getLocale(request); >> > > >> > > // then, get the message >> > > if (args == null) { >> > > result = (resources.getMessage(userLocale, >> > > messageKey)); >> > > } else { >> > > result = (resources.getMessage(userLocale, >> > > messageKey, >> > > args)); >> > > } >> > > } catch (Exception e) { >> > > //log.error("Exception while looking for message.", >> > > e); >> > > } >> > > return result; >> > > } >> > > >> > > /** >> > > * <p>Return the default message resources for the current >> > > module.</p> * >> > > * @param request The servlet request we are processing >> > > */ >> > > protected MessageResources getResources(HttpServletRequest >> > > request) { >> > > >> > > return ((MessageResources) >> > > request.getAttribute(Globals.MESSAGES_KEY)); >> > > >> > > } >> > > >> > > /** >> > > * <p>Return the specified message resources for the current >> > > module.</p> * >> > > * @param bundle The key specified in the >> > > * <code><message-resources></code> element for the >> > > * requested bundle >> > > * @param request The servlet request we are processing >> > > * @param servletContext the current [EMAIL PROTECTED] ServletContext} >> > > */ >> > > protected MessageResources getResources(String bundle, >> > > HttpServletRequest >> > > request, >> > > ServletContext >> > > servletContext) { >> > > >> > > // Identify the current module >> > > ModuleConfig moduleConfig = >> > > ModuleUtils.getInstance().getModuleConfig( >> > > request, servletContext); >> > > >> > > // Return the requested message resources instance >> > > return ((MessageResources) servletContext.getAttribute >> > > (bundle + moduleConfig.getPrefix())); >> > > >> > > } >> > > >> > > > --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]