选择p:selectOneMenu将使用屏幕名称和屏幕缩略图更新screen_prop面板。但是,在单击h:graphicImage后,screen_prop的ajax更新停止工作ONCE,触发window.open以在新选项卡中显示图像。
screenBean和pageBean都有SessionScoped。
关于发生了什么的任何想法? 谢谢。
<p:panelGrid id="panel">
<h:form id="form">
<p:selectOneMenu id="screen_selection" value="#{screenBean.selectedScreenId}">
<f:selectItems
value="#{pageBean.screenIds}" var="scr"
itemLabel="#{scr.name}" itemValue="#{scr.id}" />
<p:ajax
update=":screen_prop"
listener="#{pageBean.handleSelection}" />
</p:selectOneMenu>
</h:form>
</panelGrid>
<panelGrid id="screen_prop">
<h:outputText id="screen_name" value="#{screenBean.selectedScreenName}"/>
<h:graphicImage
value="#{screenBean.getThumbnail(screen.id)}"
onclick="window.open('screenshot.xhtml?screen_id=#{screen.id}'); return false" />
</panelGrid>
答案 0 :(得分:0)
事实证明,我必须将 com.sun.faces.numberOfLogicalViews 的参数值更改为更高的数字才能解决问题。我希望帮助那些有同样问题的人:)