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 :