我已经创建了一个RenderingPlugin,用于WebSphere Portal,在将标记发送到客户端之前调用了服务器端.插件循环遍历所有cookie,如果找不到’test’,我想设置该cookie.
我知道这可以通过HttpServletResponse实现,但RenderingPlugin无法访问该对象.它只有一个HttpServletRequest.
还有另一种方法吗?
public class Request implements com.ibm.workplace.wcm.api.plugin.RenderingPlugin {
@Override
public boolean render(RenderingPluginModel rpm) throws RenderingPluginException {
boolean found = false;
HttpServletRequest servletRequest = (HttpServletRequest) rpm.getRequest();
Cookie[] cookie = servletRequest.getCookies();
// loop through cookies
for (int i = 0; i < cookie.length; i++) {
// if test found
if (cookie[i].getName().equals("test")) {
found = true;
}
}
if (!found){
// set cookie here
}
}
}