COSMOSDataCollectorEnvironment
From Eclipsepedia
| |
Constructing a development environment on Windows for COSMOS Data Collection:
Contents |
Download Dependencies
1. Go get Eclipse 3.3 from http://download.eclipse.org/downloads/drops/R-3.3-200706251500/index.php
2. Go download muse-2.2.0-bin.zip from http://www.apache.org/dist/ws/muse/2.2.0/bin/
3. Go download the latest 3.3 version of org.eclipse.equinox.ds.jar from the Equinox build at http://download.eclipse.org/eclipse/equinox/
Note: As of the 3.3 RC4 build, org.eclipse.equinox.ds.jar has been moved from the Add-on Bundles section to the Incubator section of the downloads, and is no longer included with the standard Equinox distribution.
4. Go download latest 3.3 version of org.eclipse.equinox.log.jar from the Equinox build at http://download.eclipse.org/eclipse/equinox/
5. Go download org.apache.xerces_2.8.0 and org.apache.xml.resolver_1.1.0 from http://download.eclipse.org/tools/orbit/downloads/
6. Go download org.apache.derby_10.1.2.0 from http://download.eclipse.org/tools/orbit/downloads/
7. Unzip the muse distribution to a temporary directory and copy the following directories or jars to your Eclipse plugins directory:
- from muse-2.2.0-bin\lib\eclipse-osgi:
javax.mail.api_1.4.0 javax.saaj.api_1.3.0 org.apache.commons.httpclient_3.0.1 org.apache.commons.logging_1.1.0 org.apache.ws.commons.schema_1.2.0 org.apache.wsdl4j_1.6.1 org.apache.xalan_2.7.0 wstx-asl_3.0.1
The wsdl4j 1.6.1 bundle’s manifest requires some edits. See the description below:
Import-Package : javax.xml.namespace <<<<< remove this line, it’s a dup. Require-Bundle : org.apache.xerces <<<<<<< remove the space between Require-Bundle and ‘:’ Export-Package: com.ibm.wsdl;version="1.6.1", com.ibm.wsdl.extensions;version="1.6.1", com.ibm.wsdl.extensions.http;version="1.6.1", com.ibm.wsdl.extensions.mime;version="1.6.1", com.ibm.wsdl.extensions.schema;version="1.6.1", com.ibm.wsdl.extensions.soap;version="1.6.1", com.ibm.wsdl.extensions.soap12;version="1.6.1", com.ibm.wsdl.factory;version="1.6.1", com.ibm.wsdl.util;version="1.6.1", com.ibm.wsdl.util.xml;version="1.6.1", com.ibm.wsdl.xml;version="1.6.1", javax.wsdl;version="1.6.1", javax.wsdl.extensions;version="1.6.1", javax.wsdl.extensions.http;version="1.6.1", javax.wsdl.extensions.mime;version="1.6.1", javax.wsdl.extensions.schema;version="1.6.1", javax.wsdl.extensions.soap;version="1.6.1", javax.wsdl.extensions.soap12;version="1.6.1", javax.wsdl.factory;version="1.6.1", javax.wsdl.xml;version="1.6.1" Import-Package: javax.xml.namespace
- from muse-2.2.0-bin\modules\osgi\complete
muse-complete-2.2.0
- from muse-2.2.0-bin\modules\osgi\mini
muse-osgi-soa-mini-2.2.0
8. Copy the bundles you downloaded from Equinox and Orbit in steps 3-6 above to your Eclipse plugins directory.
Check out code from CVS
Check out the following projects under COSMOS/data-collection:
org.apache.ibatis org.eclipse.cosmos.dc.birt.helper org.eclipse.cosmos.dc.common org.eclipse.cosmos.dc.local.domain org.eclipse.cosmos.dc.local.registry org.eclipse.cosmos.dc.mgmt.common org.eclipse.cosmos.dc.mgmt.wsdm org.eclipse.cosmos.dc.remote.wsdm org.eclipse.cosmos.dc.sample.components org.eclipse.cosmos.dc.sample.configurations org.eclipse.cosmos.dc.spec org.eclipse.cosmos.dc.tptp.gla.components org.eclipse.cosmos.tptp.dependencies
Check out the following projects under COSMOS/tests/data-collection
org.eclipse.cosmos.dc.tests
Note: for the latter to properly compile, in the project's properties one needs to change two referenced projects from org.eclipse.cosmos.dc.management.(common|wsdm) to org.eclipse.cosmos.dc.mgmt.(common|wsdm) / mmo@zurich.ibm.com
Set up database
Set up your COSMOS database by running the build.xml ant scripts in org.eclipse.cosmos.dc.local.registry/persistence_setup and org.eclipse.cosmos.dc.sample.components/persistence_setup. These scripts will initialize a Derby database named cosmosdb in your Workspace directory under a folder called database. You can change the location of this database by updating the derby system home property in the build scripts.
Alternatively, you can check out a sample database from http://dev.eclipse.org/viewcvs/index.cgi/org.eclipse.cosmos/examples/end2end/org.eclipse.cosmos.examples.e2e.dc.repository/database/?root=Technology_Project. This database already has the tables required to run the COSMOS end-to-end example and some sample data populated in the database.
You should now have an environment suitable for compiling and testing the COSMOS Data Collection runtime.
Set up OSGi debug environment
To construct a debug configuration, create a new OSGi Framework configuration, and "Deselect All" of the bundles in the configuration. Select all org.eclipse.cosmos.* bundles. Then press "Add Required Bundles". You'll need to manually add the following from the "Target Platform" list:
javax.mail.api, javax.saaj.api, muse.osgi.soa.mini, org.apache.commons.httpclient, org.apache.commons.logging(1.0.4), org.eclipse.equinox.ds, org.eclipse.equinox.http.jetty, org.eclipse.equinox.log, org.apache.derby
Then press "Apply", followed by "Add Required Bundles", then "Apply" again,
and you should have an working debug configuration.
Configure the following VM arguments for setting your preferred Http port and database location:
-Dorg.osgi.service.http.port=8080 -Dderby.system.home=<location of database>
Run the debug configuration. You should wind up with the following bundles active, plus any bundles you add from COSMOS and the COSMOS samples. To display the list of active bundles, type ss at the osgi prompt in the Eclipse console window.
id State Bundle 0 ACTIVE org.eclipse.osgi_3.3.0.v20070430 1 ACTIVE wsdl4j_1.6.1 2 ACTIVE org.apache.commons.logging_1.1.0_1.1.0 3 ACTIVE org.apache.ibatis_2.3.0 4 ACTIVE org.eclipse.cosmos.datacollection.sample.components_1.0.0 5 ACTIVE org.apache.wsdl4j_1.6.1 6 ACTIVE org.eclipse.core.runtime_3.3.100.v20070409 7 ACTIVE org.eclipse.cosmos.dc.mgmt.common_1.0.0 8 ACTIVE org.eclipse.cosmos.dc.mgmt.wsdm_1.0.0 9 ACTIVE org.eclipse.core.jobs_3.3.0.v20070423 10 ACTIVE org.eclipse.equinox.log_1.0.100.v20070226 11 ACTIVE org.eclipse.equinox.common_3.3.0.v20070426 12 ACTIVE org.apache.xml.resolver_1.1.0.v200702082200 13 ACTIVE org.apache.xerces_2.8.0.v200704181622 14 ACTIVE org.eclipse.osgi.util_3.1.100.v20060918 15 ACTIVE org.mortbay.jetty_5.1.11.v200701082340 16 RESOLVED org.eclipse.core.runtime.compatibility.registry_3.2.100.v20070316 Master=24 17 ACTIVE org.apache.derby_10.2.2.0_v200705011300 18 ACTIVE org.eclipse.osgi.services_3.1.100.v20060918 19 ACTIVE javax.mail.api_1.4.0 20 ACTIVE org.eclipse.equinox.http.jetty_1.0.0.v20070427 21 ACTIVE org.eclipse.equinox.app_1.0.0.v20070423 22 ACTIVE javax.activation.api_1.1.0 23 ACTIVE org.apache.ws.commons.schema_1.2.0 24 ACTIVE org.eclipse.equinox.registry_3.3.0.v20070416 Fragments=16 25 ACTIVE javax.saaj.api_1.3.0 26 ACTIVE org.eclipse.cosmos.dc.local.domain_1.0.0 27 ACTIVE org.eclipse.cosmos.dc.spec_1.0.0 28 ACTIVE org.eclipse.cosmos.dc.sample.configurations_1.0.0 29 ACTIVE muse.osgi.soa.mini_2.2.0 30 ACTIVE org.eclipse.cosmos.dc.common_1.0.0 31 ACTIVE javax.stax.api_1.0.1 32 ACTIVE javax.servlet_2.4.0.v200704241052 33 ACTIVE org.apache.commons.httpclient_3.0.1 34 ACTIVE org.eclipse.equinox.http.servlet_1.0.0.v20070402 35 ACTIVE org.w3c.dom_1.3.3.v200704190547 36 ACTIVE org.eclipse.equinox.ds_1.0.0.v20070226 37 ACTIVE org.apache.muse.complete_2.2.0 38 ACTIVE org.eclipse.equinox.preferences_3.2.100.v20070409 39 ACTIVE org.eclipse.cosmos.dc.local.registry_1.0.0 40 ACTIVE org.eclipse.core.contenttype_3.2.100.v20070319 41 ACTIVE wstx_asl_3.0.1 42 ACTIVE org.apache.xalan_2.7.0

