I have text stored in my database using HTML character entities, e.g., ™ for the trademark symbol, á for a with an accent. When I hand this to the jstl <c
ut> tag, it gets requoted, so the webpage shows the entity instead of the desired character. That is, the user sees "á" instead of the accented "a".
I want a way to de-quote the data, or bypass the quoting mechanism.
I can think of several ways this might be done, but none of the things I've tried so far have worked. I went to the Jasper output and copied the code that extracts values, e.g.,
String s = (String) proprietaryEvaluate("${param.navmodel}", java.lang.String.class, (PageContext)_jspx_page_context, null, false);
[I have already done a <%@ page import = "org.apache.jasper.runtime.*"%>]
Then I looked through the
Jsp class documentation in the
J2EE API, and coded
<%@ page import = "javax.servlet.jsp.el.*"%>
...
ExpressionEvaluator exval = null;
exval = pageContext.getExpressionEvaluator();
Object o;
o = exval.evaluate(
"${feature.shortName.english}",
o.getClass(),
pageContext,
null, false);
And that failed as well.
My problem is made more frustrating because the webapp is set up with "errorPage" param declarations, so I never get to see the compilation errors, it just goes to the error page. I tried commenting out the errorPage params, but I still don't get the compile errors.
Any suggestions on this problem? If I could solve any piece of it, I would probably be OK:
1. Getting jstl to not quote my already quoted entities,
2. Extracting the jstl/el forms into
java so I can manipulate them directly and de-quote them as needed.
3. At least getting the compile errors so I can see what I'm doing wrong.
P.S. I also looked in "catalina.out" for the error messages, but there are none there. There are limits on what I can do because I don't have "root" privilege on the server where my webapp is running.