I figured it was something easy - thanks Andy! Matt
On 3/29/06, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote: > You forgot to cast to Object[] > return getMessages().format(key, (Object[])arg); > > Also, > return getMessages().format(key, new Object[] { arg }); > can become > return getMessages().format(key, arg ); > > > > From Matt Raible <[EMAIL PROTECTED]>: > > > I have the following in a base class for my Tapestry pages to extend: > > > > protected String getText(String key, Object arg) { > > if (arg == null) { > > return getText(key); > > } > > > > if (arg instanceof String) { > > return getMessages().format(key, new Object[] { arg }); > > } else if (arg instanceof Object[]) { > > return getMessages().format(key, arg); > > } else { > > log.error("argument '" + arg + "' not String or Object[]"); > > > > return ""; > > } > > } > > > > Passing in a key, or a single String argument works fine: > > > > getText("user.added", user.getFullName()); > > > > However, if I pass in an Object array, the substituted values get garbled: > > > > getText("login.passwordHint.sent", new Object[] {username, user.getEmail()}) > > > > login.passwordHint.sent=The password hint for <strong>{0}</strong> has > > been sent to <strong>{1}</strong>. > > > > Results in: > > > > The password hint for <strong>[Ljava.lang.Object;@1ce1387</strong> has > > been sent to <strong>{1}</strong>. > > > > Any ideas? > > > > Thanks, > > > > Matt > > > > --------------------------------------------------------------------- > > 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]