Not getting result from .txt from dam | Community
Skip to main content
codingStar
Level 3
October 9, 2019
Solved

Not getting result from .txt from dam

  • October 9, 2019
  • 5 replies
  • 3077 views

Hi,

I m getting result if I am upload a .txt file in dam manually. below is the query

SELECT * FROM [dam:Asset] AS s WHERE CONTAINS(s.*, '" + mykeyword+ "') AND [jcr:path] like '/content/dam/myprojectfolder%'

but in second case if I created .txt file in dam using stream(which i am getting from some external system) then above query is not returning any result.

anyone share why i am not getting result in second case.

Thanks

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

Hi @arpitv27529355 @ka786  I have figured it out.

jcr:mimeType was incorrect on below path for generated file stream.

/content/dam/myprojectfolder/mytextfile.txt/jcr:content/renditions/original/jcr:content

To fix this updated the code provided mimeType as "text/plain", below is the code

AssetManager assetManager=resourceResolver.adaptTo(AssetManager.class);

assetManager.createAsset(fileName, stream, "text/plain", true);

5 replies

Ankur_Khare
Community Advisor
Community Advisor
October 9, 2019

Could you please check the node properties when you are getting from external system and when you are directly uploafing to dam.

codingStar
Level 3
October 9, 2019

I have verified all the nodes and properties/values are same.

Ankur_Khare
Community Advisor
Community Advisor
October 9, 2019

Could you please upload both the files here

ArpitVarshney
Community Advisor
Community Advisor
October 9, 2019

Hi codingStar ,

Please verify when you are creating a txt file from Stream the jcr:primaryType of the assest should be [dam:Asset] not the nt:file  or try using nt:base [which is considered to be parent node of all nodes] in query which will return all the nodes if any of the child nodes contain particular keyword.

SELECT * FROM nt:base AS s WHERE CONTAINS(s.*, '" + mykeyword+ "') AND [jcr:path] like '/content/dam/myprojectfolder%'

Regards,

Arpit Varshney

codingStar
codingStarAuthorAccepted solution
Level 3
October 10, 2019

Hi @arpitv27529355 @ka786  I have figured it out.

jcr:mimeType was incorrect on below path for generated file stream.

/content/dam/myprojectfolder/mytextfile.txt/jcr:content/renditions/original/jcr:content

To fix this updated the code provided mimeType as "text/plain", below is the code

AssetManager assetManager=resourceResolver.adaptTo(AssetManager.class);

assetManager.createAsset(fileName, stream, "text/plain", true);