2011-01-27 25 views
1

我試圖在logback中使用評估程序。爲此我有這樣的片段在我logback.xml如何讓Janino使用logback(名爲「contains」的方法未聲明)

<evaluator name="IS_INTERESTING"> 
    <expression>logger != null &amp;&amp; message != null &amp;&amp; logger.contains(".xxx.") &amp;&amp; message.contains("closing session")</expression> 
</evaluator> 

但在它導致此錯誤JANINO不能處理它:

15:56:14,061 |-ERROR in [email protected] - Could not start evaluator with expression [logger != null && message != null && logger.contains(".xxx.") && message.contains("closing session")] org.codehaus.janino.CompileException: Line 2, Column 53: A method named "contains" is not declared in any enclosing class nor any supertype, nor through a static import 
    at org.codehaus.janino.CompileException: Line 2, Column 53: A method named "contains" is not declared in any enclosing class nor any supertype, nor through a static import 

我想這可能是一個問題的版本與String類,但用'indexOf'調用替換'contains'基本上導致相同的錯誤。

我使用JANINO 2.5.16和0.9.15的logback和所有的東西是在一個Tomcat(始於一個Maven插件啄)

任何想法,我做錯了運行?

回答

1

表情看起來不錯。版本0.9.15已近兩年之久。你能否升級到最新的logback版本?

+0

Thanx的提示。現在工作。 – 2011-02-04 12:15:54

相關問題