【发布时间】:2012-02-28 03:48:50
【问题描述】:
我需要与用户确认他或她是否确定要删除他或她的帐户。 为此,我认为弹出屏幕会很酷。但是大多数浏览器都会阻止弹出窗口。
所以我试图用popupPanel 来做到这一点。 但我猜这是不可能的,因为我里面有一个 commandLink,这就是我目前正在做的事情:
<rich:popupPanel id="popup_delete_profile" modal="true" onmaskclick="#{rich:component('popup_delete_profile')}.hide()">
<f:facet name="header">
<h:outputText value="Aviso" />
</f:facet>
<f:facet name="controls">
<h:outputLink value="#" onclick="#{rich:component('popup_delete_profile')}.hide(); return false;">
Close
</h:outputLink>
</f:facet>
<p>Are you sure ?</p>
<h:commandLink value="Yes" action="#{userc.deleteUser}"></h:commandLink>
<h:outputLink value="#" onclick="#{rich:component('popup_delete_profile')}.hide(); return false;">
No
</h:outputLink>
</rich:popupPanel>
这是我的 manageBean:
public void deleteUser(){
try {
eaoUser.delete(userb.getUser());
// here I would like to refresh the popupPanel saying that was deleted with success and then logout
} catch (Exception e) {
view.errorMessage("ocorreu um erro, por favor tente novamente");
e.printStackTrace();
}
}
编辑:
public String deleteUser() {
FacesContext.getCurrentInstance().getExternalContext().invalidateSession();
return "/index.xhtml?faces-redirect=true";
}
知道怎么做吗?
【问题讨论】:
-
那么您的问题到底是什么?为什么要在单击“是”链接时使用户的会话无效?