Paramètre système Webservice session-timeout

Bonjour,

Lors de la visite de François nous avons parlé d’un problème sur un script qui est lancé par un job externe via l’utilisateur Public

Le problème s’est reproduit depuis et j’ai l’impression en voyant les logs que la session public se déconnecte et se reconnecte après 5 minutes, Interrompant et relançant le job.
Parmi les pistes évoquées il me semble qu’il y avait le paramètre Webservice session-timeout qui est actuellement à 5 minutes et que nous pourrions augmenter.

Quel est l’impact de ce changement?

Merci
Fabrice

Lancer un traitement via le user public n’est sans doute pas la bonne approche.

Le endpoint I/O est en général plutôt le bon point d’entrée pour déclencher des traitements “longs” (par exemple via un adapter). Cf. Simplicité® documentation/02-integration/io-commandline

Bonjour,

Je n’avais pas eu le temps de bien répondre à ce point.
La session courte doit le rester.

Il faut juste revoir le design pour invoker une Action asynchrone faite pour ça.

  • Le traitement long doit être une méthode d’une action de l’objet métier qui le porte
  • Cette action doit être déclarée comme asynchrone = lancée dans un thread à part.

Ensuite par code, votre objet externe public peut instancier l’objet et invoquer l’action.

getGrant().getTmpObjec("MyObject").invokeAction("myAction");

L’avantage d’une action asynchrone est de pouvoir se monitorer dans Exploitation / Taches asynchrones :

  • Temps de traitement
  • demander l’arrêt
  • centraliser les logs de la méthode

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.