Difference between revisions of "ADempiere/Equinox Integration 2"

From ADempiere
Jump to: navigation, search
This Wiki is read-only for reference purposes to avoid broken links.
(Quickstart)
m (Quickstart)
Line 23: Line 23:
 
* Use multiple project setup
 
* Use multiple project setup
 
** Simple trick on slow sf.net to get into multiple project setup: Do one checkout, rename top-level .project file, import projects into workspace
 
** Simple trick on slow sf.net to get into multiple project setup: Do one checkout, rename top-level .project file, import projects into workspace
 +
* copy the folder equinox-target somewhere else - this is the container and it will be modified.
 
* Open base/META-INF/MANIFEST.MF, press the "export deployable plugins and fragments" icon in the top-right corner
 
* Open base/META-INF/MANIFEST.MF, press the "export deployable plugins and fragments" icon in the top-right corner
 
* select all plugins
 
* select all plugins
* choose equinox-target as the output directory
+
* choose the copy of equinox-target as the output directory
 
* Finish
 
* Finish
* on commandline, cd to equinox-target
+
* on commandline, cd to copy of equinox-target
 
* java -jar org.eclipse.osgi_3.5.0.v20090520.jar -console -clean
 
* java -jar org.eclipse.osgi_3.5.0.v20090520.jar -console -clean
 
* Enter ss, verify your three plugins are RESOLVED
 
* Enter ss, verify your three plugins are RESOLVED

Revision as of 04:20, 29 January 2010

Approach 2: Embedding ADempiere in Equinox

Status

  • Swing client can be fired up inside equinox.
  • very few tests applied

Idea

The idea is simple:

  • Turn adempiere projects into bundles.
    • org.adempiere.base: Core functionality
    • org.adempiere.tools: Supporting libs
    • org adempiere.client: Swing client
  • Throw these bundles into equinox
  • Watch it running
  • Start further decomposing it
    • Define some kind of core interface

Quickstart

  • Code is in https://adempiere.svn.sourceforge.net/svnroot/adempiere/branches/osgi/approach2 - this is a "real" svn branch - check it out!
  • Use multiple project setup
    • Simple trick on slow sf.net to get into multiple project setup: Do one checkout, rename top-level .project file, import projects into workspace
  • copy the folder equinox-target somewhere else - this is the container and it will be modified.
  • Open base/META-INF/MANIFEST.MF, press the "export deployable plugins and fragments" icon in the top-right corner
  • select all plugins
  • choose the copy of equinox-target as the output directory
  • Finish
  • on commandline, cd to copy of equinox-target
  • java -jar org.eclipse.osgi_3.5.0.v20090520.jar -console -clean
  • Enter ss, verify your three plugins are RESOLVED
  • Enter start 4 (id of org.adempiere.client) and watch adempiere starting

Problems sawn

  • client code in base: this code has no access eg. on resources in client.
    • First core interface defined: IResourceFinder
    • Adempiere.class.getResource() converted to Adempiere.getResource() - which in turn uses IResourceHandler
  • Postgres Driver in tools is java 1.6? - Have to use a 1.6 VM!