Documentation Extensions

Extensions et échanges programmés

FormPublisher intègre un langage d'expressions appelé langage JIL.

Ce langage permet de décrire des séquences  qui vont influer sur le rendu d'un document (View),  et sur les données (Model) en permettant par exemple de les valider.

Les composants du langage représentent un ensemble fini d'instructions. Il est néanmoins possible d'ajouter de nouveaux comportements par le biais des extensions.

La réalisation d'une extension se passe en deux étapes :

  • la création de l'extension :

    la classe doit être mise dans le package lu.jway.extension

    elle doit étendre lu.jway.webapp.jil.FormPublisherExtension

  • L'appel de l'extension en langage Jil:

    <?variable param[0]= ' ...'?>

    <?variable param[1]='....'?>

    <?variable param[2]='....'?>

    <?variable result=FormPublisherExtension(this,'UneExtension', $(param))?>

    Nous voyons ici comment une extension est appelée par le biais de l'instruction JIL FormPublisherExtension et la structure JIL retournée.

FormPublisher adhère donc à la logique MVC mais avec néanmoins une exception que nous appellons « échanges programmés ».

Les échanges programmés peuvent prendre différentes  formes dans FormPublisher, ils ont pour but d'avoir une incidence  sur les données soit interne, soit externe.

Dans FormPublisher, nous avons donc une notion de modèle étendu qui ne se limite pas au contexte de la session du formulaire.

Pour influer sur ce modèle étendu, plusieurs possibilités :