私は速度テンプレートを使用して文字列を生成し、オブジェクト型をコンテキストに渡しています。オブジェクトを速度でキャストする方法はありますか?
私はこのオブジェクトを特定のクラスにキャストしたかったのですが、これを達成する方法はありますか?
私は速度テンプレートを使用して文字列を生成し、オブジェクト型をコンテキストに渡しています。オブジェクトを速度でキャストする方法はありますか?
私はこのオブジェクトを特定のクラスにキャストしたかったのですが、これを達成する方法はありますか?
通常、このようなタスクは、テンプレート側ではなく、Java側で処理します。
あなたがSecureUberspectorを使用していない場合はそれにもかかわらず、それは(...本当にハック)なんとかです:
#set($casted = $someObject.class.forName('target.class.name').cast($sourceObject))
クロード・ブリッソンの答えは動作しますが、上向き速度1.6から、それを行うことができますコンパイル時に見えないクラスに依存関係を作成することができるClass.forName()
を使用せずに、少しシンプルになりました。
私がString
に何かをキャストしたいとしましょう。 Javaでは:
context.put("String", String.class);
次にベロシティに私が使用することができます。
#set($casted = $String.cast($sourceObject))
は助けをあなたにクロードをありがとう –