I have the following line of code in a JSP File in my web app that is giving an error:
<jsp:setProperty name="db" property="userName" value="<%=request.getParameter("userName")%>"/>
The error message that I get is:
org.apache.jasper.JasperException: /loginbean.jsp(6,59) Attribute value request.getParameter("userName") is quoted with " which must be escaped when used within the value
What I read on some sites is that characters like '
(single quote) or "
(double quote) need to be prefixed with an escape sequence \
(backslash) if they are to be used.
However, when I try and prefix the double quotes (around the word userName) with backslash, I immediately get the following error- "Illegal Character \92- Unclosed String Literal"
How do I resolve this problem?
You should use single quotes on the value
parameter, ie:
value='<%=request.getParameter("userName")%>'
or set the org.apache.jasper.compiler.Parser.STRICT_QUOTE_ESCAPING
parameter to false
as described here:
http://blogs.sourceallies.com/2009/10/strict-quote-escaping-in-tomcat/