h:在多个会话的情况下,outputLink目标无法正常工作

时间:2013-06-05 21:40:27

标签: jsf jsf-2

我有一个带有超链接的子窗口。点击超链接我必须重定向到父窗口。我正在使用JSF的h:outputLink命令 -

<f:view>
<hx:scriptCollector 
    ....
    <h:form 
    ....
        <h:dataTable
            <h:column id="column1">
                <h:panelGroup rendered="#{pc_x.renderMacView}">                         
                    <h:outputLink target="main" id="detail" value="/abc/xyz.jsp" >
                        <f:param id="xId" name="xId" value="#{refId}"/>
                        <h:outputText id="textXId" value="#{refId}"/>
                    </h:outputLink>
                </h:panelGroup>
            </h:column> 
        </h:dataTable>
    </h:form>
</hx:scriptCollector>   

假设我有两个父窗口(P1和P2),两个不同的会话(分别为S1和S2)打开。如果我尝试从P2打开子窗口并单击超链接,它会重定向到P1窗口。这种行为非常不一致。如何确保每个子窗口上的超链接更新到其各自的父窗口?我尝试给target =“_ parent”,但它取代了我已经超链接的子窗口。我们可能必须以父母的父窗口为目标。

1 个答案:

答案 0 :(得分:0)

您必须将sessionID编码为目标名称,例如

target="main#{request.session.id}"

但我怀疑你可以从同一个浏览器中正确地进行多个会话。许多人都试过......