Skip to Main Content

Managed Bean method not executed when unloading the JSF page

HayfaMay 27 2022 — edited May 27 2022

I want to execute a managed bean method when exiting the page, I use this code but the method is not executing when leaving the page. I am working with jdev 12.2.1.4.0. Can you help me plase:

       <af:document smallIconSource="/resources/images/favicon.ico" title="Gestion des Pays" uncommittedDataWarning="on"
             id="d1" onunload="performUnloadEvent"
                 clientComponent="true"> 
    <f:facet name="metaContainer">
        <af:resource source="/resources/utils.js" type="javascript"/>

    </f:facet>
    <af:messages id="m1"/>
    <af:resource type="javascript">
    window.addEventListener('beforeunload',
                       function (){performUnloadEvent()},false)     
  function performUnloadEvent(){
   //note that af:document must have clientComponent="true" set
     //for JavaScript to access the component object
   var eventSource = AdfPage.PAGE.findComponentByAbsoluteId('d1');
 //var x and y are dummy variables obviously needed to keep the page
 //alive for as long it takes to send the custom event to the server
 var x = AdfCustomEvent.queue(eventSource,
                           "handleOnUnload",
                           {args:'noargs'},false);
 //replace args:'noargs' with key:value pairs if your event needs to
//pass arguments and values to the server side managed bean.

var y = 0;

}
</af:resource>

< af:serverListener type="handleOnUnload"
               method="#{gestionPaysBean.clearFilter}"/>
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked due to inactivity on Jun 24 2022
Added on May 27 2022
1 comment
57 views