I call the client side function like so : invalidateUserSession(). I know the client function is triggered because I placed an alert in the oncomplete event. For some reason the server side method is never called though.
Client side code:
<a4j:jsFunction
name="invalidateUserSession"
action="#{billingController.invalidateSession}"
immediate="true"
oncomplete="alert('invalidate');"
/>
Server side code:
public void invalidateSession(){
log.info("Invalidation session...");
FacesContext.getCurrentInstance().getExternalContext().invalidateSession();
}