AEM 6.4 Sightly Issue - Textfield not displaying special characters properly | Community
Skip to main content
Level 2
December 11, 2018

AEM 6.4 Sightly Issue - Textfield not displaying special characters properly

  • December 11, 2018
  • 1 reply
  • 3988 views

Hi Team,

I have a requirement to render special characters like "doublequote" ("), "quote" ('), "less than" (<), "greater than" (>) in textfield/pathfield.

The problem now is these characters get HTML encoded in the view source page.

So, if an Input expression in textfield is

<%= formatDate(new Date(), "%2D.%2M.%4Y") %>

It is displayed as

&lt;%= formatDate(new Date(), &#34;%2D.%2M.%4Y&#34;) %&gt;

Expected result: <%= formatDate(new Date(), "%2D.%2M.%4Y") %>

I have tried using context='unsafe' but it is not working (worked for AEM 6.3). I tried calling this value using java but the input expression is fetched correctly in the method, the encoding is done later.

Is there a way to get the expected result?

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

1 reply

arunpatidar
Community Advisor
Community Advisor
December 11, 2018

Hi,

Are you using JSP or HTL? Context works only with HTL but your functions seems a JSP code. HTL will be considering this as text will be displaying as it is.

<h2>Display Current Date & Time</h2>

<p>${properties.text @context='unsafe'}</p>

<p>${properties.text}</p>

Arun Patidar
Level 2
December 12, 2018

Hi Arun,

Thanks for the reply.

I am using HTL in the same way as you have used in the example and getting the exact same result in inspect element console as shown in snapshot.

However, the issue is when I right click on the page and choose the option "View Page Source", there the output is different.

And as I mentioned earlier, I wasn't facing this issue with AEM6.3, only after upgrading to 6.4 the problem appeared.

edubey
Level 10
December 12, 2018

This is what i see on page

and this on view source

I am not sure whats the confusion, can you elaborate