You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@felix.apache.org by "Coletta Giacomo, IT" <gi...@prysmian.com> on 2010/07/01 15:16:14 UTC
Loading features to karaf using the file:C:/etc/etc URL mechanism
Hi,
I'm trying to integrate my OSGI application with Karaf 1.6.0 (windows xp environment) and tryng to find a way to create a custom distribution.
I don't use Maven.
I was able to succesfully use the features mechanism putting my features.xml file in the deploy directory. In the features.xml file bundles are retrieved using relative file:./xxx/yyy paths. In this way features are automatically installed.
Then i tried putting the features.xml file in a different folder and to add a features repository in org.apache.felix.karaf.features.cfg, here is how the addition loooks:
featuresRepositories=mvn:org.apache.felix.karaf/apache-felix-karaf/1.6.0/xml/features,file:./base/features
or
featuresRepositories=mvn:org.apache.felix.karaf/apache-felix-karaf/1.6.0/xml/features,file:C:/DEV/karaf/base/features
And all possible variations( file:///C:/, file:///C|/ etc.)
When the file path seem to be correct i get the following exception:
14:34:51,203 | WARN | rint Extender: 3 | FeaturesServiceImpl | res.internal.FeaturesServiceImpl 654 | 23 - org.apache.felix.karaf.features.core - 1.6.0 | Unable to add features repository file:./base/features at startup
java.io.IOException
at org.apache.felix.karaf.features.internal.RepositoryImpl.load(RepositoryImpl.java:164)
at org.apache.felix.karaf.features.internal.FeaturesServiceImpl.internalAddRepository(FeaturesServiceImpl.java:172)
at org.apache.felix.karaf.features.internal.FeaturesServiceImpl.start(FeaturesServiceImpl.java:652)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:230)
at org.apache.aries.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:803)
at org.apache.aries.blueprint.container.BeanRecipe.runBeanProcInit(BeanRecipe.java:580)
at org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:693)
at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:64)
at org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:219)
at org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:147)
at org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:624)
at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:315)
at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:213)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
at java.util.concurrent.FutureTask.run(FutureTask.java:138)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:207)
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
at java.lang.Thread.run(Thread.java:619)
Caused by: org.xml.sax.SAXParseException: Content is not allowed in prolog.
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:239)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:124)
at org.apache.felix.karaf.features.internal.RepositoryImpl.load(RepositoryImpl.java:93)
... 24 more
It seem like if the file path is correct but there is something wrong with the file. The fact is that the file is exactly the same that was before succesfully loaded by putting it in the deploy folder (tried several times).
Does anybody succesfully loaded features adding a local features repository using the file: mechanism ? The Karaf manual says it is possible.
Many thanks for any help
Giacomo Coletta
Re: Loading features to karaf using the file:C:/etc/etc URL mechanism
Posted by Guillaume Nodet <gn...@gmail.com>.
Could you post your karaf related questions to the karaf mailing list please ?
It has been set up recently, but i'd appreciate if you could use those.
See
http://karaf.apache.org/mailing-lists.html
On Thu, Jul 1, 2010 at 15:16, Coletta Giacomo, IT
<gi...@prysmian.com> wrote:
> Hi,
>
> I'm trying to integrate my OSGI application with Karaf 1.6.0 (windows xp environment) and tryng to find a way to create a custom distribution.
> I don't use Maven.
> I was able to succesfully use the features mechanism putting my features.xml file in the deploy directory. In the features.xml file bundles are retrieved using relative file:./xxx/yyy paths. In this way features are automatically installed.
>
> Then i tried putting the features.xml file in a different folder and to add a features repository in org.apache.felix.karaf.features.cfg, here is how the addition loooks:
>
> featuresRepositories=mvn:org.apache.felix.karaf/apache-felix-karaf/1.6.0/xml/features,file:./base/features
>
> or
>
> featuresRepositories=mvn:org.apache.felix.karaf/apache-felix-karaf/1.6.0/xml/features,file:C:/DEV/karaf/base/features
>
> And all possible variations( file:///C:/, file:///C|/ etc.)
>
> When the file path seem to be correct i get the following exception:
>
> 14:34:51,203 | WARN | rint Extender: 3 | FeaturesServiceImpl | res.internal.FeaturesServiceImpl 654 | 23 - org.apache.felix.karaf.features.core - 1.6.0 | Unable to add features repository file:./base/features at startup
> java.io.IOException
> at org.apache.felix.karaf.features.internal.RepositoryImpl.load(RepositoryImpl.java:164)
> at org.apache.felix.karaf.features.internal.FeaturesServiceImpl.internalAddRepository(FeaturesServiceImpl.java:172)
> at org.apache.felix.karaf.features.internal.FeaturesServiceImpl.start(FeaturesServiceImpl.java:652)
> at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> at java.lang.reflect.Method.invoke(Method.java:597)
> at org.apache.aries.blueprint.utils.ReflectionUtils.invoke(ReflectionUtils.java:230)
> at org.apache.aries.blueprint.container.BeanRecipe.invoke(BeanRecipe.java:803)
> at org.apache.aries.blueprint.container.BeanRecipe.runBeanProcInit(BeanRecipe.java:580)
> at org.apache.aries.blueprint.container.BeanRecipe.internalCreate(BeanRecipe.java:693)
> at org.apache.aries.blueprint.di.AbstractRecipe.create(AbstractRecipe.java:64)
> at org.apache.aries.blueprint.container.BlueprintRepository.createInstances(BlueprintRepository.java:219)
> at org.apache.aries.blueprint.container.BlueprintRepository.createAll(BlueprintRepository.java:147)
> at org.apache.aries.blueprint.container.BlueprintContainerImpl.instantiateEagerComponents(BlueprintContainerImpl.java:624)
> at org.apache.aries.blueprint.container.BlueprintContainerImpl.doRun(BlueprintContainerImpl.java:315)
> at org.apache.aries.blueprint.container.BlueprintContainerImpl.run(BlueprintContainerImpl.java:213)
> at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
> at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
> at java.util.concurrent.FutureTask.run(FutureTask.java:138)
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:98)
> at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:207)
> at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
> at java.lang.Thread.run(Thread.java:619)
> Caused by: org.xml.sax.SAXParseException: Content is not allowed in prolog.
> at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(DOMParser.java:239)
> at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(DocumentBuilderImpl.java:283)
> at javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:124)
> at org.apache.felix.karaf.features.internal.RepositoryImpl.load(RepositoryImpl.java:93)
> ... 24 more
>
> It seem like if the file path is correct but there is something wrong with the file. The fact is that the file is exactly the same that was before succesfully loaded by putting it in the deploy folder (tried several times).
>
> Does anybody succesfully loaded features adding a local features repository using the file: mechanism ? The Karaf manual says it is possible.
>
> Many thanks for any help
>
> Giacomo Coletta
>
>
--
Cheers,
Guillaume Nodet
------------------------
Blog: http://gnodet.blogspot.com/
------------------------
Open Source SOA
http://fusesource.com
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
For additional commands, e-mail: users-help@felix.apache.org