Question

J'utilise http://java.sun.com/jsp/jstl/fmt bibliothèque de balises pour délivrer en sortie des messages de ressources Bundle message qui est mis en place dans la configuration Spring. En outre un message de résolution peut aller dans les contrôleurs.

Je voudrais vous connecter des situations où les clés ne se trouvent pas dans le fichier de regroupement de ressources.

Est-ce que tout organisme sait comment le faire?

Était-ce utile?

La solution

Spring utilise un MessageSource pour récupérer les messages si une solution pourrait être d'écrire votre propre MessageSource qui encapsulent le printemps et une remplacer les méthodes de getMessage pour insérer votre journalisation.

Quelque chose comme ce qui suit (non testé):

 <bean id="messageSource" class="com.acme.LoggingMessageSource">
   <property name="pathtru">
     <bean class="org.springframework.context.support.ResourceBundleMessageSource">
       <property name="basenames">
         <list>
           <value>buttons</value>
           <value>labels</value>
         </list>    
       </property>
     </bean>
   </property>
 </bean>

avec la classe:

public class LoggingMessageSource implements MessageSource {

  private MessageSource pathtru;

  public String getMessage(String code, Object[] args, String defaultMessage, Locale locale) {
    // ...
  }

  public String getMessage(String code, Object[] args, Locale locale) throws NoSuchMessageException {
    // ...
  }

  public String getMessage(MessageSourceResolvable resolvable, Locale locale) throws NoSuchMessageException {
    // ...
  }
}

Je ne sais pas si certaines méthodes appellent les autres de sorte que vous devrez expérimenter un peu.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top