如何将参数从tag传递给JSP?

时间:2013-09-05 11:52:17

标签: java jsp servlets tags

我在标记类中编写了一个带有“逻辑”的标记,并在JSP中编写了视图。我做的是像

// BodyTagSupport-Class 
pageContext.setAttribute("id", tempId);
pageContext.setAttribute("visible", visible);
pageContext.setAttribute("title", title);
pageContext.setAttribute("bodyContent", getBodyContent()
            .getString());
pageContext.include("/WEB-INF/views/include/outblender.jsp", true);

<!-- JSP -->
<div id="${id}" onclick="javascript:handleOutblending('${id}')">
  ${bodyContent}
</div>

JSP中的字段${id}为空。当使用pageContext.geRequest().setAttribute("id", tempId);时,它工作正常,但是该上下文太大并且与m&lt;内部的其他id字段冲突。应用

参数如何正确地从标签传递到jsp?

编辑22.10。 感谢k3b澄清了我的问题:

我有动态包含jsp的java代码。如何在不使用会话或属性的情况下将jsp参数从java传递到动态加载的jsp?有没有办法通过java代码?

2 个答案:

答案 0 :(得分:1)

以下是将2个参数(价格和折扣)传递给名为bill.jsp的文件的标签示例:

<jsp: include page="bill.jsp" flush="true">
    <jsp:param name="price" value="FF"/>
    <jsp:param name="discount" value="18"/>
</jsp:include>
希望它有效。

答案 1 :(得分:0)

这是你的任何使用吗?

Current.jsp

<jsp:forward page ="/DesiredPage.jsp">
<jsp: param name="param1" value="value1"/>
<jsp: param name="param2" value="value2"/>
<jsp: param name="param3" value="value3"/>
</jsp:forward>

您可以在下一页

中收到此消息

DesiredPage.jsp:

param1: <%= request.getParameter("param1") %>
param2: <%= request.getParameter("param2") %>
param3: <%= request.getParameter("param3") %>