- - PR -
JBOSS+EJB+データソース(フェイルオーバー)について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2006-01-26 11:30
JBOSS4.01Xを使ってEJB開発を行っております。
データベースはPostgreSQL8.0で、EJBからはデータソースを使ってコネクトしております。 データソースは、には以下の定義を行っております。 これは、データベースの接続に失敗した際、再接続する定義になります。 <connection-property name="autoReconnect">true</connection-property> スタンダードなJAVAプログラムからJDBCプログラミングで行った場合は、上記の設定で、再接続できます。 たとえば、PostgreSQLのサービスをいったん停止して、起動した後、接続できるかどうかのことを言っております。 EJBクライアント(Servlet)からリモート呼び出しで、 EJBのセッションBEAN(ステートレス)を呼び出し、 その中からデータベースにコネクト(データソースを使って)してます。 この場合、PostgreSQLをいったん停止して起動した後、行うと、データベースの接続に失敗します。 JBOSSを再起動、あるいはEJBとEJBクライアントプログラムを再デプロイすれば問題は解決します。 データソースのフェイルオーバー機能は有効にしても、EJBオブジェクトなのかプールの情報なのかわかりませんが、キャッシュされているような感じがします。 JBOSSを再起動あるいはデプロイしなくても、 失敗した場合再接続させる為の設定あるいは手法ありましたら、ご教授ください。 (standardjboss.xml?JBOSS.XML??) 勉強不足のところあるかもしれませんが、 よろしくお願いいたします。 |
1