4

Eclipselink JPA 2.0 接続の再試行動作を変更する方法。Eclipselink は、接続障害を検出すると自動的にデータベースに再接続しようとします。これにより、swing ui がデータベースに接続するまで応答なしでフリーズします。この動作を変更する解決策はありますか。つまり、再試行せずに接続が失敗したときに例外をスローすることは可能ですか?私が大きな問題に直面しているこの問題について助けてください。

私はeclipselinkのソースコードとグーグルに行きましたが、解決策が見つかりませんでした。

4

1 に答える 1

7

SessionCustomizer を使用すると、接続の再接続を無効にすることができます。

package acme;
import  org.eclipse.persistence.internal.sessions.factories.SessionCustomizer;
import org.eclipse.persistence.sessions.Session;
import org.eclipse.persistence.sessions.DatabaseLogin;

public class EmployeeSessionCustomizer implements SessionCustomizer {

    public void customize(Sesssion session) {
        DatabaseLogin login = (DatabaseLogin)session.getDatasourceLogin();
        login.setConnectionHealthValidationOnError(false);
    }
}

このカスタマイザは、持続性ユニットのプロパティを通じて設定できます

 <property name="eclipselink.session.customizer" value="acme.EmployeeSessionCustomizer"/>
于 2011-03-15T13:59:21.387 に答える