jsp中的java参数:include

时间:2011-08-31 15:16:57

标签: jspinclude

我想知道我是否可以将java变量传递给a。我试图在jsp文件中做这样的事情:

<% String folder = request.getParameter("something"); %>
<jsp:include page="../<%=folder%>/myframe.jsp" ></jsp:include>

这不起作用。我收到一条错误,上面写着“找不到资源/=folder/myframe.jsp”。 可以这样做吗?

感谢您的帮助。

2 个答案:

答案 0 :(得分:0)

您需要将page参数作为整个字符串或整个替换。

<jsp:include page="<%= myPageToInclude %>" />
<jsp:include page="path/to/my/page.jsp" />

此外,当连接值内的字符串时,您需要转义双引号。 所以对于你的问题:

<% String folder = request.getParameter("something"); %>
<jsp:include page="<%= \"../\" + folder + \"/myframe.jsp\" %>" />

应该可以正常工作,或者更容易阅读:

<% 
    String folder = request.getParameter("something");
    String page = "../" + folder + "/myframe.jsp";
%>
<jsp:include page="<%= page %>" />

答案 1 :(得分:0)

将您的param名称称为“某事”, 试试这个:

<jsp:include page="../${param.something}/myframe.jsp" />

其他解决方案就是这样做:

<% String folder = request.getParameter("something"); %>
<% pageContext.setAttribute("folder", folder); %>

<jsp:include page="../${folder}/myframe.jsp"></jsp:include>

首先是更好但两者都应该有效。