Get ParagraphSystem of a resource inside another resource

Avatar

Avatar

elizabethp60981

Avatar

elizabethp60981

elizabethp60981

28-02-2018

Hi,

I'm need to read a text that is on a parsys inside a text component.

I have a page that shows a list of news, this page has a resourceType list-news, for example.

each one of my news has a resource type "News".

When I am on my list-news reading each one of my content new, and I do a hit.getResourceType, I am getting the resourceType of my "list-news" item,

How can I get the parsys, of my item that has another resource type???

I can't find a similar case on the internet

I am using this:

for (Hit hit : result.getHits()) {

        if(null != hit.getProperties() ) {

           SlingHttpServletRequest slingReq = getRequest();

           ParagraphSystem parSys = ParagraphSystem.create(hit.getResource(), slingRequest);

          

           for (Paragraph par: parSys.paragraphs()) {

                   String myType = par.getType().toString() ;

               }

} }

View Entire Topic

Avatar

Avatar

elizabethp60981

Avatar

elizabethp60981

elizabethp60981

28-02-2018

Hi Riman,

Thank you for your reply.

But I had tried a lot of things, but I am not able to retrieve the content. I want to retrieve the text that is created inside the parsys.

Does anyone had already done that?

I am trying a lot of things and I can go to the "par" node, but I can't read the text inside of it:

Things that I am trying:

ParagraphSystem parSys = ParagraphSystem.create(res, slingRequest);

          

           for (Paragraph par: parSys.paragraphs()) {

                   String myType = par.getType().toString() ;

                   Resource resPar = par.getResource();

                   String type = resPar.getName();

                  

                   ResourceResolver  resourceResolverText = resPar.getResourceResolver();

                   Resource resText = resourceResolverText.getResource(resPar.getPath());

                   ValueMap valueMap = resText.getValueMap();

                   String texto = valueMap.get("Text", String.class);

Thank you!