                                README
                  Esecuzione di esempi di provider nativo



I file Native_Example.java, NativeProvider.java, native.c e Native_Example.mof
generano delle classi, un file header e un codice C binario nativo per
implementare un provider nativo. Per maggiori informazioni, vedere il manuale
Sun WBEM SDK Developer's Guide.

Gli esempi riportati si riferiscono a una piattaforma Solaris in cui i file
WBEM sono installati nella directory "/usr" e /usr/java punta a jdk1.2.

Per eseguire l'esempio di provider nativo:

Verificare che la configurazione dell'ambiente includa JDK1.2 e il percorso
della classe:

CLASSPATH=.:/usr/sadm/lib/wbem:/usr/sadm/lib/wbem/cimapi.jar:/usr/sadm/lib/xml.jar


1. Eseguire il login come root o diventare superutente. Ad esempio:

su
password:*****
#

2. Copiare i file NativeProvider.class, Native_Example.class e libnative.so
   nella directory /usr/sadm/lib/wbem. Ad esempio:

# cp /usr/demo/wbem/provider/jni/*.class /usr/sadm/lib/wbem
# cp /usr/demo/wbem/provider/jni/*.so /usr/sadm/lib/wbem

3. Usare il compilatore MOF per compilare il file Native_Example.mof. Ad
   esempio:

# /usr/sadm/bin/mofcomp /usr/demo/wbem/provider/jni/Native_Example.mof  -u root -p "password"

NOTA: Se compare il messaggio di errore "NO_CIMOM:CIMOM //localhost/CIMOM2 not
      detected", significa che il gestore di oggetti CIM non  in esecuzione
      sul sistema. Digitare il seguente comando per riavviare il gestore di
      oggetti CIM ed eseguire nuovamente il comando mofcomp del punto 3:

      /usr/sadm/bin/cimom stop
      /usr/sadm/bin/cimom

4. Avviare CIM WorkShop. Ad esempio:

/usr/sadm/bin/cimworkshop

5. Ricercare la classe Native_Example:

In CIM WorkShop, fare clic su Action->Find Class e digitare Native_Example.
Sar possibile visualizzare l'istanza in questa classe.


Modifica dell'esempio di provider nativo
----------------------------------------

Per modificare l'esempio di provider nativo, procedere come segue.

1. Aprire uno dei file dell'esempio nativo in  /usr/demo/wbem/provider/jni.

2. Verificare che la variabile d'ambiente LD_LIBRARY_PATH sia impostata sulla
posizione dei file delle librerie condivise. 
Ad esempio, se i file delle librerie condivise si trovano in /wbem/provider:

  Se si utilizza la C shell, digitare:

  % setenv LD_LIBRARY_PATH /wbem/provider

  Se si utilizza la Bourne shell, digitare:

  % set LD_LIBRARY_PATH /wbem/provider

3. Verificare che la variabile d'ambiente CLASSPATH sia impostata sulla 
directory contenente i file delle classi del provider.

  Se si utilizza la C shell, digitare:

  % setenv CLASSPATH 
.:/usr/sadm/lib/wbem:/usr/sadm/lib/wbem/cimapi.jar:/usr/sadm/lib/xml.jar


  Se si utilizza la Bourne shell, digitare:

  % set CLASSPATH 
.:/usr/sadm/lib/wbem:/usr/sadm/lib/wbem/cimapi.jar:/usr/sadm/lib/xml.jar


4. Compilare i file dell'esempio nativo. Ad esempio:

% cd /usr/demo/wbem/provider/jni
% javac -classpath $CLASSPATH Native_Example.java
% javac -classpath $CLASSPATH NativeProvider.java
% /usr/bin/javah  -o Native_Example.h -jni Native_Example
% cc -G -o libnative.so -I/usr/java/include -I/usr/java/include/solaris -L/usr/java/lib native.c


5. Copiare i file NativeProvider.class, Native_Example.class e libnative.so 
   nella directory /usr/sadm/lib/wbem. Ad esempio:

% cp /usr/demo/wbem/provider/jni/*.class /usr/sadm/lib/wbem
% cp /usr/demo/wbem/provider/jni/*.so /usr/sadm/lib/wbem

6. Usare il compilatore MOF per compilare il file Native_Example.mof. Ad
   esempio:

% /usr/sadm/bin/mofcomp /usr/demo/wbem/provider/jni/Native_Example.mof  -u root -p "password"

7. Eseguire il login come root o diventare superutente e arrestare il gestore
   di oggetti CIM. Ad esempio:

su
password:******

     /usr/sadm/bin/cimom stop

8. Usare uno dei metodi seguenti per riavviare il gestore di oggetti CIM:

   Per avviare il gestore di oggetti CIM in modalit normale:

     /usr/sadm/bin/cimom

   Per avviare il gestore di oggetti CIM in modalit di debugging:

   a. Aprire con un editor di testo il file /usr/sadm/bin/cimom

   b. Individuare la riga seguente:
      ${JAVACMD} $JAVAOPTS $CIMOMSERVER "$@" &

   c. Sostituirla con la riga seguente:
      ${JAVACMD} $JAVAOPTS $CIMOMSERVER -lDev "$@" &

   d. Avviare il gestore di oggetti CIM:
     /usr/sadm/bin/cimom


URL correlati
-------------

- http://www.sun.com/solaris/wbem/download.html (Solaris WBEM Services)
- http://www.dmtf.org/spec/cims.html (Specifica CIM DMTF)

