(file) Return to readme.jmpi CVS log (file) (dir) Up to [Pegasus] / pegasus

  1 schuur 1.1 
  2            Java Manageability Programming Interface - JMPI
  3            
  4            Author: Adrian Schuur, schuur@de.ibm.com  - 30 Apr 2004 -
  5            
  6            First installment
  7            
  8               This installment of JMPI has been committed to the 2.4 branch.
  9               This installment has been build and tested on Suse 9.0 with Sun's j2sdk 1.4.2_04.
 10 r.kieninger 1.3 
 11 schuur      1.1 
 12                 Environment settings
 13                 
 14                    In order to build this support a few environment variables have to used.
 15                    The following script has been proven useful for setting up the build and execution environment.
 16                    You might need to adjust this to your system layout.
 17                 
 18                    export PEGASUS_HOME=`pwd`
 19                    export PEGASUS_PLATFORM=LINUX_IX86_GNU
 20 konrad.r    1.2    export PEGASUS_ENABLE_CMPI_PROVIDER_MANAGER=1
 21                    export PEGASUS_ENABLE_JMPI_PROVIDER_MANAGER=1
 22 schuur      1.1    export PEGASUS_DEBUG=1
 23                    export JAVA_SDK=/usr/java/j2sdk1.4.2_04
 24                    export JAVA_SDKINC=$JAVA_SDK/include
 25                    export LD_LIBRARY_PATH=$PEGASUS_HOME/lib:$JAVA_SDK/jre/lib/i386/server:$JAVA_SDK/jre/lib/i386/native_threads:$JAVA_SDK/jre/lib/i386
 26                    export PATH=$JAVA_SDK/bin:$PATH
 27 r.kieninger 1.3    export CLASSPATH=$PEGASUS_ROOT/src/Pegasus/ProviderManager2/JMPI
 28 schuur      1.1    export PATH=$PEGASUS_HOME/bin:$PATH
 29                    export PEGASUS_ROOT=$PEGASUS_HOME
 30                    export LD_ASSUME_KERNEL=2.2.5
 31                    cd $PEGASUS_HOME
 32                 
 33 mark.hamzy  1.5    There is now a new variable to determine which JVM to link with.  The choices are as follows:
 34                 	PEGASUS_JVM	sun	Sun's jvm (ex: j2sdk1.4.2_07)
 35                 	PEGASUS_JVM	ibm	IBM's jvm (ex: IBMJava2-142)
 36                 	PEGASUS_JVM	bea	Suse's IBM jvm (ex: BEAJava2-1.4.2)
 37                    So, pick one and export that variable to the environment.  For example,
 38                 	export PEGASUS_JVM=sun
 39                    NOTE: This is currently listened to for Linux builds.
 40                 
 41 mark.hamzy  1.4    There are a couple of optional environment variables to determine how the JRE is initialized.  These are
 42                    as follows (the variable name and what JRE option that it corresponds to):
 43                 
 44                    PEGASUS_JMPI_MAX_HEAP               -Xmx
 45                    PEGASUS_JMPI_INITIAL_HEAP           -Xms
 46                    PEGASUS_JMPI_JAVA_THREAD_STACK_SIZE -Xss
 47                 
 48                    So, for example, you would perform the following if you want to change the maximum heap size to 128 megabytes.
 49                 
 50                    export PEGASUS_JMPI_MAX_HEAP=128m
 51                 
 52 mark.hamzy  1.6    There is a new environment variable that tells the JVM to output more debugging information.  The variable name 
 53                    is called PEGASUS_JMPI_VERBOSE.  An example usage is as follows:
 54                 
 55                    export PEGASUS_JMPI_VERBOSE="jni,class"
 56                 
 57                    This will tell the JVM to output debug information on the JNI layer and class loading.
 58                 
 59 schuur      1.1    When using this script, place a copy of this script above your PEGASUS_HOME directory.
 60                    "cd" to PEGASUS_HOME, and issue ". ../setJPeg". Then do a normal make.
 61                 
 62                 
 63 mark.hamzy  1.4 This installment has a number of restrictios:
 64 schuur      1.1 
 65                    The provider interfaces follow the SNIA OpenWBEM APIs
 66                    Only Instance and Association providers are supported at the moment.
 67                 	SetProperty and GetProperty CIM operations will crash cimserver
 68                    Jar support is not yet implemented - all classes must be accessable via the CLASSPATH variabe.
 69                    The Makefiles are not yet Pegasus conforming.
 70                 	cimmofl must be used for provider registration.
 71                 
 72                 	Unloading of idle providers is not supported and Java will increase the memory footprint.
 73                 
 74                 
 75                 poststarttests
 76                 
 77                    This installment has a set of tests modelled after wetest/static. All tests work properly except
 78                    the Property tests. I had to modify "diff" to "diff -w", why that is needed I do not understand.
 79                 
 80                 
 81                 Building poststarttests:
 82                 
 83                    cd to .../src/Pegasus/ProviderManager2/JMPI/org/pegasus/jmpi/tests/Load
 84                    Issue "make"
 85 schuur      1.1 
 86                    This will load a schema to the repository and register the provider.
 87                 
 88                 
 89                 Running poststarttests:
 90                 
 91                    cd to .../src/Pegasus/ProviderManager2/JMPI/org/pegasus/jmpi/tests
 92                    Issue "find -name "*.rsp" -exec rm {} \;" to clean up *.rsp files
 93                    Issue "make poststarttests"
 94                 
 95                 
 96                 Samples
 97                 
 98                    The provider used for posstarttest,
 99                 	.../JMPI/org/pegasus/jmpi/test/JMPI_TestPropertyTypes/JMPI_TestPropertyTest.java is a working
100                 	example of how to code an JMPI tyle instance provider.
101                 	This directors also constains the required Makefile.
102                 
103                 	.../JMPI/org/pegasus/jmpi/sample contains more samples, one of which is an incomplete CIMClient
104                 	sample.
105                 
106 schuur      1.1 	Notice that all provider classes must be accessibe via the CASSPATH environment setting.
107                 
108                 
109                 Provider Registration
110                 
111                    JMPI providers are registered as usual. The Location property in P_ProviderModule has a special format.
112                 	The format is: <jar-file-name>:<provider-class-name>
113                 
114                 	Although jar support is not yet working correctly, this format must be used. You should use cimmofl
115                 	for registration untill cimmof is prepared for JMPI.
116                 
117                    instance of PG_ProviderModule
118                    {
119                       Name = "JMPI_TestPropertyTypesModule";
120                       Location = "JMPI_TestPropertyTypes.jar:"
121                 		           "org/pegasus/jmpi/tests/JMPI_TestPropertyTypes/JMPI_TestPropertyTypes";
122                       Vendor = "Pegasus Community";
123                       Version = "2.0.0";
124                       InterfaceType = "JMPI";
125                       InterfaceVersion = "1.0.0";
126                    };
127 schuur      1.1 
128                 
129                 Bug reports
130                 
131 r.kieninger 1.3    Use normal Pegasus bugzilla procedures to report malfunctions.
132                 
133 schuur      1.1 
134                 Regards, Adrian Schuur.
135                 
136                 

No CVS admin address has been configured
Powered by
ViewCVS 0.9.2