JBoss ToolsでまともにSeamの開発をできるようにするまでの手順のまとめ

ここ1ヶ月ほどで、JBoss Toolsを使ったSeamの開発環境を構築する上でいろいろ行った対応について、手順を以下にまとめておきます。JBoss ASのバージョンは5.1.0.GAを前提とします。

JBoss Toolsのインストール

現時点では、(Eclipse 3.6ベースのプラグインは不具合が多く、お勧めしません。Eclipse 3.6 + JBoss Tools 3.2.0M2を試してみましたEclipse 3.5.2 + JBoss Tools 3.1.2.GAがよいと思います。JBoss Tools 3.1.2.GAは正式リリースではないようで、ちょっと探しにくいのですが、updateサイトにhttp://download.jboss.org/jbosstools/updates/nightly/3.1.2.GA/でアクセスできます。なお、JSFのビューアーが動作しないため、Windowsであれば32bit版を使う必要があります。

JBoss ASの軽量化

JBoss ASの起動時間を短縮する方法で説明したように、不要なサービスを無効化することで、JBoss ASの起動時間を短縮させます。

JBoss ASのVM起動パラメーターの変更

Seamアプリケーションのホットデプロイ時のメモリーリーク問題(Seamアプリの再デプロイを繰り返すと遅かれ早かれOutOfMemoryErrorが発生する)に対処するため、VMの起動パラメーターに以下を追加します。

-Xms512m -Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=512m
-XX:+UseConcMarkSweepGC -XX:+CMSPermGenSweepingEnabled -Xverify:none
Seamアプリケーションのホットデプロイの有効化

JBoss Tools +JBoss AS5.1.0でSeamアプリのホットデプロイを可能にするための方法にしたがって、ホットデプロイが機能するようにします。

Seamアプリケーションの無限再デプロイ問題への対処

自動的に再デプロイが開始してしまう問題に対処します。(Seamアプリ+JBoss AS 5.1で自動再デプロイが繰り返される)

Test NGプラグインの利用

JBoss ToolsをインストールしただけではTest NGが利用できないため別途プラグインをインストールします。
http://testng.org/doc/download.html
なお、インターネットへ直接接続できない環境では以下の対処が必要です。(HTTP Proxyサーバー経由でのインターネットアクセスしかできない環境でSeamTest(TestNG)が実行できない場合の対策)

メソッド名変更リファクタリング

メソッド名変更リファクタリングが機能するようにするためには、以下の手順を実施します。(JBoss Tools 3.1.1ではメソッド名の変更リファクタリングができない)
ただし、この対処をしても、別例外でリファクタリングに失敗する場合があるようです。