OpenCCM for PDA Installation and User Guide

    Table of content

     

    The OpenCCM for PDA Module

    The OpenCCM for PDA distribution is now available as a separated module on the CVS. The OpenCCM runtime archive provided with this PDA distribution support now the Distributed Computing Infrastructure (DCI) features. To get the pda module, execute the following command:

    $ cvs checkout pda

    Requirements

    As for any other environment, the OpenCCM distribution for PDA needs an installed JVM and ORB to work correctly. In the following distribution, OpenCCM has been succesfully tested with ORBacus-4.1 CORBA product, the IBM J9 Java Virtual Machine (Windows CE device) and Blackdown Java Virtual Machine (Familiar Linux device). However you can use any of supported ORBs or JVM for your device by easily editing the build.properties configuration file.

    Moreover to run the following provided scripts on a Windows CE device, you need to install PocketConsole v1.3 on your PDA.

    Let's note also that if you want to deploy and execute OpenCCM applications on a PDA, you should (or have to) compile your application and build the Java archive of your application (more precisely the archive of the CORBA component that will be installed and instanciated on the device) using the Java compiler provided with the JVM installed in your device (for example the IBM j9c Java compiler if you use the IBM J9 JVM).

    Fully supported configurations

    OpenCCM has been succesfully tested for the following configurations of devices:

    Device Operating System ORB name Java Virtual Machine
    Windows CE ORBacus-4.1 IBM J9 JVM
    Windows CE JacORB-2.1 IBM J9 JVM
    Linux Familiar ORBacus-4.1 Blackdown JVM
    Linux Familiar JacORB-2.1 Blackdown JVM

    OpenCCM PDA Distribution Architecture

    The OpenCCM distribution architecture for PDA is the following:

    Directory   File Description
    common/     All OpenCCM for Windows CE and Linux common files.
      corba/ config/<ORB.name>/xml/*.xml All CORBA ORB specific configuration files.
      externals/   All external Java archives (apollon, jidlscript, xerces, browser framework, etc.).
      jar/ OpenCCM_Launcher.jar The OpenCCM Launcher tool.
      lib/ OpenCCM.jar A default OpenCCM runtime corresponding to the following configuration: [OpenCCM Version: 0.8.1 / ORB: ORBacus-4.1 / JVM: JDK-1.3.1_03].
      src/ dtd/ccm/*.dtd All CCM DTD files.
        xml/launcher/*.xml All common XML configuration files for the OpenCCM launcher.
        xml/browser/default/*.xml The Browser XML configuration files.
        xml/deployer/*.dcf The default deployer configuration file.
        xml/descriptor/dci/*.npd The NodeProperties file.
    linux/     OpenCCM for Linux device files.
        build.xml Linux PDA Ant build file.
        build.properties Linux PDA configuration file.
      src/ bin/*.sh OpenCCM Linux command scripts.
        xml/launcher/Runtime.xml OpenCCM Linux specific runtime XML Launcher configuration file.
    wince/     OpenCCM for Windows CE device files.
        build.xml Windows CE PDA Ant build file.
        build.properties Windows CE PDA configuration file.
      archives/ <ORB.name>/*.aar CORBA Component Assembly archive of OpenCCM demonstrations for Windows CE.
      externals/   External tools for Windows CE distribution (Remote Command tool to automatically install OpenCCM on the device via ActiveSync).
      src/ bin/*.bat OpenCCM Windows CE command scripts.
        xml/launcher/Runtime.xml OpenCCM Windows CE specific runtime XML Launcher configuration file.
      lib/ <ORB.name>/OpenCCM.jar OpenCCM Windows CE runtimes for supported ORB corresponding to the following configuration [OpenCCM Version: 0.8.2 / ORB: / JVM: JDK-1.3.1_03].
    doc/   readme.htm This HTML guide.

    Compilation and Configuration Instructions

    Compilation of the pda module

    To install and compile OpenCCM for PDA, you have to:

    1. Go into the pda root directory corresponding to your OS device (Windows CE or Linux Familiar):

      $ cd pda/linux/ or $ cd pda/wince/

    2. Edit the build.properties configuration file and set the following variables:


      Variable Description Example (WinCE/Linux) Mandatory
      ORB.pda.name Name of the used ORB on the device. JacORB-2.1 Yes
      openccm_home.dir Path to the local OpenCCM installed directory (on desktop). /OpenCCM-0.8.1/openccm/JacORB-2.1 No
      orb.install.dir Path to the installed ORB on the device. /ORB/JacORB-2.1 Yes
      openccm.install.dir Path where OpenCCM build dir will be installed (on the device). /OpenCCM/${ORB.pda.name} Yes
      openccm.config.dir Path to the OpenCCM configuration directory (Linux only). /home/OpenCCM_CONFIG_DIR (Linux) Yes
      java.install.dir
      Path to the installed JVM on the device. \\WSDD (Windows CE / IBM J9 JVM)
      /j2re1.3.1 (Linux Familiar / Blackdown JVM)
      Yes
      CLASSPATH
      Classpath for Java and OpenCCM. Windows CE:
      -cp:xerces.jar;OpenCCM_Launcher.jar
      Linux:
      -classpath xerces.jar:OpenCCM_Launcher.jar
      Yes

      Windows CE specific configuration parameters:

      Variable Description Example (WinCE/Linux) Mandatory
      NS.IOR The default CosNaming service host (Windows CE). http://host.domain:8080/NameService.IOR
      mcast://multicast_address_group/NameService.IOR
      corbaloc::host.domain:2000/NameService
      No
      DCI.IOR The default DCI Manager host (Windows CE). http://host.domain:8080/DCI.IOR
      mcast://multicast_address_group/DCI.IOR
      corbaname::host.domain:2000/NameService#ctx/DefaultDCI

      (ctx default value is OpenCCM/DCImanagers)
      No
      DCI_NAME
      FACTORY_NAME
      CS_NAME
      NODE_NAME
      ASSEMBLY_NAME
      DEMO_NAME
      Default CosNaming service registration parameters (Windows CE). DCI_NAME=DefaultDCI
      FACTORY_NAME=DefaultFactory
      CS_NAME=ComponentServer2
      NODE_NAME=MainNode
      ASSEMBLY_NAME=MyAssembly
      DEMO_NAME=MyApp.aar
      No
      zip_archive.dir Path to CORBA Component Assembly archive to deploy (AAR). ${openccm.install.dir}/archives No
    3. Start the Ant tool to compile OpenCCM and generate scripts and configuration files for your device:

      $ ant

      This create the [linux-or-wince]/<ORB.name> directory that contain the whole OpenCCM distribution for your PDA.

    4. Copy the content of this <ORB.name>/ directory to the openccm.install.dir of your device.

      Note:
      The pda/wince/build.bat script allows to compile, generate scripts and configuration files and automatically install OpenCCM on your WinCE device, using an external tool called Remote Command (RCMD) which copy via an ActiveSync link the content of the generated <ORB.name> directory from the desktop to the PDA (assuming your PDA is connected to your desktop via an active ActiveSync link). Moreover, if you download the (free) Windows Mobile Developer Toys from Microsoft, you'll be able to easily deploy OpenCCM to your device via ActiveSync (copy files from desktop to device, create or remove directories on device, etc.)

      To use the automatic installation on Window CE devices feature, just set the ORB.pda.name value and type:
      \pda\wince\> build.bat


    Dependencies for the pda module

    Runtime libraries for PDA are currently provided as compiled distributions for Windows CE and Linux devices, respectively in wince/lib and common/lib directory. Moreover, to use the latest version of OpenCCM libraries (assuming the whole OpenCCM platform is installed), you can use the specific dedicated ant target with:

    $ ant openccm_pda

    by setting the openccm_home.dir parameter in build.properties file to give the path to an installed OpenCCM platform (version lower than 0.8.2). In that case, the compilation uses latest libraries, external tools and configuration files of OpenCCM instead of provided ones in the pda module.

    Compilation Result

    After compilation, the following directories and files are created in wince/<ORB.name> or linux/<ORB.name> directory:

    DirectoryFileDescription
    archives/ CORBA Component Assembly Archives demos for PDAs.
     *.aar 
    bin/ Available Commands of OpenCCM PDA distribution.
      ccm_install (.sh/.bat)
    ccm_install (.sh/.bat)
    ns_start (.sh/.bat)
    ns_set (.sh/.bat)
    dci_start (.sh/.bat)
    dci_set (.sh/.bat)
    factory_start (.sh/.bat)
    node_start (.sh/.bat)
    jcs_start (.sh/.bat)
    ccm_deploy (.sh/.bat)
    tear_down (.sh/.bat)
    ccm_browser (.sh/.bat)
    ccm_deinstall (.sh/.bat)
    See OpenCCM for PDA User Guide
    dtd/ccm/*.dtdAll CCM DTD files.
    externals/ All external used Java archives.
      apollo-runtime.jar
    browser.jar
    jidlscript.jar
    xerces.jar
     
    jar/ OpenCCM Launcher and Plugins Java archives.
      OpenCCM_Launcher.jar
     
    lib/ OpenCCM for PDA runtime libraries.
     OpenCCM_*.jar 
    xml/ All XML files for the launcher, the browser and for the OpenCCM DCI.
      launcher/*.xml
    browser/default/*.xml
    descriptor/dci/NodeProperties.npd
    deployer/DefaultDeployerConfig.dcf
     

    Uninstalling OpenCCM for PDA

    To uninstall OpenCCM for Linux PDA:

    1. Move to the Linux directory with:

      $ cd pda/linux/

    2. Execute the following command:

      $ ant clean

    This will remove the linux/<ORB.name> directory from the desktop.

    To uninstall OpenCCM for Windows CE PDA:

    1. Move to the Windows CE directory with:

      $ cd pda/wince/

    2. Execute the following command:

      $ ant clean

    This will remove the wince/<ORB.name> directory from the desktop.

    Warning: To remove the OpenCCM build directory from the WinCE device connected to the desktop via ActiveSync, launch:

    $ build.bat clean


    OpenCCM for PDA User Guide


    OpenCCM PDA available commands:


    Command Description
    ccm_install Installs the OpenCCM Configuration Repository by creating the OpenCCM_CONFIG_DIR directory and other OpenCCM component servers directories.
    ns_start Starts the <ORB.name> CosNaming Service on the PDA. By default, the CosNaming Service is started on the port 2000.
    ns_set Set the IOR of the started CosNaming Service.
    dci_set Set the IOR of the started DCI Manager.
    dci_start Starts an OpenCCM DCI Manager.
    factory_start Starts an OpenCCM AssemblyFactory Manager.
    node_start Starts an OpenCCM Node Manager in an OpenCCM Distributed Computing Infrastructure.
    jcs_start Starts (manually) an OpenCCM Java ComponentServer.
    ccm_deploy Starts the deployment process using the OpenCCM deploytool from the PDA.
    tear_down Tear down a running assembly.
    ccm_uninstall Uninstalls the OpenCCM environment.

     

    Set the IOR of the started CosNaming Service

    Usage: ns_set <IOR|URL>

    • Linux PDA:

      Execute one of the following commands from a console on the device:

      $ ns_set.sh http://host.domain:8080/NameService.IOR
      $ ns_set.sh mcast://multicast_address_group/NameService.IOR
      $ ns_set.sh corbaloc::host.domain:2000/NameService

    Set the IOR of the started DCI Manager

    Usage: dci_set <IOR|URL>

    • Linux PDA:

      Execute one of the following commands from a console on the device:

      $ dci_set.sh http://host.domain:8080/DCI.IOR
      $ dci_set.sh mcast://multicast_address_group/DCI.IOR
      $ dci_set.sh corbaname::host.domain:2000/NameService#OpenCCM/DCIManagers/DCI_NAME

    Starting an OpenCCM Java ComponentServer on your device

    The jcs_start command manually starts an OpenCCM Java ComponentServer on the device. Starting a ComponentServer on the device requires that first a CosNaming Service is running somewhere in a node of the network.

    Usage: jcs_start <ComponentServerName>

    • Linux PDA:

      Execute the following command from a console on the device:

      $ jcs_start.sh <ComponentServerName>

    • WinCE PDA:

      Execute the following command from a DOS console on the device:

      > jcs_start.bat <NS.IOR> <ComponentServerName>

      Warning:
      If no argument is provided (if the script is directly launched from an explorer), the jcs_start.bat command uses the NS.IOR parameter provided in the wince/build.properties configuration file to locate the CosNaming service for its registration, and uses the CS_NAME parameter as the <ComponentServerName> value.

    Starting an OpenCCM DCI Manager on your device

    The dci_start command starts an OpenCCM DCI Manager on the device. Starting a DCI Manager on the device requires that first a CosNaming Service is running somewhere in a node of the network.

    Usage: dci_start <DCIName>

    • Linux PDA:

      Execute the following command from a console on the device:

      $ dci_start.sh <DCIName>

    • WinCE PDA:

      Execute the following command from a DOS console on the device:

      > dci_start.bat <NS.IOR> <DCIName>

      Warning:
      If no argument is provided (if the script is directly launched from an explorer), the dci_start.bat command uses the NS.IOR parameter provided in the wince/build.properties configuration file to locate the CosNaming service for its registration, and uses the DCI_NAME parameter as the <DCIName> value.

    Starting an OpenCCM Assembly Factory on your device

    The factory_start command starts an OpenCCM Factory Manager on the device. Starting a Factory Manager on the device requires that first a CosNaming Service is running and that a DCI manager is started somewhere in a node of the network.

    Usage: factory_start <FactoryName>

    • Linux PDA:

      Execute the following command from a console on the device:

      $ factory_start.sh <FactoryName>

    • WinCE PDA:

      Execute the following command from a DOS console on the device:

      > factory_start.bat <NS.IOR> <DCI.IOR> <FactoryName>

      Warning:
      If no argument is provided (if the script is directly launched from an explorer), the factory_start.bat command uses the NS.IOR parameter provided in the wince/build.properties configuration file and uses the DCI_NAME and FACTORY_NAME values.

    Starting an OpenCCM Node Manager on your device

    Since OpenCCM-0.8 release, it is possible to start an OpenCCM Node Manager in an OpenCCM Distributed Computing Infrastructure (DCI). No need to start an OpenCCM ServerActivator and ComponentInstallation on the device (by launching deprecated ci_start and activator_start command scripts of the previous release), as it is now provided as interfaces by the Node Manager. It provides functionalities to start and stop OpenCCM Component Servers, to install and manage CORBA component archives or to access meta information about the node.

    The node_start command starts an OpenCCM Node Manager on the device. Starting a Node Manager on the device requires that first a CosNaming Service is running and that a DCI manager is started somewhere in a node of the network.

    Usage: node_start <NodeName>

    • Linux PDA:

      Execute the following command from a console on the device:

      $ node_start.sh <NodeName>

    • WinCE PDA:

      Execute the following command from a DOS console on the device:

      > node_start.bat <NS.IOR> <DCI.IOR> <NodeName>

      Warning:
      If no argument is provided (if the script is directly launched from an explorer), the node_start.bat command uses the NS.IOR parameter provided in the wince/build.properties configuration file and uses the DCI_NAME and NODE_NAME values.

    Starting a deployment process from your device

    The ccm_deploy command starts the deployment process of an OpenCCM application from the device.

    Usage: ccm_deploy -F <FactoryName> <AssemblyArchive>

    where <AssemblyArchive> is the path to the CORBA Component Assembly ZIP archive to deploy.

    • Linux PDA:

      Execute the following command from a console on the device:

      $ ccm_deploy.sh -F <FactoryName> <AssemblyArchive>

    • WinCE PDA:

      Execute the following command from a DOS console on the device:

      > ccm_deploy.bat <NS.IOR> <DCI.IOR> <FactoryName> <AssemblyArchive>

      Warning:
      If no argument is provided (if the script is directly launched from an explorer), the ccm_deploy.bat command uses the NS.IOR, DCI.IOR, DCI_NAME, FACTORY_NAME, zip_archive.dir (path to the assembly) and DEMO_NAME (the assembly archive name) parameters provided in the wince/build.properties configuration file.

    Tear down the Assembly

    The tear_down command tear down a running assembly.

    Usage: tear_down <AssemblyName>

    • Linux PDA:

      Execute the following command from a console on the device:

      $ tear_down.sh <AssemblyName>

    • WinCE PDA:

      Execute the following command from a DOS console on the device:

      > tear_down.bat <NS.IOR> <AssemblyName>

      Warning:
      If no argument is provided (if the script is directly launched from an explorer), the ccm_deploy.bat command uses the NS.IOR and ASSEMBLY_NAME (the name of the running assembly) parameters provided in the wince/build.properties configuration file.

Copyright 1999-2005, ObjectWeb Consortium | contact