古いファイルをアーカイブ リポジトリに移動するための現在実行中のリポジトリ。
ドキュメント ノードをコピーできます。問題は、バージョン ノードのコピーにあります。
バージョンのすべてのプロパティをコピーする方法がよくわからないため、反復しようとしています:
VersionManager versionManager1 =
oldChildNode.getSession().getWorkspace().getVersionManager();
versionManager1.checkout(oldChildNode.getPath());
VersionHistory versionHistory1 = versionManager1.getVersionHistory(oldChildNode.getPath());
VersionIterator versions = versionHistory1.getAllVersions();
while (versions.hasNext()) {
try {
Version versionedNode = versions.nextVersion();
NodeIterator nodeIterator = versionedNode.getNodes();
System.out.println(" Version is :: " + versionedNode.getName());
while (nodeIterator.hasNext()) {
Node currentNode = nodeIterator.nextNode();
System.out.println(" JCR Title :: " + currentNode.getName());
}
}catch(UnsupportedRepositoryOperationException jcrexce){
logger.info("Exception while accessing versioned nodes >> ");
jcrexce.printStackTrace();
} catch(PathNotFoundException pexec){
pexec.printStackTrace();
}
}
ドキュメント ノード --> nt:resource が追加されます
Structure:
/**
* Document node
*/
[et:document] > nt:file, mix:title, mix:versionable, mix:shareable
+ * (nt:file) VERSION
- et:tags multiple
- et:role multiple
- et:docUserList multiple
- et:id (LONG)
- et:favourites (BOOLEAN)
- et:lastAccessed (STRING)
- et:lastAccessedOn (DATE)
- et:documentSize (LONG)
- et:fileOwnerName (STRING)
- et:fileOwnerId (STRING)
- * (undefined)
バージョン管理されたノードを移動する方法に関する指針はありますか (ワークスペースのコピーではなく、リポジトリから別のリポジトリに)?
Jackrabbit 2.8.0 を使用した Java 1.6 での実行