How to include synonym.txt of index while packaging? | Community
Skip to main content
Level 2
December 6, 2021

How to include synonym.txt of index while packaging?

  • December 6, 2021
  • 2 replies
  • 1952 views

I have created  synonym.txt for a index  in one environment  and trying to import to another environment using ensure oak of acs commons.After import i am not able to see synonym.txt .

 

Followed link: https://adobe-consulting-services.github.io/acs-aem-commons/features/ensure-oak-index/index.html

 

Details are :

Local Author:

 

After exporting package , i see like this:

 

 synonymn.txt is under filters folder.

 

I created damAssetLunce.xml under my projects apps/oak-index

 

<?xml version="1.0" encoding="UTF-8"?>
<jcr:root xmlns:oak="http://jackrabbit.apache.org/oak/ns/1.0" xmlns:dam="http://www.day.com/dam/1.0" xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0" xmlns:rep="internal"
compatVersion="{Long}2"
async="async"
jcr:primaryType="oak:Unstructured"
type="lucene">
<aggregates jcr:primaryType="nt:unstructured">
<dam:AssetContent jcr:primaryType="nt:unstructured">
<include0
jcr:primaryType="nt:unstructured"
path="related"/>
<include1
jcr:primaryType="nt:unstructured"
path="related/*"/>
<include2
jcr:primaryType="nt:unstructured"
path="related/*/*"/>
</dam:AssetContent>
</aggregates>
<analyzers jcr:primaryType="nt:unstructured">
<default jcr:primaryType="nt:unstructured">
<tokenizer
jcr:primaryType="nt:unstructured"
name="Standard"/>
<filters jcr:primaryType="nt:unstructured">
<Synonym
jcr:primaryType="nt:unstructured"
synonyms="synonym.txt">
<synonym.txt/>
</Synonym>
</filters>
</default>
</analyzers>
<indexRules jcr:primaryType="nt:unstructured">
<dam:AssetContent
jcr:primaryType="nt:unstructured"
includePropertyTypes="all">
<properties jcr:primaryType="nt:unstructured">
<cqParentPath
jcr:primaryType="nt:unstructured"
analyzed="{Boolean}true"
isRegexp="{Boolean}false"
name="cq:parentPath"
nodeScopeIndex="{Boolean}true"
propertyIndex="{Boolean}true"
useInExcerpt="{Boolean}true"/>
</properties>
</dam:AssetContent>
</indexRules>
</jcr:root>

 

in same oak-index ,i moved damAssetContentLucene folder

 

 

Local Publish

After import into another environment, i see the following:

I cannot find/not imported  synonymn.txt in the server.

Can someone suggest me , what wrong i am doing?.

Thanks in advance

 

@joerghoh  @vijayalakshmi_s 

 

 

 

This post is no longer active and is closed to new replies. Need help? Start a new post to ask your question.

2 replies

Vijayalakshmi_S
Level 10
December 6, 2021

Hi @dillibabu77,

In the imported environment (in this case, local publish where you don't find synonym.txt file), can you check if the Synonym folder is having the property named "synonyms" with value being synonym.txt

Is it possible for you to share your project specific EnsureOakIndexManagerImpl OSGi config?

 

In parallel, try to create a DEBUG log entry for com.adobe.acs.commons.oak.impl in publish and then try to import. 

Level 2
December 6, 2021

 

my configuration com.adobe.acs.commons.oak.impl.EnsureOakIndex-mysite.xml is 

<?xml version="1.0" encoding="UTF-8"?>

<jcr:root xmlns:sling="http://sling.apache.org/jcr/sling/1.0" xmlns:cq="http://www.day.com/jcr/cq/1.0"

    xmlns:jcr="http://www.jcp.org/jcr/1.0" xmlns:nt="http://www.jcp.org/jcr/nt/1.0"

    jcr:primaryType="sling:OsgiConfig"

    ensure-definitions.path="/apps/oakindex/oak-index"

    oak-indexes.path="/oak:index"

    />

 

I dont have EnsureOakIndexManagerImpl config

joerghoh
Adobe Employee
Adobe Employee
December 7, 2021

As you seem to install it via Content Packages, can you see that this file is listed as being installed in the installation report of the package manager? If not your filter.xml is not covering this location.