diff --git a/org.adempiere.base/META-INF/MANIFEST.MF b/org.adempiere.base/META-INF/MANIFEST.MF
index 04737eb512..3a71ae21d1 100644
--- a/org.adempiere.base/META-INF/MANIFEST.MF
+++ b/org.adempiere.base/META-INF/MANIFEST.MF
@@ -289,6 +289,6 @@ Import-Package: com.sun.mail.auth;version="1.4.5",
Eclipse-BuddyPolicy: registered
Eclipse-ExtensibleAPI: true
Bundle-Activator: org.adempiere.base.BaseActivator
-Service-Component: OSGI-INF/eventmanager.xml, OSGI-INF/dslocator.xml, OSGI-INF/extensionlocator.xml, OSGI-INF/serverbean.xml, OSGI-INF/statusbean.xml
+Service-Component: OSGI-INF/eventmanager.xml, OSGI-INF/dslocator.xml, OSGI-INF/extensionlocator.xml, OSGI-INF/serverbean.xml, OSGI-INF/statusbean.xml, OSGI-INF/defaultmodelfactory.xml, OSGI-INF/defaultdocfactory.xml
Bundle-ActivationPolicy: lazy
Require-Bundle: org.eclipse.equinox.app;bundle-version="1.3.1"
diff --git a/org.adempiere.base/OSGI-INF/defaultdocfactory.xml b/org.adempiere.base/OSGI-INF/defaultdocfactory.xml
new file mode 100644
index 0000000000..806804c562
--- /dev/null
+++ b/org.adempiere.base/OSGI-INF/defaultdocfactory.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/org.adempiere.base/OSGI-INF/defaultmodelfactory.xml b/org.adempiere.base/OSGI-INF/defaultmodelfactory.xml
new file mode 100644
index 0000000000..b9c2d6c074
--- /dev/null
+++ b/org.adempiere.base/OSGI-INF/defaultmodelfactory.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/org.adempiere.base/build.properties b/org.adempiere.base/build.properties
index 35345f99c3..c923eec5c3 100644
--- a/org.adempiere.base/build.properties
+++ b/org.adempiere.base/build.properties
@@ -20,7 +20,9 @@ bin.includes = META-INF/,\
OSGI-INF/dslocator.xml,\
OSGI-INF/extensionlocator.xml,\
OSGI-INF/serverbean.xml,\
- OSGI-INF/statusbean.xml
+ OSGI-INF/statusbean.xml,\
+ OSGI-INF/defaultmodelfactory.xml,\
+ OSGI-INF/defaultdocfactory.xml
output.base.jar = build/
src.includes = schema/
source.base.jar = src/
diff --git a/org.adempiere.base/plugin.xml b/org.adempiere.base/plugin.xml
index a6535ada32..68924a0ff2 100644
--- a/org.adempiere.base/plugin.xml
+++ b/org.adempiere.base/plugin.xml
@@ -15,25 +15,6 @@
-
-
-
-
-
-
-
-
names = new ArrayList();
- IConfigurationElement[] elements = Platform.getExtensionRegistry().getConfigurationElementsFor(AdempiereDatabase.class.getName());
- for(IConfigurationElement element : elements)
- {
- String type = element.getAttribute("id");
- names.add(type);
+ List services = Service.locator().list(AdempiereDatabase.class).getServices();
+ for (AdempiereDatabase db : services) {
+ names.add(db.getName());
}
- String[] nameArray = names.toArray(new String[0]);
- return nameArray;
+ return names.toArray(new String[0]);
}
/**
diff --git a/org.adempiere.replication.server/.project b/org.adempiere.replication.server/.project
index e12c8f29f1..ec884a7a61 100644
--- a/org.adempiere.replication.server/.project
+++ b/org.adempiere.replication.server/.project
@@ -20,6 +20,11 @@
+
+ org.eclipse.pde.ds.core.builder
+
+
+
org.eclipse.pde.PluginNature
diff --git a/org.adempiere.replication.server/META-INF/MANIFEST.MF b/org.adempiere.replication.server/META-INF/MANIFEST.MF
index 0516746e69..f5c56cb0d3 100644
--- a/org.adempiere.replication.server/META-INF/MANIFEST.MF
+++ b/org.adempiere.replication.server/META-INF/MANIFEST.MF
@@ -9,3 +9,4 @@ Require-Bundle: org.adempiere.server;bundle-version="1.0.0",
org.adempiere.base;bundle-version="1.0.0"
Import-Package: javax.jms;version="1.1.0",
org.apache.activemq
+Service-Component: OSGI-INF/serverfactory.xml
diff --git a/org.adempiere.replication.server/OSGI-INF/serverfactory.xml b/org.adempiere.replication.server/OSGI-INF/serverfactory.xml
new file mode 100644
index 0000000000..51272f5252
--- /dev/null
+++ b/org.adempiere.replication.server/OSGI-INF/serverfactory.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
diff --git a/org.adempiere.replication.server/build.properties b/org.adempiere.replication.server/build.properties
index e9863e281e..5ce59a31ac 100644
--- a/org.adempiere.replication.server/build.properties
+++ b/org.adempiere.replication.server/build.properties
@@ -1,5 +1,6 @@
-source.. = src/
output.. = bin/
bin.includes = META-INF/,\
.,\
- plugin.xml
+ plugin.xml,\
+ OSGI-INF/serverfactory.xml
+source.. = src/
diff --git a/org.adempiere.replication.server/plugin.xml b/org.adempiere.replication.server/plugin.xml
index 8164b0a212..5535690d37 100644
--- a/org.adempiere.replication.server/plugin.xml
+++ b/org.adempiere.replication.server/plugin.xml
@@ -1,11 +1,5 @@
-
-
-
-
diff --git a/org.compiere.db.oracle.provider/.project b/org.compiere.db.oracle.provider/.project
index 69710cd8fc..a621e9102a 100644
--- a/org.compiere.db.oracle.provider/.project
+++ b/org.compiere.db.oracle.provider/.project
@@ -20,6 +20,11 @@
+
+ org.eclipse.pde.ds.core.builder
+
+
+
org.eclipse.pde.PluginNature
diff --git a/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF b/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF
index 688968629c..5c6f1fa615 100644
--- a/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF
+++ b/org.compiere.db.oracle.provider/META-INF/MANIFEST.MF
@@ -13,4 +13,5 @@ Bundle-ClassPath: .,
Import-Package: org.osgi.framework
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.adempiere.db.oracle.OracleBundleActivator
+Service-Component: OSGI-INF/oracleprovider.xml
diff --git a/org.compiere.db.oracle.provider/OSGI-INF/oracleprovider.xml b/org.compiere.db.oracle.provider/OSGI-INF/oracleprovider.xml
new file mode 100644
index 0000000000..a0cf86b2c3
--- /dev/null
+++ b/org.compiere.db.oracle.provider/OSGI-INF/oracleprovider.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/org.compiere.db.oracle.provider/build.properties b/org.compiere.db.oracle.provider/build.properties
index 55924b0fe7..23c5fd06c7 100644
--- a/org.compiere.db.oracle.provider/build.properties
+++ b/org.compiere.db.oracle.provider/build.properties
@@ -1,9 +1,9 @@
-source.. = src/
output.. = bin/
bin.includes = META-INF/,\
.,\
plugin.xml,\
ojdbc6.jar,\
c3p0-0.9.1.2.jar,\
- c3p0-oracle-thin-extras-0.9.1.2.jar
+ c3p0-oracle-thin-extras-0.9.1.2.jar,\
+ OSGI-INF/oracleprovider.xml
source.. = src/
diff --git a/org.compiere.db.oracle.provider/plugin.xml b/org.compiere.db.oracle.provider/plugin.xml
index 669443a88e..140cae4df1 100644
--- a/org.compiere.db.oracle.provider/plugin.xml
+++ b/org.compiere.db.oracle.provider/plugin.xml
@@ -1,13 +1,6 @@
-
-
-
-
+
+ org.eclipse.pde.ds.core.builder
+
+
+
org.eclipse.pde.PluginNature
diff --git a/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF b/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF
index c9881a031d..bc054b4408 100644
--- a/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF
+++ b/org.compiere.db.postgresql.provider/META-INF/MANIFEST.MF
@@ -14,3 +14,4 @@ Import-Package: junit.framework;version="3.8.2",
org.osgi.framework
Bundle-ActivationPolicy: lazy
Bundle-Activator: org.adempiere.db.postgresql.PostgreSQLBundleActivator
+Service-Component: OSGI-INF/pgprovider.xml
diff --git a/org.compiere.db.postgresql.provider/OSGI-INF/pgprovider.xml b/org.compiere.db.postgresql.provider/OSGI-INF/pgprovider.xml
new file mode 100644
index 0000000000..43984b4889
--- /dev/null
+++ b/org.compiere.db.postgresql.provider/OSGI-INF/pgprovider.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
diff --git a/org.compiere.db.postgresql.provider/build.properties b/org.compiere.db.postgresql.provider/build.properties
index 01efe18ca8..d295ed7d48 100644
--- a/org.compiere.db.postgresql.provider/build.properties
+++ b/org.compiere.db.postgresql.provider/build.properties
@@ -1,8 +1,8 @@
-source.. = src/
output.. = bin/
bin.includes = META-INF/,\
.,\
postgresql.jar,\
plugin.xml,\
- c3p0-0.9.1.2.jar
+ c3p0-0.9.1.2.jar,\
+ OSGI-INF/pgprovider.xml
source.. = src/
diff --git a/org.compiere.db.postgresql.provider/plugin.xml b/org.compiere.db.postgresql.provider/plugin.xml
index e853c82e7a..b872eec66c 100644
--- a/org.compiere.db.postgresql.provider/plugin.xml
+++ b/org.compiere.db.postgresql.provider/plugin.xml
@@ -1,13 +1,6 @@
-
-
-
-