https://bz.apache.org/bugzilla/show_bug.cgi?id=69570
Bug ID: 69570 Summary: The URL construction error of the tag <JSP:include> Product: Tomcat 10 Version: 10.1.30 Hardware: PC Status: NEW Severity: normal Priority: P2 Component: Jasper Assignee: dev@tomcat.apache.org Reporter: gon...@huiqing-sh.com Target Milestone: ------ For JSP code like this: <jsp:include page="/appmenu.do?method=tinit" flush="true"> <jsp:param name="linkto" value="Something"/> </jsp:include> In 10.1.30 and higher(includes 10.1.34), It will be compiled to: String _jspx_temp1_url = "/appmenu.do?method=tinit"; String _jspx_temp1_requestEncoding = request.getCharacterEncoding(); org.apache.jasper.runtime.JspRuntimeLibrary.include(request, response, _jspx_temp1_url + "?" + org.apache.jasper.runtime.JspRuntimeLibrary.URLEncode("linkto", _jspx_temp1_requestEncoding)+ "=" + org.apache.jasper.runtime.JspRuntimeLibrary.URLEncode("Something", _jspx_temp1_requestEncoding), out, true); In summary, when the parameter "page" of the tag <jsp:include> already contains character "?", compiler still uses "?" to append the parameter of the tag <jsp:param>. For reference: In 10.1.28, The compiled result of the JSP code mentioned above is: org.apache.jasper.runtime.JspRuntimeLibrary.include(request, response, "/appmenu.do?method=tinit" + "&" + org.apache.jasper.runtime.JspRuntimeLibrary.URLEncode("linkto", request.getCharacterEncoding())+ "=" + org.apache.jasper.runtime.JspRuntimeLibrary.URLEncode("Something", request.getCharacterEncoding()), out, true); -- You are receiving this mail because: You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org