Alfresco FTS - 为什么要转义文件夹名称的第一位数字?
Alfresco FTS - why first digit of folder's name should be escaped?
我有一个关于露天 FTS/lucene 搜索的问题。众所周知,在搜索查询中必须转义一些特殊字符,例如 space (by _x0020_
).
但是发现如果文件夹名首字符是数字,也应该转义。它可以在 Node Browser 中轻松测试,方法是创建一个文件夹,例如 123456 并导航到节点浏览器中的父文件夹(在我的例子中,我有以下文件夹结构:*/2017/123456/):
Primary Path: /app:company_home/st:sites/<some-folders>/cm:_x0032_017/cm:_x0031_23456
^this is 2 ^ and this is 1
如果我不转义文件夹的第一个字符,则会返回 500 错误。
这是为什么,我试图在 Alfresco documentation 中找到相关的内容,但没有成功。
Alfresco v.4.2.0
Lucene 搜索像类似的框架一样使用 ISO 9075 编码 (SQL),因此我们需要对路径元素进行编码。如果 API 像浏览器 url 那样隐藏此要求就好了,但您可以使用 ISO9075Encode 来完成这项工作。
我有一个关于露天 FTS/lucene 搜索的问题。众所周知,在搜索查询中必须转义一些特殊字符,例如 space (by _x0020_
).
但是发现如果文件夹名首字符是数字,也应该转义。它可以在 Node Browser 中轻松测试,方法是创建一个文件夹,例如 123456 并导航到节点浏览器中的父文件夹(在我的例子中,我有以下文件夹结构:*/2017/123456/):
Primary Path: /app:company_home/st:sites/<some-folders>/cm:_x0032_017/cm:_x0031_23456
^this is 2 ^ and this is 1
如果我不转义文件夹的第一个字符,则会返回 500 错误。
这是为什么,我试图在 Alfresco documentation 中找到相关的内容,但没有成功。
Alfresco v.4.2.0
Lucene 搜索像类似的框架一样使用 ISO 9075 编码 (SQL),因此我们需要对路径元素进行编码。如果 API 像浏览器 url 那样隐藏此要求就好了,但您可以使用 ISO9075Encode 来完成这项工作。