kagamihogeの日記

kagamihogeの日記です。

JBossAS7.1をEclipseから起動してしばらくすると停止する

ちゃんと起動もするしデプロイも出来る。しかし、しばらくするとEclipseが下記のダイアログボックスを出してStoppedになる。

Server JBoss 7.1 CR1b Runtime 1 Server was unable to start within 450 seconds. If the server requires more time, try increasing the timeout in the server editor.

エラー的には、頑張ったけど起動できずにタイムアウトしちゃったよ、というようなことが書いてある。起動してるしブラウザからもアクセスできるんだけどもね。

でもまぁ確かにおかしな点がある。下図のように、Progressビュー上ではJBossがずっとStartingのままになってるんですよね。

これの対処方法。まずServersビューから該当のサーバをダブルクリックして設定画面を出す。Server State DetectorsをJBoss 7 Manager ServiceからTimeoutに変更。動作をわかりやすくするため、TimeoutsのStart(in seconds):を450から10に変える。上書き保存。下記のメッセージボックスが出るが、とりあえず無視。コレで、しばらくしても停止しなくなるし、ProgressビューのStartingのままってこともなくなる。

The Server cannot be saved for the following reasons;
1つ以上のポートが、無効な値を持っています。これはサーバーと連携動作するツールの機能に悪影響を与えるかもしれません。

んで、「jboss 7 manager service」でぐぐってみると下記のブログがひっかかった。

JBoss Tools - JBoss AS 7.1 Beta1 with JBoss Tools - use web port poller!

俺が遭遇したのとは別の原因について語っているようだが、JBoss AS 7.1とJBoss Toolsという非常に限定的な状況ではバグがありJBoss 7 Manager Serviceでのスタートアップ監視が出来ない、とかなんとか書いてある。当座の回避方法もスクリーンショット付きで書かれており、Web Portを使いなされ、と書いてある。この設定だと「1つ以上のポートが〜」の警告メッセージも出なくなった。俺がやったようにTimeoutじゃなくてWeb Portでの設定のが良さそうな感じです。

まぁ最も現状ではJBoss AS 7.1+JBoss Toolsでバリバリ開発するような局面はそうそうないと思うから、そんなに困らないんだけど、一応メモとして。