バージョン管理されたデータを保存するために Apache Jackrabbit を使用しています。バージョン管理の基本については、Jackrabbit wiki にリストされているテンプレートに従っていますが、期待どおりに機能しないことが 1 つあります。
wiki からコードを実行した後、別のバージョンのノードを保存して、そのバージョン文字列を取得してみます。
child = parentNode.getNode("childNode");
child.checkout();
child.setProperty("anyProperty", "Blah3");
session.save();
Version thisVersion = child.checkin();
System.out.println(thisVersion.getName());
1.1にしたい場合、このコードの出力は1.0.0です。私の目標は、ノードの最後のバージョンと最後のバージョンのみを削除し、次のバージョンを削除したバージョンと同じ名前にすることです。ノードが追加されているときにのみこれを行うことに関心があります。ノードをチェックインし、(バージョン番号を取得するために) 例外がスローされずに名前を読み取ることができれば、バージョンを削除できなくても問題ありません。インターネットを見回しても、これを達成する方法が見つかりません。