2011-06-27 11 views
1

に変数を渡すために、私はデータベース検索に基づいて、「やさしい」電子メールメッセージを作成しようとしていますと、次のために右の構文を見極めるように見えることはできません。Velocityテンプレート - 構文方法

System.out.println(TagFunctions.getConstantValue(4, "val1", Integer.parseInt(selectedFiling.getRejectionReason()))); 

私が実現私はクラスファイル内でこれを評価することができますが、再度デプロイせずにデータベースを変更できるようにすることが望まれます。

私はここにいくつかの中括弧が欠けていると信じていますが、私が試したことは何もできませんでした。

$tagFunctions.getConstantValue(4, "val1", $Integer.parseInt($selectedFiling.rejectionReason)) 

答えて

0

実際のコードやスタックトレースを投稿してください。

これ以上の情報がなければ、私の最初の推測です。 TagFunctionsとIntegerで静的メソッドを呼び出すことができるように、コンテキストを適切に設定していますか?あなたがやっていない限りhttp://velocity.apache.org/engine/devel/developer-guide.html#supportforstaticclasses

+0

: $ tagFunctions.getFilingTypeLongString($ {selectedFiling.filingType}) – Corpse

+0

実際にこの第二の例ではありません$ Integerを参照してください。あなたが$ Integer.parseIntを呼び出すのに問題があると言っている行です。スタックトレースとコードサンプルを投稿した方がずっと簡単です。さもなければ、誰もが実際の問題が何であるかを推測しなければなりません。 – jtoberon

3

:詳細はこのリンクを参照してください。その後、

context.put("Integer", Integer.class); 

​​は、テンプレートで有効な参照ではありません。

私はこのラインが動作し、問題のラインで使用される同じオブジェクトを参照するようにコンテキストが適切に設定されていることを信じる
+0

もちろん、他の参考資料も同じです。そして、すべてのメソッドはpublicクラス内でpublicと宣言しなければなりません。 –

関連する問題