0

我正在使用合金对话框在弹出窗口中显示数据。

这是第一个jsp中的代码..

内部搜索容器

此处 viewDocs 按钮的 id 将被覆盖为 viewDocs,而不管 viewDocs.jsp 中给出的 id

在 viewDocs.jsp

        <portlet:renderURL var="docListView"
        windowState="<%=LiferayWindowState.POP_UP.toString()%>">
            <portlet:param name="mvcPath"
            value="/html/emp/docList.jsp"/>
            <portlet:param name="redirect" value="<%= currentURL %>"/>
            <portlet:param name="prk" value="<%= prk %>"/>


        </portlet:renderURL>

        <aui:button name="viewDocs" id="view_<%=prk %>" cssClass="btn btn-primary btn-small" value="View Docs"    onclick="viewDetails()"></aui:button>

        <aui:script>
        function viewDetails()
        {
          AUI().use('aui-base','aui-io-plugin-deprecated','liferay-util-window',
                 'aui-dialog-iframe-deprecated',
            function(A) {
            var popUpWindow=Liferay.Util.Window.getWindow(
                {
                    dialog: {
                        destroyOnClose:true,
                        centered: true,
                        constrain2view: true,
                        modal: true,
                        resizable: false,
                        height:300,
                        width: 700
                    }
                }
                ).plug(
                        A.Plugin.DialogIframe,
                        {
                            autoLoad: true,
                            iframeCssClass: 'dialog-iframe',
                            uri:'<%=docListView.toString()%>'
                        }).render();
            popUpWindow.show();
            popUpWindow.titleNode.html("Document List");
            popUpWindow.io.start();
             });       
        }           

在 docList.jsp long proposalPrk=Long.parseLong((String)request.getParameter("prk"));

//It retrives the same value of primary key on every button click

如果我在会话中设置主键的值如何在关闭弹出窗口时删除该会话属性?

4

1 回答 1

0

您可以在弹出窗口关闭时触发 Ajax 调用,并在 serveResource 方法中从会话中删除该属性。

@Override
public void serveResource(ResourceRequest resourceRequest,
        ResourceResponse resourceResponse) throws IOException,
        PortletException {
resourceRequest.getPortletSession().removeAttribute(arg0)

    super.serveResource(resourceRequest, resourceResponse);
}
于 2014-09-23T07:10:30.020 回答