felix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Richard S. Hall (JIRA)" <j...@apache.org>
Subject [jira] Resolved: (FELIX-113) Unknown protocol: obr when updating a bundle deployed with OBR
Date Thu, 17 Aug 2006 16:55:15 GMT
     [ http://issues.apache.org/jira/browse/FELIX-113?page=all ]

Richard S. Hall resolved FELIX-113.

    Resolution: Won't Fix
      Assignee: Richard S. Hall

You cannot update OBR deployed bundles with "update" unless you specify the URL from which
you want the bundle to be updated. In general, OBR deployed bundles should be updated using
OBR (i.e., "obr deploy 14").

This issue is somewhat complicated, but OBR cannot deploy a bundle using the real location
from where the bundle JAR came from because then OBR can never install another bundle from
that location. Thus, OBR creates an arbitrary location string for each bundle it installs.

The reason that this is necessary is that OBR automatically updates deployed bundles if necessary,
so their location string is actually meaningless. For example, assume that OBR deploys "http://foo.com/repo/foo-1.0.0.jar"
to a framework and does not mangle the location string. Later OBR updates that bundle to "http://foo.com/repo/foo-2.0.0.jar".
After the update, the original bundle still has a location string for the 1.0.0 bundle, even
though it is the 2.0.0 bundle. This makes it impossible for OBR to install 1.0.0 bundle again,
if another bundle comes along and has a dependency on 1.0.0.

The "obr:" location string is used to get around such issues, making the location string independent
of the location of the bundle in the repo.

At one time I toyed with the idea of creating a URL handler for obr: that could make this
work properly for update, but it seems that there was some conceptual difficulty to do so...I
can't remember.

> Unknown protocol: obr when updating a bundle deployed with OBR
> --------------------------------------------------------------
>                 Key: FELIX-113
>                 URL: http://issues.apache.org/jira/browse/FELIX-113
>             Project: Felix
>          Issue Type: Bug
>          Components: Bundle Repository (OBR)
>            Reporter: Guillaume Sauthier
>         Assigned To: Richard S. Hall
> After deploying my bundle with obr :
> obr deploy my.component.id
> If I try to update the bundle, I've got the following Exception :
> -> update 14
> ERROR: Unable to update the bundle. (java.net.MalformedURLException: Unknown protocol:
obr)java.net.MalformedURLException: Unknown protocol: obr
> 	at java.net.URL.<init>(URL.java:601)
> 	at java.net.URL.<init>(URL.java:464)
> 	at java.net.URL.<init>(URL.java:413)
> 	at org.apache.felix.framework.cache.JarRevision.initialize(JarRevision.java:277)
> 	at org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:78)
> 	at org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:56)
> 	at org.apache.felix.framework.cache.BundleArchive.createRevisionFromLocation(BundleArchive.java:1004)
> 	at org.apache.felix.framework.cache.BundleArchive.revise(BundleArchive.java:629)
> 	at org.apache.felix.framework.Felix._updateBundle(Felix.java:1378)
> 	at org.apache.felix.framework.Felix.updateBundle(Felix.java:1332)
> 	at org.apache.felix.framework.BundleImpl.update(BundleImpl.java:344)
> 	at org.apache.felix.framework.BundleImpl.update(BundleImpl.java:331)
> 	at org.apache.felix.shell.impl.UpdateCommandImpl.execute(UpdateCommandImpl.java:94)
> 	at org.apache.felix.shell.impl.Activator$ShellServiceImpl.executeCommand(Activator.java:263)
> 	at org.apache.felix.shell.tui.Activator$ShellTuiRunnable.run(Activator.java:165)
> 	at java.lang.Thread.run(Thread.java:595)
> java.net.MalformedURLException: Unknown protocol: obr
> Seems that OBR manage URLs with 'obr' scheme, scheme that is not supported...

This message is automatically generated by JIRA.
If you think it was sent incorrectly contact one of the administrators: http://issues.apache.org/jira/secure/Administrators.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira


View raw message