0

プロパティ ファイルに次のキー/メッセージがあります。

kadjoukor.registration.form.successMessage=You've been successfully registered. An email has been sent to <b>{0}</b>. Please activate your registration by consulting your email.

私のテンプレートでは、Thymeleaf テンプレートで次のように表示しようとしています。

<div id="alert-success" th:if="${#bools.isTrue(member)}" class="alert alert-success" th:utext="#{kadjoukor.registration.form.successMessage(${member.email})}"></div>

私が得るのは次のとおりです。

Youve been successfully registered. An email has been sent to {0}. Please activate your registration by consulting your email.

引数がその値に置き換えられていないことに注意してください。つまり、次のようになります: {0}。また、Spring によってアポストロフィが削除されていることにも注意してください...

編集: メッセージソースを構成した方法は次のとおりです。

<bean class="org.springframework.context.support.ResourceBundleMessageSource" id="messageSource">
    <property name="basenames" value="/META-INF/i18n/application,/META-INF/i18n/messages" />
</bean>
4

1 に答える 1

3

この問題を回避するには、アポストロフィを別のアポストロフィでエスケープする必要があります

参照:一部のロケールで Spring MessageSource 引数が正しく入力されないのはなぜですか?

ただし、これはメッセージに1 つまたは複数の引数がある場合にのみ発生することに注意してください。

于 2012-09-11T15:25:54.600 に答える