2017-01-26 6 views
1

MVELは新しくなっています。私が達成しようとしているのは、すべての関数の入力と出力を式に記録することです。MVEL式の各関数の入力と出力を控えよう

例えば、私がログインしようとしているものを、次の式

h.function1('value1') != h.function2('value2') 

を有するfunction1function2の入力と出力の値です。私は約Interceptorsを読んだ。私がうまくやっていない場合、追加してインターセプタを追加するには、上記の式を次のように書き直す必要があります。

@Intercept h.function1('value1') != @Intercept h.function2('value2') 

しかし、私は@Intercept注釈を追加するために私のユーザーを強制することはできません。

このタスクを実行する最も良い方法はどれですか?私はSpring AOPを再開することができますか? :(

答えて

1

それは@Interceptではないですが、インターセプトの名前は、あなたがマップに置く。ベローは@Test注釈である。ここでhttps://github.com/mvel/mvel/blob/master/src/test/java/org/mvel2/tests/core/CoreConfidenceTests.java

interceptors.put("test", 
     testInterceptor); 

executeExpression(compileExpression("@test System.out.println('MIDDLE');", 
     null, 
     interceptors)); 
+0

を詳細に確認してくださいご回答いただきありがとうございます。しかしあなたはそれがに必須である私を確認しました –

+1

これは、ソースコードにdocがあります(メソッドcompileExpressionのdoxygenを確認してください)。http://www.programcreek.com/java-api-examples /index.php?source_dir=mvel-master/src/main/java/org/mvel2/MVEL.java – nguyentran

関連する問題