T2用のViliテンプレートをT2-0.6.2-gaに対応しました

T2-0.6.2-gaがリリースされましたので、T2用のViliテンプレートをT2-0.6.2-gaに対応しました。

対応したのは以下のテンプレートです。

  • T2+Seasar2+S2Daoプロジェクト(m2eclipse-light前提)(t2-skeleton-generic)
  • T2+Seasar2+S2Daoプロジェクト(t2-skeleton-simple)
  • T2プロジェクト for GAE/J(t2-skeleton-gae)

これらを使うと簡単にT2プロジェクトを作成することができます。ぜひ試してみて下さい。

Vili-0.3.3.200911041350をリリースしました

Viliの0.3.3系の最初のバージョンとして、Vili-0.3.3.200911041350をリリースしました。

T2プロジェクトのアップデートサイト( http://eclipse.t2framework.org/updates/3.3/ )からアップデート可能です。

0.3.2系からの主な変更点は以下の通りです。

  • ケルトン/フラグメント固有の設定画面を一覧表示ではなくスケルトン/フラグメント毎に独立したタブで表示するようにしました。
  • ケルトン/フラグメントの展開方法を細かく制御するためのIConfiguratorインタフェースを拡張しました。
  • ケルトン/フラグメントを探索するMaven2リポジトリを追加するための拡張ポイントを追加しました。
  • データベース定義を追加するための拡張ポイントを追加しました。
  • 基本設定を別プラグインとして切り出しました。

いくつかのスケルトン/フラグメントは0.3.3以上でないと動作しないため、0.3.2系以前のViliをお使いの方はバージョンアップをするようお願いします。

また、基本設定を別プラグイン(org.t2framework.vili.setting)として切り出しましたので、そちらも併せてインストールするようお願いします。

staticメソッドにアクセスする

FreemarkerJavaクラスのstaticメソッドにアクセスする方法。

直接はできないっぽいが、freemarker.ext.beans.BeansWrapperを使うと比較的楽に実現可能。

ソース:

Configuration cfg = new Configuration();
cfg.setTemplateLoader(new ClassTemplateLoader(getClass(), "/"));

Map<String, Object> root = new HashMap<String, Object>();
root.put("statics",
    BeansWrapper.getDefaultInstance().getStaticModels());

StringWriter writer = new StringWriter();

cfg.getTemplate("sample.ftl").process(root, writer);

System.out.println(writer.toString());

sample.ftl

Current time is ${statics["java.lang.System"].currentTimeMillis()?c}

結果:

Current time is 1256895102406

ちなみにテンプレート中の「?c」は数字をそのまま表示するための指定。

S2ClassBuilder 0.0.11をリリースしました

Seasar2.4のdicon中のコンポーネントを柔軟に差し替えられるようにするための拡張機能であるS2ClassBuilderの0.0.11をリリースしました。

S2ClassBuilderの使い方は以下のドキュメントを参照して下さい。

http://ymir.seasar.org/docs/1.0.x/ref/dicon

変更点は以下の通りです。

Bug

  • [CMS-42] - [s2-classbuilder] ルート階層にないdiconについて「++XXX.dicon」でマージができない

Mobylet1.0.1がリリースされましたね

Mobylet1.0.1がリリースされましたね。画像リサイズ処理に若干のセキュリティ的な懸念があって作者様に対処を希望していたのですが、早速対処していただけました!ありがとうございました!

ローカル画像のリサイズ機能に対応

現在のMobyletの作りではYmir+ZPT+Mobyletではローカル画像のリサイズ機能がうまく使えないことが分かったので対応してみました。また、<m:img>タグにも対応してみました。

他にも、実はMobyletのS2連携機能のうちMobyletの内部コンポーネントをdiconに指定できる機能がYmir+ZPT+Mobyletではうまく働かない問題があって、こちらも併せて対処しました。また、Mobylet1.0.1を使うようにも変更しました。

続きを読む