問題タブ [velocity]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - ベロシティとタイルでStruts2を使用する方法
Struts 2で速度とタイルを動作させることができた人はいますか?
オンラインで例やチュートリアルを見つけるのに問題があり、メーリングリストから収集したものからは、まったく不可能なようです(ただし、メールはかなり古いものでした)。
velocity - Velocity フレームワークを使用しているプロジェクトの数
UI の開発に Velocity フレームワークを使用した成功したプロジェクトの数を知っていますか?私が尋ねている理由は、ほとんどの場合、Velocity が JSP タグに置き換えられているためですが、私たちの製品ではまだ Velocity フレームワークを使用しています。
java - 速度: $display.list() とオブジェクトのコレクション
Velocity DisplayTool には便利なメソッドがあります。
これにより、コレクションまたは配列が「A、B、および C」の形式にフォーマットされます。
問題は、オブジェクトの ArrayList があるとしましょう。オブジェクト全体ではなく、特定のオブジェクト フィールドを出力するにはどうすればよいでしょうか。たとえば、通常のループは次のようになります。
今のところ、obj.toString() で obj.title を返すようにしましたが、別のフィールドが必要になったらどうしますか?
ありがとう。
更新このメソッドを自分で実装し、DisplayTools にコミットすることになりました。そのため、現在は Tools 2.0 の一部です。
header - .vm ファイルにヘッダーとフッターを挿入する方法
DOC ファイルを生成するために実行される .vm (Velocity) ファイルがあります。この結果の DOC ファイルに、非常に単純なヘッダーとフッターを含めたいと考えています。このために .vm ファイルにコードを記述するにはどうすればよいですか。ヘッダー ファイルとフッター ファイルを外部ファイルとして含めたくありません。同じ .vm ファイルに単純なコードが必要です。助けてください!!!
java - toString以外のものでオブジェクトをレンダリングするように速度を設定しますか?
オブジェクトをテンプレート内の文字列に変換するために toString() 以外のものを使用するように Velocity を構成する方法はありますか? たとえば、単純な日付クラスと format() メソッドを使用していて、毎回同じ形式を使用しているとします。すべての速度コードが次のようになっている場合:
追加できる構成がいくつかありますか?
代わりは?(日付クラスを編集して適切なtoString()を与えるだけの立場にないと仮定します)。
それが役立つ場合、私は WebWork で構築された webapp のコンテキストでこれを行っています。
java - MVCアプリのビューレイヤーにJSTLとVelocityを使用する利点は?
現在、Spring MVC アプリケーションを構築しています。ビュー レイヤーと HTML の書式設定を処理するために、タグ ライブラリを備えた JSP ページを使用しようとしていましたが、同じ目的で Velocity テンプレートを使用している社内の別のグループに出会いました。
私が見る限り、2 つのアプローチには多くの類似点があるように思えます。
- どちらもわかりやすい構文です。開発者以外が簡単に理解して使用できるようにすることで、デザイナーは HTML/CSS に集中でき、ディレクティブ/タグ ライブラリを使用する必要があるのは、条件付き/動的コンテンツを完全に理解する必要がない場合に限られます。ジャバ。
- コンテンツのどの部分が HTML であるか、どの部分がディレクティブ/ロジックであるかを簡単に確認できます。
- どちらも頻繁に使用され、十分にサポートされています。
- Spring MVC と簡単に統合できます。
しかし、2 つのテクノロジを比較しても、どちらか一方を使用する特定の理由はわかりません。Velocity または JSTL に固有の短所を考えるのに苦労しています。
私の質問は、それぞれの長所と短所は何だと思いますか? どちらか一方を使用して (Spring) MVC アプリを構築した場合、使用しているビュー レイヤー テクノロジを決定した理由は何ですか。
更新: Spring Framework フォーラムのhereにアーカイブされたこの同じトピックに関する同様の議論を見つけました。これは、私と同じように JSTL と Velocity の間で同じ決定を下す人にとって興味深いものになるかもしれません。
java - Eclipse 用の Velocity エディター プラグイン?
Veloeditを見たことがあります。これは、構文の強調表示が優れているように見えますが、編集中のファイルでタブ文字を使用できず (wtf?)、HTML も理解していません。
少しグーグルで調べたところ、Veloeditに基づいて構築され、HTML サポートも追加されていると主張しているVeloecipseが見つかりましたが、Eclipse 3.4 とは互換性がないようです。
他の誰かが使用している Eclipse 用の Velocity テンプレート エディター プラグインはありますか?
理想的なソリューションには、次の機能があります。
- VTL のシンタックス ハイライト
- HTML構文の強調表示も
- VTL 構文のオートコンプリート
- タブを許可します!
更新:以下の私の答えを見てください
c# - Velocity / NVelocity でファイルを完全に上書きする
.Net アプリケーションで NVelocity テンプレートを使用しようとしています: テンプレートを使用して結果をファイルに出力します。出力が完全に上書きされないという事実を除いて、すべて正常に動作しているようです。ファイルの長さが 100 文字で、テンプレートが 20 文字しかレンダリングしない場合、最後の 80 文字は決して変更されません!
コードサンプル:
したがって、テンプレートが AAAA を出力し、ファイルに既に BBBBBBBB が含まれている場合、最後に、ファイルには op の最後に AAAABBBB が含まれます。
ファイルを完全に上書きする方法の手がかりはありますか? - たとえば、上記の例では、最終的な出力は AAAA である必要があります。これが純粋なストリーム関連のものかどうかはよくわかりませんが、ファイルストリームでこの問題が発生したことはありません。
リセットメソッドを書くか、単にメモリストリームに出力してファイルを上書きするだけで満足ですが、可能であればこのように動作させたいです! **編集:'' を呼び出すことで動作するようになりました
ファイルを開くとき。しかし、もっと良い方法があれば教えていただければ幸いです。
unit-testing - Maven でビルドされたコマンド ライン ユーティリティの Velocity テンプレート ファイルはどこに配置すればよいですか?
Maven を使用して管理している小さなコマンド ライン ユーティリティ プロジェクトがあります。このユーティリティは、Velocity テンプレートにデータを入力し、結果を新しいファイルにダンプするための非常にシンプルなアプリです。私の問題は、Velocity テンプレートをどこに置くかです。それらを に配置するとsrc/test/resources/foo/bar/baz
、テスト用のファイルとテスト中のクラスが配置されてmvn test
いる に明確にあるにもかかわらず、参照されたテンプレートが見つからないため失敗します。テンプレートをプロジェクトの最上位ディレクトリに配置すると、テストはパスしますが、Maven プロジェクト構造に従っていないため、実際にパッケージ化された .jar ファイルが機能しないのではないかと思います。私は何が欠けていますか?target/classes/foo/bar/baz
.class
アップデート:
テスト中のメソッド:
試験方法:
私が配置してテストをパスさせることができる唯一の場所foo.yaml
は、プロジェクトのルート ディレクトリ、つまり と のピアとしてsrc
ですtarget
。
java - Velocity テンプレートで静的メンバーにアクセスするには?
Velocity でこれを行う方法があるかどうかはわかりません:
列挙型のように見える Status という名前のプロパティを持つ User POJO があります (ただし、Java 1.4 で立ち往生しているため、そうではありません)。定義は次のようになります。
Status は静的内部クラスです。
このパターンを使用すると、次のような条件でユーザーのステータスを簡単にテストできます。
...ステータスID、マジックナンバーなどの定数を参照する必要はありません。
ただし、VTL を使用して Velocity テンプレートでこれらの条件をテストする方法がわかりません。次のように、ユーザーのステータスに基づいて単純な文字列を出力したいと思います。
しかし、これは次のような例外をスローします org.apache.velocity.exception.ParseErrorException: Encountered "User" at webpages/include/dashboard.inc[line 10, column 21] Was expecting one of: "[" ...
VTL ユーザー ガイドから、VTLで Java クラス/静的メンバーに直接アクセスすることについて言及されていません。条件の右辺 (RHS) は、数値リテラル、文字列リテラル、プロパティ参照、またはメソッドのみにできるようです。参照。
Velocity テンプレートで静的 Java プロパティ/参照にアクセスする方法はありますか? 回避策として、ステータス ID またはその他の識別子を参照としてコントローラーに埋め込むことができることは承知しています (これは、View テクノロジとして Velocity を使用する Web MVC アプリケーションです)。ビューレイヤーの数値または定数。