Author: davsclaus
Date: Fri Jul 15 08:39:49 2011
New Revision: 1147021
URL: http://svn.apache.org/viewvc?rev=1147021&view=rev
Log:
CAMEL-4231: Fixed camel not being able to run in Apache ServiceMix, due osgi
and type converter loading issue. Thanks to Freeman for the patch.
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java
camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java
Modified:
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java
URL:
http://svn.apache.org/viewvc/camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java?rev=1147021&r1=1147020&r2=1147021&view=diff
==============================================================================
---
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java
(original)
+++
camel/trunk/camel-core/src/main/java/org/apache/camel/impl/converter/BaseTypeConverterRegistry.java
Fri Jul 15 08:39:49 2011
@@ -383,7 +383,7 @@ public abstract class BaseTypeConverterR
/**
* Loads the core type converters which is mandatory to use Camel
*/
- protected void loadCoreTypeConverters() throws Exception {
+ public void loadCoreTypeConverters() throws Exception {
int before = typeMappings.size();
// load all the type converters from camel-core
Modified:
camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java
URL:
http://svn.apache.org/viewvc/camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java?rev=1147021&r1=1147020&r2=1147021&view=diff
==============================================================================
---
camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java
(original)
+++
camel/trunk/components/camel-core-osgi/src/main/java/org/apache/camel/core/osgi/OsgiTypeConverter.java
Fri Jul 15 08:39:49 2011
@@ -147,6 +147,14 @@ public class OsgiTypeConverter extends S
}
}, injector, factoryFinder);
+ try {
+ // only load the core type converters, as osgi activator will keep
track on bundles
+ // being installed/uninstalled and load type converters as part of
that process
+ answer.loadCoreTypeConverters();
+ } catch (Exception e) {
+ throw new RuntimeCamelException("Error loading CoreTypeConverter
due: " + e.getMessage(), e);
+ }
+
// load the type converters the tracker has been tracking
Object[] services = this.tracker.getServices();
if (services != null) {
@@ -159,12 +167,6 @@ public class OsgiTypeConverter extends S
}
}
- try {
- ServiceHelper.startService(answer);
- } catch (Exception e) {
- throw new RuntimeCamelException("Error staring OSGiTypeConverter
due: " + e.getMessage(), e);
- }
-
LOG.trace("Created TypeConverter: {}", answer);
return answer;
}