Hi,
I’m using a custom Karaf distro where I modify the framework feature in order
to include the pax-url-reference bundles in the startup.properties through the
karaf-maven-plugin.
Apparently, the pax-url-reference bundles are installed correctly and they work
because if I start the test, I do ssh into the running karaf and execute the
flairbit@root()> install
reference:file:/Users/username/git/contoso/iot/project-develop/support/project.sc.servlet/target/classes/
Bundle ID: 131
the command works fine. Despite this, when I try to install the exploded bundle
with the
bundle("reference:file:target/classes/“)
option, I get the reported error, both using the absolute and relative path for
target folder.
Thank you,
Matteo
> On 9 Jul 2018, at 13:39, Jean-Baptiste Onofré <[email protected]> wrote:
>
> Hi Matteo,
>
> it seems you are using in Pax Exam. Do you use your custom dispo in Pax
> Exam ? I suspect that you use the standard Karaf distribution coming
> with Pax Exam, so you will need to install pax-url-reference in
> @Configuration of your test.
>
> Regards
> JB
>
> On 09/07/2018 13:00, Matteo Rulli wrote:
>> If I set
>>
>> bundle("reference:file:/Users/username/git/contoso/iot/project-develop/support/project.sc.servlet/target/classes/“),
>>
>> In the test opts (i.e. the absolute path of target folder) I get the
>> same exception reported in the previous email (the data/tmp (Is a
>> directory) one).
>>
>> Matteo
>>
>>> On 9 Jul 2018, at 12:52, Francois Papon <[email protected]
>>> <mailto:[email protected]>
>>> <mailto:[email protected]
>>> <mailto:[email protected]>>> wrote:
>>>
>>> Ok, but I see in your code :
>>>
>>> bundle("reference:file:target/classes/")
>>>
>>> Could you try with the full path of the repository ?
>>>
>>>
>>> Le 09/07/2018 à 14:50, Matteo Rulli a écrit :
>>>> Yes. If I remove the bundle(“reference:….”) line in the test ops and
>>>> I manually do
>>>>
>>>> installreference:file:/Users/username/git/contoso/iot/project-develop/support/project.sc.servlet/target/classes/
>>>> Bundle ID: 131
>>>> *flairbit*@root()> start131
>>>>
>>>> Everything works just fine.
>>>>
>>>> Matteo
>>>>
>>>>
>>>>> On 9 Jul 2018, at 12:24, Francois Papon
>>>>> <[email protected] <mailto:[email protected]>
>>>>> <mailto:[email protected]
>>>>> <mailto:[email protected]>>>
>>>>> wrote:
>>>>>
>>>>> Does it work's without bundle("...") ?
>>>>>
>>>>>
>>>>> Le 09/07/2018 à 14:09, Matteo Rulli a écrit :
>>>>>> I’m using the Karaf version 4.1.2 and the test is running on MAC-OS.
>>>>>>
>>>>>>> On 9 Jul 2018, at 12:07, Francois Papon
>>>>>>> <[email protected] <mailto:[email protected]>
>>>>>>> <mailto:[email protected]
>>>>>>> <mailto:[email protected]>>> wrote:
>>>>>>>
>>>>>>> Which version of Karaf are you using ?
>>>>>>>
>>>>>>> regards
>>>>>>>
>>>>>>> François
>>>>>>>
>>>>>>>
>>>>>>> Le 09/07/2018 à 14:05, matteor a écrit :
>>>>>>>> Sorry. It seems that message formatting in nabble does not work
>>>>>>>> very well...
>>>>>>>> Here is the message with all the details:
>>>>>>>>
>>>>>>>> I tried to enable the reference protocol in Karaf adding these
>>>>>>>> bundles to
>>>>>>>> the startup.properties:
>>>>>>>>
>>>>>>>> mvn\:org.ops4j.base/ops4j-base-lang/1.5.0 = 11
>>>>>>>> mvn\:org.ops4j.base/ops4j-base-util-property/1.5.0 = 11
>>>>>>>> mvn\:org.ops4j.pax.swissbox/pax-swissbox-property/1.8.3 = 11
>>>>>>>> mvn\:org.ops4j.pax.url/pax-url-commons/2.5.3 = 11
>>>>>>>> mvn\:org.ops4j.pax.url/pax-url-reference/2.5.3 = 12
>>>>>>>>
>>>>>>>> And in fact now I can see the installed bundles in my runtime:
>>>>>>>>
>>>>>>>> list -t 0 -s | grep pax
>>>>>>>> 4 │ Active │ 5 │ 2.5.2 │ org.ops4j.pax.url.mvn
>>>>>>>> 5 │ Active │ 8 │ 1.10.1 │
>>>>>>>> org.ops4j.pax.logging.pax-logging-api
>>>>>>>> 6 │ Active │ 8 │ 1.10.1 │
>>>>>>>> org.ops4j.pax.logging.pax-logging-log4j2
>>>>>>>> 15 │ Active │ 11 │ 1.8.3 │
>>>>>>>> org.ops4j.pax.swissbox.property
>>>>>>>> 16 │ Active │ 11 │ 2.5.3 │ org.ops4j.pax.url.commons
>>>>>>>> 17 │ Active │ 12 │ 2.5.3 │
>>>>>>>> org.ops4j.pax.url.reference
>>>>>>>> 60 │ Active │ 5 │ 2.5.2 │ org.ops4j.pax.url.wrap
>>>>>>>>
>>>>>>>> But when in my test I try to use the protocol like this:
>>>>>>>>
>>>>>>>> Option[] options = new Option[] {
>>>>>>>> systemProperty("pax.exam.osgi.unresolved.fail").value("true"),
>>>>>>>> features(testUtils.getStandardRepo(), "aries-blueprint"),
>>>>>>>> features(testUtils.getStandardRepo(), "http"),
>>>>>>>> features(testUtils.getStandardRepo(), "http-whiteboard"),
>>>>>>>> bundle("reference:file:target/classes/")
>>>>>>>> };
>>>>>>>>
>>>>>>>> I get quite a strange error:
>>>>>>>>
>>>>>>>> org.apache.karaf.features.internal.util.MultiException: Error:
>>>>>>>>
>>>>>>>> /Users/username/git/contoso/iot/project-develop/support/project.sc.servlet/target/exam/424a9312-bd8e-4ef9-8e62-e768b5b11cdf/data/tmp
>>>>>>>> (Is a directory)
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.MavenDownloadManager$MavenDownloader.<init>(MavenDownloadManager.java:84)
>>>>>>>> ~[?:?]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.MavenDownloadManager.createDownloader(MavenDownloadManager.java:72)
>>>>>>>> ~[?:?]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.region.Subsystem.downloadBundles(Subsystem.java:375)
>>>>>>>> ~[?:?]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.region.Subsystem.downloadBundles(Subsystem.java:372)
>>>>>>>> ~[?:?]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.region.SubsystemResolver.resolve(SubsystemResolver.java:187)
>>>>>>>> ~[?:?]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.service.Deployer.deploy(Deployer.java:291)
>>>>>>>> ~[?:?]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.service.FeaturesServiceImpl.doProvision(FeaturesServiceImpl.java:1233)
>>>>>>>> ~[?:?]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.service.FeaturesServiceImpl.lambda$doProvisionInThread$0(FeaturesServiceImpl.java:1132)
>>>>>>>> ~[?:?]
>>>>>>>> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
>>>>>>>> at
>>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>>>>>>>> [?:?]
>>>>>>>> at
>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>>>>>>>> [?:?]
>>>>>>>> at java.lang.Thread.run(Thread.java:748) [?:?]
>>>>>>>> Suppressed: java.io.FileNotFoundException:
>>>>>>>> /Users/username/git/contoso/iot/project-develop/support/project.sc.servlet/target/exam/424a9312-bd8e-4ef9-8e62-e768b5b11cdf/data/tmp
>>>>>>>> (Is a directory)
>>>>>>>> at java.io.FileInputStream.open0(Native Method) ~[?:?]
>>>>>>>> at java.io.FileInputStream.open(FileInputStream.java:195) [?:?]
>>>>>>>> at java.io.FileInputStream.<init>(FileInputStream.java:138) [?:?]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.AbstractDownloadTask.open(AbstractDownloadTask.java:54)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.region.Subsystem.getMetadata(Subsystem.java:535)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.region.Subsystem$1.downloaded(Subsystem.java:402)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.MavenDownloadManager$MavenDownloader$1.operationComplete(MavenDownloadManager.java:133)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.MavenDownloadManager$MavenDownloader$1.operationComplete(MavenDownloadManager.java:127)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.DefaultFuture.notifyListener(DefaultFuture.java:350)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.DefaultFuture.notifyListeners(DefaultFuture.java:335)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.DefaultFuture.setValue(DefaultFuture.java:259)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.AbstractDownloadTask.setFile(AbstractDownloadTask.java:61)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> org.apache.karaf.features.internal.download.impl.AbstractRetryableDownloadTask.run(AbstractRetryableDownloadTask.java:61)
>>>>>>>> [18:org.apache.karaf.features.core:4.1.2]
>>>>>>>> at
>>>>>>>> java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
>>>>>>>> [?:?]
>>>>>>>> at java.util.concurrent.FutureTask.run(FutureTask.java:266) [?:?]
>>>>>>>> at
>>>>>>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$201(ScheduledThreadPoolExecutor.java:180)
>>>>>>>> [?:?]
>>>>>>>> at
>>>>>>>> java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
>>>>>>>> [?:?]
>>>>>>>> at
>>>>>>>> java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
>>>>>>>> [?:?]
>>>>>>>> at
>>>>>>>> java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
>>>>>>>> [?:?]
>>>>>>>> at java.lang.Thread.run(Thread.java:748) [?:?]
>>>>>>>>
>>>>>>>> Could you please advice on how to address this error? Am I
>>>>>>>> missing some
>>>>>>>> configuration entries?
>>>>>>>>
>>>>>>>> Thank you very much,
>>>>>>>> Matteo
>>>>>>>>
>>>>>>>>
>>>>>>>>
>>>>>>>> --
>>>>>>>> Sent from: http://karaf.922171.n3.nabble.com/Karaf-User-f930749.html
>>>>>>>
>>>>>>
>>>>>
>>>>
>>>
>>
>
> --
> Jean-Baptiste Onofré
> [email protected] <mailto:[email protected]>
> http://blog.nanthrax.net <http://blog.nanthrax.net/>
> Talend - http://www.talend.com <http://www.talend.com/>