Mode d`emploi

publicité
Installation d'OpenORB.
Vincent Englebert
Version 2 décembre 2003 à 17:44
Ce document décrit les étapes succesives pour l'installation d'OpenORB. Vous devrez utiliser à cette fin le
fichier ZIP disponible sur le site du cours et non les packages disponibles sur le site officiel d'OpenORB.
Démarches
1. Installer le Sun Java 2 SDK, Standard Edition (J2SE) disponible à cet endroit:
http://java.sun.com/j2se/downloads.html
2. Rapatrier le fichier openorb.zip du site du cours et le décompacter dans un répertoire vierge. Les fichiers
vont s'installer sous le répertoire openorb que l'on désignera ultérieurement par $(DIRECT) .
3. Créer un fichier openorb.bat. Un modèle de fichier est disponible à cet endroit
$(DIRECT)/openorb.bat.modele. Son contenu ressemble à ceci:
@echo off
set CLASSPATH=%CLASSPATH%
echo
echo
echo
echo
set
set
set
set
set
set
set
set
set
------------------------------ SET PARAMETERS FOR OPENORB 1.3.1
-----------------------------CLASSPATH=%CLASSPATH%;e:\programs\openorb\OpenORB-1.3.1\lib\openorb_tools-1.3.1.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\OpenORB-1.3.1\lib\openorb-1.3.1.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\OpenORB-1.3.1\lib\openorb_examples-1.3.1.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\OpenORB-1.3.1\lib\openorb_test-1.3.1.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\OpenORB-1.3.1\lib\avalon-framework.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\OpenORB-1.3.1\lib\logkit.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\OpenORB-1.3.1\lib\excalibur-configuration.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\OpenORB-1.3.1\lib\xerces.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\OpenORB-1.3.1\lib\junit.jar
rem ---------------rem MANAGEMENT-BOARD
rem ---------------set
set
set
set
set
CLASSPATH=%CLASSPATH%;e:\programs\openorb\ManagementBoard-1.3.0\lib\openorb_board-1.3.0.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\ManagementBoard-1.3.0\lib\xerces.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\ManagementBoard-1.3.0\lib\junit.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\ManagementBoard-1.3.0\lib\jhall-1.1.1.jar
CLASSPATH=%CLASSPATH%;e:\programs\openorb\ManagementBoard-1.3.0\lib\jlfgr-1.0.jar
rem ---------------rem NAMING-SERVICE
rem ---------------set CLASSPATH=%CLASSPATH%;e:\programs\openorb\NamingService-1.3.1\lib\openorb_ins-1.3.1.jar
set CLASSPATH=%CLASSPATH%;e:\programs\openorb\NamingService-1.3.1\lib\openorb_tns-1.3.1.jar
set CLASSPATH=%CLASSPATH%;e:\programs\openorb\NamingService-1.3.1\lib\openorb_ins_examples1.3.1.jar
set CLASSPATH=%CLASSPATH%;e:\programs\openorb\NamingService-1.3.1\lib\openorb_ins_plugin-1.3.1.jar
set CLASSPATH=%CLASSPATH%;e:\programs\openorb\NamingService-1.3.1\lib\openorb_tns_test-1.3.1.jar
rem ------------------rem PERSISTENT-SERVICE
rem ------------------set CLASSPATH=%CLASSPATH%;E:\programs\openorb\PersistentStateService-1.3.0\lib\openorb_pss1.3.0.jar
rem --------------------rem TRANSACTION-SERVICE
rem --------------------set CLASSPATH=%CLASSPATH%;E:\programs\openorb\TransactionService-1.3.0\lib\openorb_ots-1.3.0.jar
set CLASSPATH=%CLASSPATH%;E:\programs\openorb\TransactionService-1.3.0\lib\openorb_ots_examples1.3.0.jar
set CLASSPATH=%CLASSPATH%;E:\programs\openorb\TransactionService-1.3.0\lib\xerces.jar
set CLASSPATH=%CLASSPATH%;E:\programs\openorb\TransactionService-1.3.0\lib\junit.jar
rem ---------------------rem INTERFACE-REPOSITORY
rem ---------------------set CLASSPATH=%CLASSPATH%;E:\programs\openorb\InterfaceRepository-1.3.0\lib\openorb_ir_plugin1.3.0.jar
set CLASSPATH=%CLASSPATH%;E:\programs\openorb\InterfaceRepository-1.3.0\lib\openorb_ir-1.3.0.jar
set CLASSPATH=%CLASSPATH%;E:\programs\openorb\InterfaceRepository-1.3.0\lib\openorb_ir_examples1.3.0.jar
set PATH=%PATH%;e:\programs\openorb\OpenORB-1.3.1\bin
e:
cd \programs\openorb
3. Remplacer e:\programs\openorb par $(DIRECT) dans le fichier openorb.bat
4. Configurer votre machine abstraite java conformément aux directives du chapitre 3 de ORB.PDF comme
suit: exécuter le programme $(DIRECT)/ShowMe.class, il vous affichera le répertoire home de Java. Placer le
fichier $(DIRECT)/OpenORB-1.3.1/config/orb.properties dans le répertoire home de Java.
5. Placer le fichier $(DIRECT)/OpenORB-1.3.1/config/OpenORB.xml dans la home directory de l'utilisateur (cfr.
votre profil, par exemple c:\documents and settings\tintin)
5. Pour utiliser une application OpenOrb, vous devez lancer une console et exécuter le programme
openorb.bat qui initialisera toutes les variables d'environnement nécessaires.
6. Vous pouvez maintenant tester le naming service en invoquant le programme naming.bat.
Vous pouvez alors récupérer l'IOR dans un fichier et l'utiliser dans d'autres applications .
7. Le répertoire $(DIRECT)/OpenORB-1.3.1/bin contient différents scripts.bat qui vous faciliteront la tâche. À
vous d'adapter ces fichiers selon votre convenance. Ces scripts sont:
A) naming.bat Exécute le naming service. Vous obtiendrez alors cette sortie:
B) idl2java.bat Exécute le compilateur IDL vers Java. Exécutez cette commande sans arguments pour
obtenir une ligne sur les différentes options de la ligne de commande.
--------------------------------------------------------------OpenORB
(c) 2002 The Community OpenORB
IDL To Java Compiler
--------------------------------------------------------------Options
-all
-boa
Generate mapping for included files.
Generate skeleton for BOA.
-d directory_name
Provide a way to specify the ouput dir. This option
will not use the 'generated' directory.
For example :
org.openorb.compiler.IdlCompiler demo.idl -d /home/me/
-dynamic
Generate stub with DII and skeleton with DSI
( portable way before CORBA 2.3 ).
-D
Define a symbol. It is equivalent to #define.
-importLink link
-I
Allow specification of include directory.
Example:
org.openorb.compiler.IdlCompiler demo.idl -I /home/me/idl -I ../other
-native native_name native_mapping
Define native type mapping.
For example :
org.openorb.compiler.IdlCompiler demo.idl -native cookie java.lang.Object
this command implies the mapping of
cookie in java.lang.Object.
-nolocalstub
Generate stubs without local invocation path.
-noprefix
Don't use prefixes as packages names.
-noreverseprefix
The prefixes are used as package name but they are not reversed.
-noskeleton
Don't generate skeleton.
-nostub
Don't generate stub.
-notie
Don't generate TIE classes for delegation mode.
-package package_name
Generate files in package_name.
Example:
org.openorb.compiler.IdlCompiler demo.idl -package exemple
-pidl
-portablehelper
Generate portable helper classes. Nonportable helpers must be
compiled using OpenORB, but the generated class files will work
anywhere. Portable helpers can be compiled anywhere and will
work identically on all orbs with Any.extract_Streamable.
-quiet
Suppress any output. Same as -silence.
-release
Show version number.
-silence
Suppress any output. Same as -quiet.
-verbose
Show debug output.
-jdk1.4
Generate classes that use JDK1.4 features.
The generate classes will not compile on previous versions.
-invokeMethod <Classes|Reflection|Switch>
The method used to implement the xxxPOA invoke method.
If not specified Classes is used.
-minTableSize <size>
The minimum size of method table.
-XgenerateValueFactory <impl postfix>
Generate default value factories for valuetypes.
Creates instance of <valuetype name><impl postfix>.
-XgenerateValueImpl <postfix>
Generatae default implementation of valuetypes.
Creates classes with name <valuetype name><postfix>.
C) Interface.bat Le repository d'interfaces.
D) Idl2rep.bat Le compilateur qui chargera le contenu d'un fichier idl dans le repository d'interfaces.
Seuls les deux premiers scripts sont nécessaires pour le travail.
Commentaires
1 Les références initiales
Si vous comptez utiliser le naming service, vous aurez alors besoin de passer sa référence IOR. Vous pouvez
le faire soit en paramétrant le fichier OpenORB.xml, soit en indiquant l'IOR en commande en ligne comme
ceci:
a) -ORBInitRef NameService=corbaloc:iiop:[email protected]:1239/NameService
b) -ORBInitRef NameService=file:somefile.ior
dans ce cas, somefile.ior est un fichier qui contiendrait la référence en question. Le principe est le
même pour les autres services une fois que l'on connaît leur nom symbolique et leur IOR.
2 Documentation
Chaque package (naming, openorb, ...) contient un manuel de référence (html & pdf) ainsi que la
documentation Javadoc sous le répertoire doc.
3 Consultez les sources
Le code source des différents package d'openOrb ne figurent pas dans la distribution que vous avez obtenue.
Ils sont toutefois téléchargeables à partir du site d'OpenORB. N'hésitez pas à les consulter en cas de
problèmes pointus, le code est lisible.
Téléchargement