Modeshape文檔的7.1.6節說'您的應用程序現在可以使用標準JCR 2.0 API創建和刪除工作區。'創建新工作區
的JCR 2.0醫生說使用Workspace.createWorkspace(字符串名稱)
如何讓我的資料庫,這部分使用的代碼在這篇文章底部得到?
另外,如何獲取已在存儲庫中的工作區列表?
感謝
for (RepositoryFactory factory : ServiceLoader.load(RepositoryFactory.class)) {
if (factory instanceof org.modeshape.jcr.api.RepositoryFactory) {
org.modeshape.jcr.api.RepositoryFactory modeshapeRepositoryFactory = (org.modeshape.jcr.api.RepositoryFactory) factory;
final Repositories repositories = modeshapeRepositoryFactory.getRepositories(JCR_CONFIG_FILE_URL);
if (repositories != null) {
Set<String> repositoryNames = repositories.getRepositoryNames();
if (repositoryNames != null) {
for (String repoName : repositoryNames) {
log.info(repoName);
}
}
}
else {
System.out.println("repositories reference was null");
}
}
try {
repository = factory.getRepository(parameters);
if (repository != null) {
printRepoDetails(repository, parameters, factory);
repositoryFactory = factory; // Keep reference to allow clean shutdown. Not part of JCR 2.0
break;
}
}
catch (RepositoryException e) {
log.error("Error getting repository: \n" + e.toString());
e.printStackTrace();
}
}
振形支持使用標準的API,以獲得從RepositoryFactory存儲庫,並登錄到存儲庫來獲取會話。所以大多數客戶可以/應該只使用標準接口。但標準的JCR API沒有指定一個存儲庫是否有名稱,因此不提供獲取存儲庫名稱列表的方式。 ModeShape確實將存儲庫與名稱相關聯,因此提供了上面顯示的ModeShape特定的接口。 – 2012-03-22 12:04:57