Java RichFaces服务器交换机类型
Rich tab panel有一个服务器切换模式,当使用此模式时,会发生什么,也就是说,如果我在每个选项卡中放置一个表单,我希望只发布此表单,而不调用任何操作。但是action=Java RichFaces服务器交换机类型,java,jsf,richfaces,Java,Jsf,Richfaces,Rich tab panel有一个服务器切换模式,当使用此模式时,会发生什么,也就是说,如果我在每个选项卡中放置一个表单,我希望只发布此表单,而不调用任何操作。但是action=“{licenseIMC.downloadRequest}”调用。如果我将所有选项卡面板放在一个表单中,会发生什么 <rich:tab id="updateLicensesTab" label="Update licences"> <h:form id="upda
“{licenseIMC.downloadRequest}”
调用。如果我将所有选项卡面板放在一个表单中,会发生什么
<rich:tab id="updateLicensesTab" label="Update licences">
<h:form id="updateLicensesForm">
<h:outputText value="Request file" />
<a4j:htmlCommandLink id="request"
action="#{licenseIMC.downloadRequest}"
value="Generate License Request"
title="Generate License Request" />
切换模式仅对从一个选项卡切换到另一个选项卡时发生的情况有影响。服务器模式意味着每次您切换到它时,它都会重新加载选项卡(和页面)。ajax模式意味着它将重新加载选项卡,而不是页面。客户端模式意味着它不会从服务器重新加载数据。服务器和ajax模式只有在底层数据可能已更改并且您希望在切换选项卡时反映这些更改时才有意义
如果将所有选项卡放在一个表单中,则如果执行表单提交(例如,执行htmlCommandLink),所有选项卡都将被提交。针对您的问题和您对morja ans的评论: 选项卡内的命令按钮和链接的单个操作将不会触发。但是,选项卡标记中指定的操作将被触发 在您的示例中,
htmlCommandLink
将不会被激发,并且不会调用downloadRequest()
,但是如果您有:
<rich:tab id="updateLicensesTab" label="Update licences" action="#{licenseIMC.tabChange}">
<h:form id="updateLicensesForm">
然后将调用
tabChange
函数。您所说的“只发布此表单,不调用任何操作”是什么意思?如果单击链接,会发生什么情况?它没有提交表单吗?我想知道是否切换了开关类型为server switched的tabpanel,并且表单包含发布到服务器的此选项卡,为什么方法#{foo.dosomething}像单击一样调用它。我只需要提交表单中的值更新数据模型否按钮,commandlink,。。。行动开始了。