问题标签 [jackrabbit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 无法删除 Jackrabbit 中的版本
我正在尝试从版本历史记录中删除一个版本,但我收到了 javax.jcr.ReferentialIntegrityException: Unable to remove version。至少引用一次。
当我尝试删除对该版本的所有引用时,似乎没有任何引用并且仍然不允许我删除该版本。我确信这不是根版本,我也确定它不是根之后的第一个版本。
这是我的代码:
非常感谢任何帮助,谢谢。
lucene - Jackrabbit XPath 查询中的连字符问题
首先,我只想说我对 JSR-170 和 Jackrabbit/Lucene 很陌生。
我有以下 XPath 查询:
我有一个名为 Sophie-Allen 的用户和一个名为 Sophie-Anne 的用户。使用上述查询搜索返回零结果,其中单独搜索“sophie”返回两个用户。我知道连字符在 JSR-170 中意味着排除,但我已经逃脱了它(如您在上面看到的)。
为什么这个查询没有返回两个用户?
另一个奇怪的事情是当我使用星号时(连字符在执行时都被转义了):
- 搜索
'sophie-allen'
返回 Sophie-Allen 的记录。 - 搜索
'soph*'
返回 Sophie-Allen 和 Sophie-Anne。 - 搜索
'sophie-a*
什么也不返回。 - 搜索
'sophie-allen*'
什么也不返回。
我知道使用 jcr:contains,从技术上讲,您不需要使用星号,但看看上述行为,它似乎有某种效果。
关于 XPath 查询和搜索 JCR 中的连字符和星号,我还有什么遗漏吗?我已经搜索了我能想到的所有内容并通读了规范,但似乎找不到任何可以回答我问题的内容。
提前致谢。
编辑: 看起来“短语查询”不适用于 jcr:contains(不再?),因为默认的 Lucene 分析器在连字符上标记,这意味着它将“sophie-allen”拆分为 sophie 和 allen。
编辑 2: 我尝试使用 Jackrabbit 用户列表中某人建议的自定义分析器和标记器,但这也没有帮助,Lucene 仍在使用连字符并省略我想要的结果。
java - 自定义 JCR (Jackrabbit) 节点属性类型
我想enum
在jackrabbit 中使用一个常量作为属性值。然而,Node.setProperty()
它只接受原始类型,String
并Value
作为属性值类型。
我查看了ValueFactory
界面,但这似乎也无济于事。
换句话说,我想这样做:
而不是这个:
提前致谢。
jackrabbit - JCR 签入/签出操作
我刚开始使用 JCR(apache jackrabbit),我想问一个简单的问题(因为我找不到好的教程):那么我需要 Node.checkout 和 Node.checkin 方法做什么?他们的意思是什么?
谢谢
liferay - 如何将jackrabbit持久性从文件系统切换到数据库?
我有一个 Liferay 门户,它被配置为将文件系统持久性用于 jackrabbit。
似乎这种持久性模式在文件系统上创建了很多文件(到目前为止,大约是 113'000),并且我正在慢慢达到服务器的文件计数配额。
然后我想切换到数据库持久性。我知道如何配置它,但我不知道如何迁移现有内容。
导出和导入各种库(文档、图像等)听起来工作量很大,而且很容易出错,尤其是因为它是一个多宿主部署。另外,我不知道它是否会为文档重新创建相同的 URL,这对我很重要。
简短更新:
我设法升级到 Liferay 6。但是,无法将长耳兔数据从文件系统迁移到 Liferay 内的数据库;数据迁移面板提供的是从 jcr 挂钩迁移到另一个持久性挂钩。
我最初的问题不是将数据保存在数据库中,而是减少文件系统上的文件数量(配额限制)。然后我切换到FileSystemHook
.
这是文件计数 ( find . | wc -l
)。
- JCRHook: 107566
- 文件系统挂钩:2810。
不知道为什么 Jackrabbit 会创建这么多文件...
java - JCR 在运行时查找强制属性
我是一名 Java 开发人员。我现在面对的是jackrabbit v.1.6.4。现在我的目标之一是在基于 Web 的 jcr 浏览器中创建节点,所以当我必须创建具有强制属性的节点时,当然会抛出异常约束。
我的问题是存在一种方式,在运行时创建期间获取强制属性?例如,为它们分配一些默认值,就可以保存节点。
一件非常好的事情是让 PropDef 的实例形成 NodeTypeDef,但从 Node 接口我只能获得 PropertyDefinition,在我的情况下这是无用的。
非常感谢所有人
祝你今天过得愉快
J。
java - 如何更改 JCR 节点的名称?
我正在尝试更改 JCR 节点的名称,但我不知道如何更改?你们有人有什么提示吗?
非常感谢。
java - 将 Jackrabbit 1.3 升级到 Jackrabbit 2.1.1
在我的项目中,我需要将 Jackrabbit 1.3 更改为 Jackrabbit 2.1.1。我的工作是为查询工作。如果索引格式和查询格式有变化,请建议我。Jackrabbit 2.1.1 中使用了 Lucene 2.4,而 Jackrabbit 1.3 中使用了 Lucene 2.2。
lucene - Lucene 长耳兔
最近,我们为与 Jackrabbit(1.6.2) 一起工作的应用程序添加了 Lucene(2.4.1) 支持。我们已经按照jackrabbit教程中描述的方式完成了所有工作。所有的工作几乎都很好。但我注意到一些奇怪的行为,找不到任何关于它的文档。我决定问问你。
例如:我在 jcr:data 属性的 Node(jcr:content) 中有以下文本
我的 XPath 查询如下:
然后我尝试搜索:
“q”、“qu”、“qui”、“quic”、“quick”、“k”、“ck”、“ick”、“uick”、“quick brown fox”、“quick fox”、“tra” , "travmik", "mik" - 一切正常
“tra!vmik”,“travmik!”,“!@#$” - 没有
而且,是的,我从this中转义了所有特殊字符。
我做错了什么?
Ps 我还有一个问题 - 在 Lucene 文档中说“你不能使用 * 或 ? 符号作为搜索的第一个字符”,但我使用它并且它有效。为什么?
metadata - 从 magnolia jcr 中的 xpath-query 过滤“元数据”节点
我在过滤 magnolia 中的 jackrabbit jcr 的特定节点时遇到问题。
当我提交以下查询时://element(*, standort)//*
我得到:
但我只想要节点:
因此没有 MetaData 节点和parent-nodes。我需要下面的一切Standorte
。的子级Standorte
可以是standort-de
或的类型standort-en
。我希望我能让我的问题更清楚。我在我的问题的最后一个版本中缩短了我的输出。到目前为止,我没有找到任何可以帮助我的 xpath 表达式。但这是由于我缺乏 xpath 知识。
提前致谢!