JAVACT est un intergiciel (ou middleware) Java pour la programmation d'applications concurrentes, réparties et mobiles [AMM01], développé par l'équipe IAM (Ingénierie des Applications Mobiles1) de l'IRIT (Institut de Recherche en Informatique de Toulouse, France) et distribué sous forme de logiciel libre sous licence LGPL.
JAVACT fournit des mécanismes pour la programmation d'agents mobiles adaptables qui s'appuient sur les concepts d'acteur et d'implémentation ouverte2. JAVACT étend le paquetage java.rmi (RMI : Remote Method Invocation3) dont il utilise les mécanismes de passage d'objets en argument et d'exception, et l'adapte aux communications asynchrones au moyen d'un mécanisme de type send-receive. Outre l'abstraction par rapport à java.rmi, JAVACT permet au programmeur de s'abstraire de la gestion de mécanismes de bas niveau tel les threads, leur ordonnancement et la synchronisation.
JAVACT est une bibliothèque Java standard : son utilisation ne demande pas de traitement particulier au niveau du code source ou du bytecode, ni de modification de la machine virtuelle. Dans sa version actuelle, JAVACT repose sur le Software Development Kit 1.44 (le JRE 1.3 suffit pour l'exécution).
Ce document explique comment développer une application au moyen de JAVACT (version 0.5.0) et décrit :