我使用的是jsf1.2,下面的代码是在我的xhtml文件中,这个代码是从弹出窗口点击保存它会点击相应的bean方法,一个文件将被下载。要求是,如果发生任何验证错误,错误应该显示在该弹出窗口中,如果没有验证错误,则应该下载文件并且弹出窗口应该自动关闭。我知道,oncomplete事件不适用于<a4j:htmlCommandLink>
或<h:commandLink>
标记。我尝试使用谷歌搜索,但找不到任何最佳解决方案。如果有人帮助我,我会非常乐于助人。目前该文件已下载但弹出窗口未自动关闭,如果有任何验证错误,则会在主页中显示弹出窗口的位置。感谢您提前提供任何帮助。
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:a4j="http://richfaces.org/a4j"
xmlns:rich="http://richfaces.org/rich">
<rich:modalPanel id="strategyModalPanelId"
resizeable="true" style="text-align:left">
<h:form id="dummyform">
<rich:panel styleClass="">
<a4j:htmlCommandLink styleClass="button color"
id="copystratgyid"
value="Save"
action="{BackingBean.saveStrategy}"
style="width: 48px;"
oncomplete="onCompletePopUp('strategyModalPanelId');">
<i class="icon-ok-sign button-icon"></i>
</a4j:htmlCommandLink>
</rich:panel>
</h:form>
</rich:modalPanel>
</ui:composition>