如果想要在目标portlet上清除sessionAttribute
但是它没有工作,那么在通过会话将数据传递到另一个portlet之后。
在目标portlet中,我获取了session属性并清除它,但刷新了JSP页面之后。会话属性仍然存在。它应该是null
。如何解决这个问题,因为以下代码无效。
<%@ taglib uri="http://java.sun.com/portlet_2_0" prefix="portlet" %>
<%@page import="javax.portlet.PortletSession" %>
<portlet:defineObjects />
This is the <b>NewPPIPC</b> portlet in View mode.
<%
PortletSession ps = renderRequest.getPortletSession();
String qString = (String)ps.getAttribute("sessionValue",PortletSession.APPLICATION_SCOPE);
ps.removeAttribute("sessionValue");
%>
<h1><%=qString %></h1>
答案 0 :(得分:1)
重载方法使用PORTLET_SCOPE
搜索对象,但您需要指定范围APPLICATION_SCOPE
。
ps.removeAttribute("sessionValue", PortletSession.APPLICATION_SCOPE);