« スタンプ箱ロック | トップページ | FindBugs 導入 »

2009年10月14日 (水)

カルテ保存後ウインドウを閉じる(続々)

カルテ保存後にウインドウを閉じる問題で,もう1ヶ所,気になる場所を発見。ここも,病名をデータベースに書き込んでいる途中で Chart を閉じてしまうと,DBTask.java 内部から Chart を呼んでいるところが,消えかけの Chart にアクセスしてしまう可能性があるのではないだろうか。ここも,DiagnosisPutTask が完了するまで待つことにした。【2009/10/18追記】他にも知らないところで DBTask が走っていると,消えかけの Chart にアクセスする可能性があるかもしれないので,もっと根本的な解決法を検討中。

 

client/DiagnosisDocument.java

/**
 * 新規及び変更された傷病名を保存する。
 */
@Override
public void save() {
 ・
 ・
  DocumentDelegater ddl = new DocumentDelegater();
  DiagnosisPutTask task = new DiagnosisPutTask(getContext(), addedDiagnosis, updatedDiagnosis, sendDiagnosis, ddl);
//task.execute();
//↓diagnosis を save 中に Chart が dispose されないように待つことにする
  task.executeInForeground();
}

« スタンプ箱ロック | トップページ | FindBugs 導入 »

OpenDolphin」カテゴリの記事