Glassfish中的ADF Essentials:AUTOSUBMIT和VALUECHANGELISTENER属性使消息显示在Web浏览器中

Glassfish中的ADF Essentials:AUTOSUBMIT和VALUECHANGELISTENER属性使消息显示在Web浏览器中,glassfish,weblogic,oracle-adf,page-refresh,browser-refresh,Glassfish,Weblogic,Oracle Adf,Page Refresh,Browser Refresh,我在Jdeveloper 11.1.2.4.0中有一个ADF项目,我的一个页面包含以下内容: <af:selectOneChoice label="HEllO" value="#{bean.data}" id="id1" autoSubmit="true" valueChangeListener="#{bean.createNewData}"> <f:selectItems value="#{data.list}" id="id2"/> </af:selec

我在Jdeveloper 11.1.2.4.0中有一个ADF项目,我的一个页面包含以下内容:

<af:selectOneChoice label="HEllO" value="#{bean.data}" id="id1" autoSubmit="true" valueChangeListener="#{bean.createNewData}">
    <f:selectItems value="#{data.list}" id="id2"/>
</af:selectOneChoice>

我将它部署到Weblogic上,一切正常

然后我使用ADF Essential库将其部署到Glassfish。它似乎工作得很好,但在任何有属性AUTOSUBMIT的地方都会出现意想不到的行为。每次包含AUTOSUBMIT=“true”的组件的值发生更改时,我都会有这种行为

  • Firefox:一条消息说:“要显示此页面,Firefox必须发送 将重复任何帐户的信息…”
  • IE:一条消息说:“要再次显示网页,web浏览器需要重新发送您以前提交的信息…”
  • Chrome:它重定向到主页
  • Opera:它重定向到主页
EDIT:将PARTIALSUBMIT设置为true时也会发生同样的情况。我意识到我必须具有valuechangeslistener属性才能获取消息。

Autosubmit=true(默认情况下)将使您的页面完全重新提交。您应该使用部分触发器来避免这种情况。将此组件的ID设置为要刷新的组件(表单、表等)的“部分触发器”属性。您应该为第一个组件设置“partialSubmit=true”