2010-03-05 39 views

回答

1

Spring使用一个MessageSource检索消息,因此一个解决办法是写自己的MessageSource封装了一个春天,并覆盖getMessage方法来插入你的日志。

像下面这样(未测试):

<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> 

与类:

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 { 
    // ... 
    } 
} 

如果有些方法是调用其他的人,所以你将不得不尝试我不知道一点点。

+0

谢谢!这样可行。我刚刚来到相同的解决方案:) – glaz666 2010-03-05 13:40:39