Question

I have saved some basic HTML in a database. This HTML is via ValueStack in Action class redisplayed as <s:property value="htmlcodeString"/> in JSP file.

However, the HTML code is not interpreted, but escaped and displayed as is (eg. <b>BOLD</b> is shown instead of BOLD).

I am using Struts2. I found many recommendations on internet to use <c:out value="${text}" escapeXml="false" />. But I don't know what it is. How can I make use of it in Struts2?

Was it helpful?

Solution

The <s:property> tag has an escapeHtml attribute which is true by default.

(Hopefully for obvious reasons.)

<c:out> is part of the JSTL, and you use it in S2 like in any other web app, with the caveat that it's because of an S2 request wrapper you can use JSP EL to access the value stack.

OTHER TIPS

I came across the question through Google and found adding the escapeHtml="false" attribute caused the JSP to stop displaying. What worked instead was simply escape="false.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top