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]