À l'aide de Primefaces JavaScript pour appeler un JSF méthode d'un bean sur le serveur
Dans le Primefaces Guide de l'Utilisateur, il montre des exemples de la façon de faire des appels AJAX vers le serveur
PrimeFaces.ajax.AjaxRequest('/myapp/createUser.jsf',
{
formId: 'userForm',
oncomplete: function(xhr, status) {alert('Done');}
});
Ce que je n'arrive pas à comprendre est comment appeler une méthode en particulier. Mon but est de faire invalider la session du client à l'aide de JavaScript.
Vous devez vous connecter pour publier un commentaire.
RemoteCommand est une belle façon d'y parvenir, car il vous offre une fonction JavaScript qui fait le genre de choses (l'appel de la sauvegarde de haricot, rafraîchissante, l'envoi d'un formulaire, etc., tout ce que la commande link peut faire).
De PrimeFaces 3.4 documentation:
Ce que j'ai fait habituellement est mis a caché p:commandLink sur la page, puis de l'appel Javascript l'événement click() sur elle.
Puis
Le faire dans le
@PostConstruct
méthode de la portée de la requête de haricot qui est associée à la requsted JSF page par EL comme#{bean}
.Aucun rapport avec la question, je me demande seulement pourquoi vous ne pourriez jamais le faire de cette façon? JSF/PrimeFaces offre beaucoup plus agréable des façons à l'aide de
<f:ajax>
et<p:ajax>
et consorts.Est-il l'intention de s'exécuter au cours de cette Fenêtre
unload
oubeforeunload
événements? Si oui, alors je dois vous avertir que ce n'est pas fiable. Ça dépend du navigateur, si une telle demande atteigne le serveur ou pas. Le plus souvent il ne sera pas. L'utiliser pour la statistique pure ou prématuré de nettoyage seulement, pas pour les sensibles à des fins commerciales.emptySessionPath="true"
dans<Connector>
dans/conf/server.xml
.