run()
ランナブルのメソッドに次のコードを書きました。
try {
dbConnection = MyApp.datasource.getConnection();
} catch (SQLException e) {
logger.log(Level.SEVERE, "Could not obtain a DB connection! Re-enqueuing this task. Message: " + e.getMessage(), e);
MyApp.executor.execute(this);
return;
}
ご覧のとおり、タスクが DB 接続を取得できない場合は、実行前と同じキューに再エンキューする必要があります。
これはおそらく安全だと思いますが、おかしい気がします。見逃している問題がないことを確認したいだけです。
ありがとう!