you need camel-spring as well. It has the osgi integration.

When Camel startup it logs if OSGi environment was found or not. Keep
an eye on that log and see what it logs in your environment.


On Tue, May 10, 2011 at 10:29 AM, Bingliu <liubing1...@gmail.com> wrote:
> Thanks,Claus.The excpetion also has been thrown if i use v2.7.But the
> exception is not same.Use v2.7 the exception is:
> ----------------------------------------------------------------------------------------------------
> 严重: Application context refresh failed
> (OsgiBundleXmlApplicationContext(bundle=org.apache.camel.camel-core,
> config=osgibundle:/META-INF/spring/*.xml))
> org.apache.camel.RuntimeCamelException:
> org.apache.camel.TypeConverterLoaderException: Failed to load type
> converters because of: Cannot load type converters using OSGi bundle: 1
>        at
> org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1139)
>        at
> org.apache.camel.core.osgi.OsgiTypeConverter.addingService(OsgiTypeConverter.java:62)
>        at
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:896)
>        at
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:261)
>        at
> org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184)
>        at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:339)
>        at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:273)
>        at
> org.apache.camel.core.osgi.OsgiTypeConverter.doStart(OsgiTypeConverter.java:80)
>        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:67)
>        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:54)
>        at 
> org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:60)
>        at
> org.apache.camel.impl.DefaultCamelContext.startServices(DefaultCamelContext.java:1613)
>        at
> org.apache.camel.impl.DefaultCamelContext.addService(DefaultCamelContext.java:899)
>        at
> org.apache.camel.impl.DefaultCamelContext.getTypeConverter(DefaultCamelContext.java:984)
>        at
> org.apache.camel.impl.DefaultCamelContext.getTypeConverterRegistry(DefaultCamelContext.java:1001)
>        at
> org.apache.camel.impl.DefaultCamelContext.forceLazyInitialization(DefaultCamelContext.java:1940)
>        at
> org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1423)
>        at
> org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1336)
>        at
> org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:164)
>        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:67)
>        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:54)
>        at
> org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1314)
>        at
> org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:203)
>        at
> org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:101)
>        at
> org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:238)
>        at
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:97)
>        at
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:303)
>        at
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:911)
>        at
> org.springframework.osgi.context.support.AbstractOsgiBundleApplicationContext.finishRefresh(AbstractOsgiBundleApplicationContext.java:235)
>        at
> org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:358)
>        at
> org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
>        at
> org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:320)
>        at
> org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:132)
>        at java.lang.Thread.run(Thread.java:619)
> Caused by: org.apache.camel.TypeConverterLoaderException: Failed to load
> type converters because of: Cannot load type converters using OSGi bundle: 1
>        at
> org.apache.camel.impl.osgi.Activator$BundleTypeConverterLoader.load(Activator.java:292)
>        at
> org.apache.camel.core.osgi.OsgiTypeConverter.addingService(OsgiTypeConverter.java:60)
>        ... 32 more
> Caused by: java.lang.NullPointerException
>        at
> org.apache.camel.impl.osgi.Activator$BundleTypeConverterLoader$Loader.load(Activator.java:313)
>        at
> org.apache.camel.impl.osgi.Activator$BundleTypeConverterLoader.load(Activator.java:290)
>        ... 33 more
> Exception in thread "SpringOsgiExtenderThread-6"
> org.apache.camel.RuntimeCamelException:
> org.apache.camel.TypeConverterLoaderException: Failed to load type
> converters because of: Cannot load type converters using OSGi bundle: 1
>        at
> org.apache.camel.util.ObjectHelper.wrapRuntimeCamelException(ObjectHelper.java:1139)
>        at
> org.apache.camel.core.osgi.OsgiTypeConverter.addingService(OsgiTypeConverter.java:62)
>        at
> org.osgi.util.tracker.ServiceTracker$Tracked.customizerAdding(ServiceTracker.java:896)
>        at
> org.osgi.util.tracker.AbstractTracked.trackAdding(AbstractTracked.java:261)
>        at
> org.osgi.util.tracker.AbstractTracked.trackInitial(AbstractTracked.java:184)
>        at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:339)
>        at org.osgi.util.tracker.ServiceTracker.open(ServiceTracker.java:273)
>        at
> org.apache.camel.core.osgi.OsgiTypeConverter.doStart(OsgiTypeConverter.java:80)
>        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:67)
>        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:54)
>        at 
> org.apache.camel.util.ServiceHelper.startService(ServiceHelper.java:60)
>        at
> org.apache.camel.impl.DefaultCamelContext.startServices(DefaultCamelContext.java:1613)
>        at
> org.apache.camel.impl.DefaultCamelContext.addService(DefaultCamelContext.java:899)
>        at
> org.apache.camel.impl.DefaultCamelContext.getTypeConverter(DefaultCamelContext.java:984)
>        at
> org.apache.camel.impl.DefaultCamelContext.getTypeConverterRegistry(DefaultCamelContext.java:1001)
>        at
> org.apache.camel.impl.DefaultCamelContext.forceLazyInitialization(DefaultCamelContext.java:1940)
>        at
> org.apache.camel.impl.DefaultCamelContext.doStartCamel(DefaultCamelContext.java:1423)
>        at
> org.apache.camel.impl.DefaultCamelContext.doStart(DefaultCamelContext.java:1336)
>        at
> org.apache.camel.spring.SpringCamelContext.doStart(SpringCamelContext.java:164)
>        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:67)
>        at org.apache.camel.impl.ServiceSupport.start(ServiceSupport.java:54)
>        at
> org.apache.camel.impl.DefaultCamelContext.start(DefaultCamelContext.java:1314)
>        at
> org.apache.camel.spring.SpringCamelContext.maybeStart(SpringCamelContext.java:203)
>        at
> org.apache.camel.spring.SpringCamelContext.onApplicationEvent(SpringCamelContext.java:101)
>        at
> org.apache.camel.spring.CamelContextFactoryBean.onApplicationEvent(CamelContextFactoryBean.java:238)
>        at
> org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:97)
>        at
> org.springframework.context.support.AbstractApplicationContext.publishEvent(AbstractApplicationContext.java:303)
>        at
> org.springframework.context.support.AbstractApplicationContext.finishRefresh(AbstractApplicationContext.java:911)
>        at
> org.springframework.osgi.context.support.AbstractOsgiBundleApplicationContext.finishRefresh(AbstractOsgiBundleApplicationContext.java:235)
>        at
> org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext$4.run(AbstractDelegatedExecutionApplicationContext.java:358)
>        at
> org.springframework.osgi.util.internal.PrivilegedUtils.executeWithCustomTCCL(PrivilegedUtils.java:85)
>        at
> org.springframework.osgi.context.support.AbstractDelegatedExecutionApplicationContext.completeRefresh(AbstractDelegatedExecutionApplicationContext.java:320)
>        at
> org.springframework.osgi.extender.internal.dependencies.startup.DependencyWaiterApplicationContextExecutor$CompleteRefreshTask.run(DependencyWaiterApplicationContextExecutor.java:132)
>        at java.lang.Thread.run(Thread.java:619)
> Caused by: org.apache.camel.TypeConverterLoaderException: Failed to load
> type converters because of: Cannot load type converters using OSGi bundle: 1
>        at
> org.apache.camel.impl.osgi.Activator$BundleTypeConverterLoader.load(Activator.java:292)
>        at
> org.apache.camel.core.osgi.OsgiTypeConverter.addingService(OsgiTypeConverter.java:60)
>        ... 32 more
> Caused by: java.lang.NullPointerException
>        at
> org.apache.camel.impl.osgi.Activator$BundleTypeConverterLoader$Loader.load(Activator.java:313)
>        at
> org.apache.camel.impl.osgi.Activator$BundleTypeConverterLoader.load(Activator.java:290)
>        ... 33 more
> -------------------------------------------------------------------------------------------------
> The osgi bundle 1 is
> 0       ACTIVE      org.eclipse.osgi_3.6.2.R36x_v20110210
> 1       ACTIVE      org.apache.camel.camel-core_2.7.0
> -------------------------------------------------------------------------------------------------
> In eclipse, i import camel-core-2.7.0.jar and camel-spring-2.7.0 as
> "plug-ins and fragments".
> I create a new plugin which define the spring-camel configuration.
> Yesterday, I have tried to use the camel-2.4.0.The exception was as same as
> v2.7.
> I got the source of camel-2.4.0 and copied the
> org.apache.camel.impl.osgi.Activator.The sentence
> ----------------------------------------------
>  Enumeration<URL> e = bundle.findEntries("/" + pkg.replace('.', '/'),
> "*.class", true);
> ----------------------------------------------
> when ("/" + pkg.replace('.', '/')) equals "org.apache.camel.component.file",
> "e" is null. then the sentence
> ----------------------------------------------
>  while (e.hasMoreElements()) {
> ----------------------------------------------
> will throw NullPointException.
> What is the reason of the problem?Does my import way is not correct?But i
> like such use no problem in camel-2.3.0.
>
> --
> View this message in context: 
> http://camel.465427.n5.nabble.com/Camel-2-5-0-startup-exception-tp4381307p4383964.html
> Sent from the Camel - Users mailing list archive at Nabble.com.
>



-- 
Claus Ibsen
-----------------
FuseSource
Email: cib...@fusesource.com
Web: http://fusesource.com
CamelOne 2011: http://fusesource.com/camelone2011/
Twitter: davsclaus
Blog: http://davsclaus.blogspot.com/
Author of Camel in Action: http://www.manning.com/ibsen/

Reply via email to