1

次のコードの何が問題になっていますか?

    @PrePersist
    public void preSave() throws DuplicatePinException  {
        Logger.info("PRESAVE");
        for (PinBoard pb : board.pins) {
            if (pb.pin.id.equals(this.pin.id)) {
                throw new DuplicatePinException();
            }
        }
    }

このメソッドは、私の PinBoard クラスにあります。重複したエントリを保存できないことを簡単に検証する方法が必要でした。ただし、メソッドを含めると、何も保存されません。これまで。までたどり着きましたboard.pins。ピンはデフォルトで遅延ロードされたコレクションであると想定しているため、保存時に強制的に初期化すると何かが台無しになる可能性があります。

Play 1.2.5 を使用しています

4

1 に答える 1

0

プレイ1についてはわかりませんが、プレイ2では@PrePersistが含まれていないため、メソッドが呼び出されることはありません

于 2013-03-21T19:46:31.983 に答える