spring MessageSource を使用して、ローカリゼーション プロパティ ファイルからメッセージをフェッチします。
この場合、ユーザーに送信する前にメールを作成するために使用します。
String eventTitle = tournament.getEvent().getTitle();
String tournamentMessageTitle = messageSource.getMessage("tournament.subscribe_title", new Object[] {eventTitle}, "", locale);
DateFormat df = new SimpleDateFormat("dd.MM.yyyy");
String formatedDate = df.format(tournament.getDate());
String barName = bar.getName();
String tournamentMessageContent = messageSource.getMessage("tournament.subscribe_content", new Object[] {username, eventTitle, formatedDate, barName}, "", locale);
ここに message.properties のプロパティがあります
tournament.subscribe_title = You signed up for "{0}"
tournament.subscribe_content = Hello {0], <br /><br /> You’ve sucessfully signed up for “{1}”. See you on {2} at Meltdown {3}!<br/><br/>You’ll have to confirm your participation with an admin prior to the start of the event.<br/><br/>See you soon!<br/><br/>The Meltdown {3} team
したがって、ここでは、messageSource.getMessage の 2 つの使用法があります。最初のものは機能し、2 番目のものは IllegalArgumentException: Unmatched Braces in the pattern をスローします。
メッセージを変更し、変数を変更/削除し、引用符と二重引用符を削除し、プロパティを message.properties ファイルの別の場所に移動しようとしましたが、常に同じエラーが発生します