Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mongodb 为什么Jackrabbit全文查询没有';不行?_Mongodb_Full Text Search_Jackrabbit_Jcr Sql2_Jackrabbit Oak - Fatal编程技术网

Mongodb 为什么Jackrabbit全文查询没有';不行?

Mongodb 为什么Jackrabbit全文查询没有';不行?,mongodb,full-text-search,jackrabbit,jcr-sql2,jackrabbit-oak,Mongodb,Full Text Search,Jackrabbit,Jcr Sql2,Jackrabbit Oak,我尝试与jcr jackrabbit oak、mongoDb和query合作 首先,我向存储库添加了一些文件 现在我想使用全文搜索 使用查询时: Session session = getSessions(); Workspace workspace = session.getWorkspace(); QueryManager queryManager = workspace.getQueryManager(); Query query = queryMana

我尝试与jcr jackrabbit oak、mongoDb和query合作

首先,我向存储库添加了一些文件

现在我想使用全文搜索

使用查询时:

    Session session = getSessions();

    Workspace workspace = session.getWorkspace();
    QueryManager queryManager = workspace.getQueryManager();

    Query query = queryManager.createQuery("SELECT [nt:file].* FROM [nt:file],Query.JCR_SQL2);

    QueryResult result = query.execute();

    log.info("Size nodes " + result.getRows().getSize());
从日志:2019-02-2815:11:50.959信息63248---[nio-8080-exec-5] c、 e.r.service.DocumentManagementService:大小节点8

因此,当我尝试使用如下查询时:

Query query = queryManager.createQuery("SELECT [nt:file].* FROM [nt:file] WHERE contains(*, 'insert)",Query.JCR_SQL2);
c、 e.r.service.DocumentManagementService:大小节点0

一,;我确信每个文件都有一个单词“insert”

我做错了什么

非常感谢

所以我还创建了索引lucene:

String indexPath = "/oak:index/lucene";
Node lucene = JcrUtils.getOrCreateByPath(indexPath, JcrConstants.NT_UNSTRUCTURED,
        "oak:QueryIndexDefinition", session, false);
lucene.setProperty("async", "async");
lucene.setProperty(IndexConstants.TYPE_PROPERTY_NAME, "lucene");
lucene.setProperty(FulltextIndexConstants.EVALUATE_PATH_RESTRICTION, true);
lucene.setProperty(LuceneIndexConstants.INDEX_PATH, indexPath);
lucene.setProperty(FulltextIndexConstants.COMPAT_MODE, IndexFormatVersion.V2.getVersion());

Node indexRules = lucene.addNode(FulltextIndexConstants.INDEX_RULES, JcrConstants.NT_UNSTRUCTURED);
Node ntBaseRule = indexRules.addNode(JcrConstants.NT_BASE);

ntBaseRule.setProperty(FulltextIndexConstants.INCLUDE_PROPERTY_TYPES,
        new String[] {PropertyType.TYPENAME_BINARY, PropertyType.TYPENAME_STRING});

Node propNode = ntBaseRule.addNode(FulltextIndexConstants.PROP_NODE);

Node allPropNode = propNode.addNode("allProps");
allPropNode.setProperty(FulltextIndexConstants.PROP_ANALYZED, true);
allPropNode.setProperty(FulltextIndexConstants.PROP_NODE_SCOPE_INDEX, true);
allPropNode.setProperty(FulltextIndexConstants.PROP_NAME, FulltextIndexConstants.REGEX_ALL_PROPS);
allPropNode.setProperty(FulltextIndexConstants.PROP_IS_REGEX, true);
allPropNode.setProperty(FulltextIndexConstants.PROP_USE_IN_SPELLCHECK, true);

Node aggNode = lucene.addNode(FulltextIndexConstants.AGGREGATES);

Node aggFile = aggNode.addNode(JcrConstants.NT_FILE);
aggFile.addNode("include0").setProperty(FulltextIndexConstants.AGG_PATH, JcrConstants.JCR_CONTENT);
节点的大小为0

请大家帮帮我:)