标签: jcr

什么是Java和Spring中的JCR

我已经学习了java spring hibernate MVC 3个月了,并且对此非常了解.但我还不明白JCR的含义.

我的意思是,例如在我的简单网站中,在MVC中,可以在JCR中完成哪些部分

java spring jcr

3
推荐指数
1
解决办法
2596
查看次数

人类JCR工作空间的解释和使用案例

可以请任何人解释有关JCR工作空间的JCR 2.0规范吗?

我知道会话总是绑定到一个持久工作空间,尽管单个持久工作空间可能绑定到多个会话.

这可能与版本控制和交易有关,但我不知道为什么.

一些观察:

  • 只能在同一工作空间的节点之间进行引用
  • 执行查询将始终定位到单个工作区

工作区似乎是关于表示相同内容(相同UUID)的节点,在:

  • 不同版本的"东西",项目可能吗?
  • 工作流程的不同阶段

并且不应该用于ACL.

同样在JackRabbit中,每个工作区都有其持久性管理器.而ModeShape有一个源连接器 - 独立于工作空间.

workspace jackrabbit jcr modeshape

3
推荐指数
1
解决办法
3214
查看次数

Jackrabbit配置类org.apache.jackrabbit.core.persistence.pool.OraclePersistenceManager不包含名为tableSpace的属性

我尝试使用带有Oracle DB的Jackrabbit作为持久层.因此我在Tomcat 6服务器(本地)上安装了Jackrabbit.数据库在虚拟机中运行.从Jackrabbits项目页面安装war文件后,我使用了默认的安装机制.之后,我更改了配置(repository.xml)并删除了所有文件夹(工作区和存储库).所以我的Jackrabbit文件夹只包含repositry.xml和bootstrap.properties.

这是我的reporitory.xml

<Repository>
    <FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
        <param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
        <param name="url" value="jdbc:oracle:thin:@localhost:1521:XE"/>
        <param name="user" value="JCR" />
        <param name="password" value="test"/>
        <param name="schema" value="oracle"/>
    </FileSystem>
    <DataStore class="org.apache.jackrabbit.core.data.db.DbDataStore">
        <param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
        <param name="url" value="jdbc:oracle:thin:@localhost:1521:XE"/>
        <param name="user" value="JCR" />
        <param name="password" value="test"/>
    </DataStore>
    <Security appName="Jackrabbit">
        <SecurityManager class="org.apache.jackrabbit.core.DefaultSecurityManager" workspaceName="security">
        </SecurityManager>
        <AccessManager class="org.apache.jackrabbit.core.security.DefaultAccessManager">
        </AccessManager>

        <LoginModule class="org.apache.jackrabbit.core.security.authentication.DefaultLoginModule">
           <param name="anonymousId" value="anonymous"/>
           <param name="adminId" value="admin"/>
        </LoginModule>
    </Security>

    <Workspaces rootPath="${rep.home}/workspaces" defaultWorkspace="default"/>
    <Workspace name="${wsp.name}">
        <FileSystem class="org.apache.jackrabbit.core.fs.db.OracleFileSystem">
            <param name="driver" value="oracle.jdbc.driver.OracleDriver"/>
            <param name="url" value="jdbc:oracle:thin:@localhost:1521:XE"/>
            <param name="user" value="JCR" />
            <param name="password" value="test"/>
            <param …
Run Code Online (Sandbox Code Playgroud)

oracle jackrabbit jcr oracle11g

3
推荐指数
1
解决办法
4099
查看次数

apache camel jcr jackrabbit

我是骆驼世界的新手,我在与jcr组件建立连接方面遇到了问题.看看我的测试代码:

import org.apache.camel.builder.RouteBuilder;
import org.apache.camel.component.jcr.JcrConstants;
import org.apache.camel.test.junit4.CamelTestSupport;
import org.junit.Test;


public class ObjectToJCRRouteTest extends CamelTestSupport {

