Your achievements

Level 1

0% to

Level 2

Tip /
Sign in

Sign in to Community

to gain points, level up, and earn exciting badges like the new
Bedrock Mission!

Learn more

View all

Sign in to view all badges

SOLVED

Sling Reverse Mapping ignoring parameters and special characters like #

nivazdeent97086
Level 2
Level 2

Hi,

I tried using sling reverse mapping to convert my outbound internal URL. URL is getting converted properly but parameters(?#etc) are getting removed.

For Example

+slingMapping

                    +sling:match:localhost.4602/(experience)

                      sling:internalRedirect:/content/we-retail/ca/en/$1

Inbound Request URL :http://localhost:4602/experience/summit-success-in-the-himalayas.html is resolving me successfully to the resource at /content/we-retail/ca/en/experience/summit-success-in-the-himalayas

But the outbound configured Link URL /content/we-retail/ca/en/experience/summit-success-in-the-himalayas.html#abcd is getting converted as http://localhost:4602/experience/summit-success-in-the-himalayas.html by shredding #abcd. Is this the expected behavior. If not how can we resolve this ?

Regards,

Nivazdeen.

1 Accepted Solution
Arun_Patidar
Correct answer by
Community Advisor
Community Advisor

Hi,

I checked again, For me I am able to convert links into short links using sling mapping but for me It is working as expected in AEM 6.3

Link Created from OOTB Text Component

Screen Shot 2018-08-16 at 12.12.00 AM.png

OUTPUT

Screen Shot 2018-08-16 at 12.14.38 AM.png

Thanks
Arun

View solution in original post

9 Replies
Arun_Patidar
Community Advisor
Community Advisor

Hi,

How are you converting outbound url /content/we-retail/ca/en/experience/summit-success-in-the-himalayas.html#abcd to inbound(short Url)?

nivazdeent97086
Level 2
Level 2

Hi,

The reverse mapping happens automatically because of the configuration applied for sling mapping. No explicit reverse mapping configuration.

Regards,

Nivazdeen

smacdonald2008
Level 10
Level 10

Can you point to online docs where this is stated as a valid use case please.

nivazdeent97086
Level 2
Level 2

Hi Mac,

This use case is my project requirement. We have internal links with #identifier appended at the end. The links are getting converted properly but the #identifier at the end is getting truncated.

For Example. I have a image with URL. The URL is internal path and i configured like /content/abc.html#identifier. Once the page gets loaded the internal URL is getting mapped to http://domain/abc.html truncating the #identifier.

Regards,

Nivazdeen

Arun_Patidar
Community Advisor
Community Advisor

Hi,

I think the conversion is not automatic. you can access your image using both URLs. I don't understand how on page load /content/abc.html#identifier is converting into http://domain/abc.html

Are you using Sling Output Rewrite or you are manipulating path from components code?

It would be great if you can point us to the docs from where your are referring this?

Thanks

Arun

nivazdeent97086
Level 2
Level 2

Hi,

The reverse mapping happens automatically following the resolve rules. I have mentioned the configuration which i used in the original question. I am not using sling output rewrite and not manipulating through component code.

Below is the link for the reference

Apache Sling :: Mappings for Resource Resolution

1547810_pastedImage_1.png

Regards,

Nivazdeen.

Arun_Patidar
Correct answer by
Community Advisor
Community Advisor

Hi,

I checked again, For me I am able to convert links into short links using sling mapping but for me It is working as expected in AEM 6.3

Link Created from OOTB Text Component

Screen Shot 2018-08-16 at 12.12.00 AM.png

OUTPUT

Screen Shot 2018-08-16 at 12.14.38 AM.png

Thanks
Arun

nivazdeent97086
Level 2
Level 2

Hi Arun,

I checked in vanilla instance and it is working for me. Later analyzed that there is a Rewriter service(org.apache.sling.rewriter) from master project affecting mine. Apologies for the confusion.

Regards,

Nivazdeen.

ajits55484825
Level 2
Level 2

HI Nivazdeen,

How did you find out this rewriter service? I am also facing same issue.