Apache Jackrabbit を使用して、まったく同じパスに 2 つのノードを作成しました
root.addNode("hello");
ItemExistsException
here で説明されているように、2番目の追加がスローされることを完全に期待していましたが、そうではありませんでした。
ノードのパスを印刷して何が起こっているのかを確認
/hello
すると、最初のノードと
/hello[2]
2 番目のノードが表示されます
さらに、ノードを削除すると、セッションを保存する前にノードの存在を確認するテストに合格しますが、セッションを保存した後、同じ条件の 2 回目のテストに失敗します。
session.getNode("/hello").remove();
assertFalse(session.nodeExists("/hello"));
session.save();
assertFalse(session.nodeExists("/hello"));
何が起きてる?これは、Jackrabbit の仕様から逸脱したバグまたは何らかの機能ですか?