読んだついでにTomcatへのインストールガイドを訳してみた。
Installation Guide – BlazeDS – Confluence
Tomcat
BlazeDSをTomcatで使うためには、warファイルを配置した後に以下の作業が必要です。
(BlazeDSに同梱されているTomcatを使用する場合は必要ありません。)
-
最大メモリを512MB以上に設定します。
具体的には、JAVA_OPTSにJVMの最大ヒープサイズを指定するオプションを追加します。
オプション:-Xmx512m - (オプション)
カスタム認証を有効化するために、blazeds_root/resources/security/tomcatにあるライブラリを配置します。
(※ BlazeDSアーカイブのルートをblazeds_root、Tomcatのインストールルートをtomcat_rootとそれぞれ記述する。)- flex-tomcat-common.jarをtomcat_root/lib/blazedsへコピー
- flex-tomcat-server.jarをtomcat_root/lib/blazedsへコピー
-
これらのjarにパスが通るように、tomcat_root/conf/catalina.propertiesを編集します。
具体的には、common.loaderの末尾に${catalina.home}/lib/blazeds/*.jarを追加します。 -
<Valve className="flex.messaging.security.TomcatValve"/>タグをContextディスクリプタに追加します。
例えば、BlazeDS samples WARなら以下のようになります。<Context path="/samples" docBase="${catalina.home}/webapps/samples" debug="0"> <Valve className="flex.messaging.security.TomcatValve"/> </Context>
これで現在のレルムに対して認証ができるようになりました。通常、この認証に使われるユーザ情報はtomcat_root/conf/tomcat-users.xmlに格納されています。
レルムについて詳しくはTomcatのドキュメントを、カスタム認証についてはBlazeDSのドキュメントをご覧ください。 -
BlazeDS WARの/WEB-INF/flex/services-config.xmlにある<login-command>タグを有効化する必要があります。
Tomcatに対しては、<security>タグ内が下記のようになっていることを確認してください。<security> <login-command class="flex.messaging.security.TomcatLoginCommand" server="Tomcat" /> ... </security>
- (オプション)
JMSAdapterをメッセージサービスに使用するなら、JMSプロバイダ(activeMQやopenJMS)をインストールして使えるようにしておく必要があります。 - 以上の作業が終了したら、Tomcatを再起動します。