Glassfish 3.1.2 (プロバイダーは EclipseLink) で JPA 2.0 を使用する EJB アプリケーションがあります。データベースがダウンすると、アプリケーションは起動せず、さらに展開できません。これは、EclipseLink がいくつかの初期検証を行うためです。
データベースがダウンしている場合でも、アプリケーションをデプロイして開始できる方法はありますか?
背景: 利用できないリソースは、データベースにアクセスする最初のビジネス関数が呼び出されるまで有効になりません。アプリケーションの起動から最初のビジネス関数呼び出しまで、データベースを起動できる時間枠があります。
glassfish-resources.xml
属性connection-creation-retry-attempts
とのデフォルトを変更すると、何らかの方法connection-creation-retry-interval-in-seconds
で<jdbc-connection-pool>
役立ちますが、最初の使用時ではなく、起動時にデータベースの可用性をチェックします。
ExceptionHandler
EclipseLink からの接続は、私が考えている方法ではありません。例外ハンドラが機能するようになると、EclipseLink はすでに検証プロセスを開始しているため、データベースに接続しようとしています。私が探している方法は、検証プロセス自体を最初の商談まで延期することです。