我不确定为什么这不起作用。
jsp:
<a href="<portlet:renderURL >
<portlet:param name="page" value="/view_dettaglio.jsp"/>
<portlet:param name="id" value="<%=rs.getInt(1)%=>"/>
</portlet:renderURL>"><%=rs.getInt(1)%></a>
班级中的方法:
@Override
public void doView(final RenderRequest renderRequest, final RenderResponse renderResponse) throws PortletException, IOException {
String page = ParamUtil.getString(renderRequest, "page");
String id = ParamUtil.getInteger(renderRequest, "id");
renderRequest.setAttribute("id",id.toString());
this.include(page, renderRequest, renderResponse);
有什么想法吗?
答案 0 :(得分:0)
您是否定义了portlet
命名空间?
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
最好在使用之前将渲染URL存储在单独的变量中,因此引号中没有碰撞:
<portlet:renderURL var="renderUrl">
<portlet:param name="page" value="/view_dettaglio.jsp"/>
<portlet:param name="id" value="<%=rs.getInt(1)%>"/>
</portlet:renderUrl>
<a href="<%=renderUrl%>"><%=rs.getInt(1)%></a>
您在id
参数的值中也有错误:结束括号包含一个额外的等号,因此它表示%=>
而不是%>
。这可能是问题的真正原因。