    @Override
    protected RouteBuilder createRouteBuilder() throws Exception {
        return new RouteBuilder() {
            @Override
            public void configure() throws Exception {
                from("direct:a")
                        .setProperty(JcrConstants.JCR_NODE_NAME,
                                constant("node"))
                        .setProperty("my.contents.property", body())
                        .to("jcr://admin:admin@localhost:8080/home/test");
            }
        };
    }

    @Test
    public void putJCRNode() throws Exception {
        template.sendBodyAndHeader("direct:a", null, null, null);
        Thread.sleep(1000);
    }
}
Run Code Online (Sandbox Code Playgroud)

我试过了jcr:// admin:admin @ localhost/home/test","jcr:// admin:admin @ localhost:8080/home/test","jcr:// admin:admin @ localhost:8080/repository /家/测试"

我使用rmi使用存储库资源管理器(http://www.subshel​​l.com/en/toromiro/index.html)测试了jackrabbit 并且连接成功了

在任何帮助下提前感谢!

我的jackrabit服务器是:

jmartinez @ jmartinez:〜/ software/jackrabbit $ java -jar …

apache-camel jackrabbit jcr

3
推荐指数
1
解决办法
1157
查看次数

将CQ5组件设置为可编辑或不可编辑

如果我想在页面A中设置可编辑的cq5组件,但在页面B中不可编辑,是否可行.

例如:在页面A,我有C组件,我们允许作者打开对话框并编辑组件.但是我们不允许作者打开对话框来编辑页面B上的组件C.我尝试研究cq:EditConfig 链接,但这还不足以解决我的问题.

java jackrabbit jcr sling aem

3
推荐指数
1
解决办法
2910
查看次数

CQ从当前节点(当前组件)访问深子节点的属性

我正在研究一个名为"tabbedcarousel"的轮播组件,我需要遍历它的子节点来访问图像属性.见下图:

在此输入图像描述

那个"tabbedimagecarouselunselectedimage" - >"fileReference"是我需要得到的.

说我目前在"tabbedcarousel.jsp"上工作,我可以访问我的currentNode,所以我假设得到深子img属性的方式是这样的:

<%


        NodeIterator tabbedCarouselChildNodes = currentNode.getNodes();
        while(tabbedCarouselChildNodes.hasNext()){
            Node parNode = tabbedCarouselChildNodes.nextNode();

            NodeIterator parChildNodes = parNode.getNodes();
            while(parChildNodes.hasNext()){
                Node tabbedCarouselItemNode = parChildNodes.nextNode();

                NodeIterator tabbedCarouselItemChildNodes = tabbedCarouselItemNode.getNodes();
                while(tabbedCarouselItemChildNodes.hasNext()){
                    Node tabImgNode = tabbedCarouselItemChildNodes.nextNode();
                    %>
                    test here s the img property : <%= tabImgNode.getProperties("fileReference").toString()%> !!!
                    <% 
            }
        }

%>
Run Code Online (Sandbox Code Playgroud)

但它不起作用.希望有人可以给我一些建议.谢谢

jsp components jcr sling aem

3
推荐指数
1
解决办法
1万
查看次数

AEM DefaultValue写入JCR

我注意到,当我为下拉列表设置defaultValue时,在我第一次将组件添加到页面时,在下拉列表中正确选择它时,它不会将defaultValue写入相应的JCR,直到我编辑组件并保存它.即使我只是打开相应的对话框并单击"确定",我的组件也会按预期工作,因为这些值已添加到JCR中.

我确信我在这里缺少一个重要的部分,是否有人知道为了使组件正确呈现所需的defaultValues如何在首次添加到页面时添加到JCR中?

jcr aem

3
推荐指数
1
解决办法
2678
查看次数

DMS的JCR与JPA:性能,优点,缺点

在对JCR或RDBMS进行了一些研究并阅读了其他文章之后,我仍然不确定是否将JCR over JPA用于文档管理系统,该系统必须处理不同的文档类型,非常大的文件以及许多文档的并发访问用户。

我考虑JCR的主要理由是因为文档对我来说看起来像内容,并且该规范已经解决了它所带来的一些问题-大多数我对存储和版本控制感兴趣。另外,我想将文档内容封装在JCR实现中,并将JPA用于其他所有特定于应用程序的内容。

也许有人可以帮我解决剩余的问题:

  • JCR的读取/查询性能与JPA有什么关系(我知道它在实现上应该有很大的不同,但是可能会有一些经验法则)?
  • 是否有人在具有某些特定JCR实现的类似用例中具有实际经验?如果是这样,您是否将其与关系数据库(JPA)混合使用?
  • 考虑到文件存储和版本控制的好处,值得引入JCR的开销吗?(我很可能会使用自己的自定义使用访问控制(JPA),并且不需要额外的灵活性即可在运行时引入新的节点属性)
  • 是否有人对数据完整性和备份解决方案有任何经验?

更新:尽管已经详细回答了这个问题,但从更实际的角度来看,可能有人会对它的使用有更严格的了解。我个人越来越关注以下与技术无关的问题:

  1. 文档:Jackrabbit的文档很差,OCM的指南第一段中包含一个无效链接,一些示例搜索查询由于未知原因引发了异常,非常基础的教程中有一个TODO,并且它的独立服务器在JDK8中无法正常工作,完全没有记录。
  2. 成熟度:Jackrabbit Oak似乎仍在开发中,其他解决方案似乎要么被放弃,要么正在边缘化。
  3. 社区:在对面JPA,做JCR导致更少的方式研究命中。当刚接触该技术的项目团队陷入(重大)问题中时,这可能是一个真正的问题。

java jpa jackrabbit jcr dms

3
推荐指数
1
解决办法
1456
查看次数

如何将图像存储到 jackrabbit 并将这些图像传送到 HTML 页面?

如何将图像存储到 jackrabbit 并将这些图像传送到 HTML 页面?前任。如果用户将从一个 HTML 页面上传多张图像,那么他应该能够在需要时在下一个 html 页面或任何其他页面中看到所有这些图像

java jackrabbit jcr

2
推荐指数
1
解决办法
3266
查看次数

安装软件包 Adob​​e AEM 时出现“org.apache.jackrabbit.core.data.DataStoreException:无法添加记录”异常

软件包安装过程中出现下一个错误:

    25.09.2018 14:19:29.154 *ERROR* [qtp2146607925-109] org.apache.jackrabbit.vault.packaging.impl.ZipVaultPackage Error during install.
    javax.jcr.RepositoryException: Inaccessible value
            at org.apache.jackrabbit.oak.plugins.value.ErrorValue.createException(ErrorValue.java:94)
 ...
            at org.apache.jackrabbit.vault.fs.impl.io.FileArtifactHandler.importNtResource(FileArtifactHandler.java:359)
            ... 58 common frames omitted
    Caused by: org.apache.jackrabbit.core.data.DataStoreException: Could not add record
            at org.apache.jackrabbit.core.data.FileDataStore.addRecord(FileDataStore.java:230)
            at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.addRecord(DataStoreBlobStore.java:538)
            at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.writeStream(DataStoreBlobStore.java:637)
            at org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore.writeBlob(DataStoreBlobStore.java:224)
            ... 70 common frames omitted
    Caused by: java.io.IOException: Can not rename /opt/aem/data-store/tmp3776489360147109357.tmp to /opt/aem/data-store/b6/ea/7d/b6ea7d9744c3fe943e9166246f559558278b287cc532cef6d97a9ad4036bdb5c (media read only?)
            at org.apache.jackrabbit.core.data.FileDataStore.addRecord(FileDataStore.java:205)
            ... 73 common frames omitted
Run Code Online (Sandbox Code Playgroud)

由于异常而无法安装该软件包。Adobe AEM 6.3

jcr aem

2
推荐指数
1
解决办法
4212
查看次数

标签 统计

jcr ×10

jackrabbit ×6

aem ×4

java ×4

sling ×2

apache-camel ×1

components ×1

dms ×1

jpa ×1

jsp ×1

modeshape ×1

oracle ×1

oracle11g ×1

spring ×1

workspace ×1