在您的应用程序中运行Apache Jackrabbit JCR作为嵌入式服务时,是否有一种快速方法可以在不关闭Jackrabbit的情况下获得Jackrabbit存储库内容的健全和一致的备份?如果是这样的话?
我正在将大量数据导入JackRabbit JCR存储库.一个可视化JCR存储库的良好UI管理工具可以很好地检查导入的数据是否处于良好的布局中,并且还可以使我的开发人员生活更轻松.
我需要使用远程jackrabbit存储库.我使用以下代码连接到本地存储库:
Repository repository = new TransientRepository();
Session session = repository.login(new SimpleCredentials("username", "password".toCharArray()));
Run Code Online (Sandbox Code Playgroud)
这适用于本地存储库但是我该怎么做远程长耳兔?
在我们的项目中,我们使用带有spring和tomcat的jackrabbit来管理pdf文件.
目前,MySql数据库正用于存储blob文件(就jackrabbit而言,它被称为BundleDbPersistenceManager).
一旦生成的文件数量增加,我们就会考虑使用文件系统而不是数据库来提高性能并消除复制开销.在规格 jackrabbit团队建议使用BundleFsPersistenceManager而不是像这样的评论
不适用于生产环境(只读用途除外)
有没有人有使用BundleFsPersistenceManager的经验,并且可以引用从mysql数据库中的blob到文件系统中的文件的无痛迁移的任何资源?
非常感谢你提前
我创建了节点并创建了3个版本.
String path = "/my111";
MyClass m1 = new MyClass();
m1.setPath(path);
m1.setName("Myname");
m1.setLanguage("English");
ocm.create(m1);
ocm.save();
for (int i = 0; i < 4; i++) {
ocm.checkout(path);
m1.setName("mz676666" + i);
ocm.update(m1);
ocm.save();
ocm.checkin(path);
}
VersionIterator iterator = ocm.getAllVersions(path);
while (iterator.hasNext()) {
Version version = (Version)iterator.next();
System.out.println("version::"+version.getName());
}
Output :
version::jcr:rootVersion
version::1.0
version::1.1
version::1.2
version::1.3
Run Code Online (Sandbox Code Playgroud)
现在我想得到name一个版本1.2..
我试过了
org.apache.jackrabbit.ocm.version.VersionIterator iterator = ocm.getAllVersions(path);
while (iterator.hasNext()) {
Version version = (Version)iterator.next();
System.out.println("version::"+version.getName());
MyClass m1 = (MyClass) ocm.getObject(path, version.getName());
System.out.println(m1.getName()); // But …Run Code Online (Sandbox Code Playgroud) 我需要JCR之类的基于标签的搜索系统,如Modeshape.我想通过一些标签搜索节点.问题是,实施它的最佳方法是什么?
我知道AEM在成功验证后如何创建名为"login-token"的cookie.
我的问题是AEM如何在每个请求中验证此cookie?是否有任何过滤器可用于拦截请求然后验证cookie?如果没有,那么AEM如何再次调用吊索认证处理程序?
我在这里找不到http:// host:port/system/console/status-slingfilter
请帮我澄清一下
我是Apache Sling,CQ5等的新手.
在我们的代码库中,我们有一个类似于此的代码段:
void perform(SlingHttpServletRequest request, SlingHttpServletResponse response) {
ResourceResolver resourceResolver = request.getResourceResolver();
Session session = resourceResolver.adaptTo(Session.class);
PageManager pageManager = resourceResolver.adaptTo(PageManager.class);
}
Run Code Online (Sandbox Code Playgroud)
什么adapTo在这里做什么?
还有一个很好的文档/用户手册我可以阅读开始使用Sling,CQ5等?
我有一个具有如下属性的组件.
@Component(immediate = true, metatype = true, label = "Conf Details")
@Service(value = { LocationConfigurationUtil.class })
@Properties({
@Property(label = "location blueprint", name = "locationPath", value = "", description = "..."),
@Property(label = "location page template", name = "locationTemplate", value = "", description = "..."),
@Property(label = "basepath live copies", name = "liveCopyRoot", value = "/content/WebRoot", description = "...") })
public class LocationConfigurationUtil {
@Activate
protected void activate(Map<String, Object> mapCreated) {
// some code
}
}
Run Code Online (Sandbox Code Playgroud)
为了使它成为jcr节点中的可编辑属性,我使用了非标准方法.我sling:OsgiConfig在路径/apps/system/config中创建了具有在java代码中声明的属性,它工作正常. …
很抱歉,这听起来很愚蠢,但是Jackrabbit和Oak有什么区别?我正在研究JCR170,特别是如何在两个jackrabbit安装之间迁移内容,并且遇到过JackRabbit和Oak。
Apache Jackrabbit™内容存储库是Java技术API内容存储库(JCR,在JSR 170和JSR 283中指定)的完全一致的实现。
内容存储库是分层的内容存储库,它支持结构化和非结构化内容,全文本搜索,版本控制,事务,观察等。
Jackrabbit Oak是JCR规范的补充实现。努力实现可伸缩且高性能的分层内容存储库,以用作现代世界级网站和其他要求苛刻的内容应用程序的基础。有关更多信息,请参见Jackrabbit Oak网站。
Apache Jackrabbit是Apache软件基金会的项目
http://jackrabbit.apache.org/jcr/index.html
他们自己的主页说Jackrabbit是实现JCR的内容存储库,而Oak是JCR的补充实现。为什么同一项目有两个JCR实现?