[ 
https://issues.apache.org/jira/browse/FELIX-1787?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Guillaume Nodet resolved FELIX-1787.
------------------------------------

    Resolution: Fixed
      Assignee: Guillaume Nodet

Committing to https://svn.apache.org/repos/asf/felix/trunk ...
        M       
fileinstall/src/main/java/org/apache/felix/fileinstall/internal/DirectoryWatcher.java
Committed r828014

Please reopen if this fix does not work for you.

> REGRESSION: FileInstall relies on location to be a valid URL for update to be 
> successful
> ----------------------------------------------------------------------------------------
>
>                 Key: FELIX-1787
>                 URL: https://issues.apache.org/jira/browse/FELIX-1787
>             Project: Felix
>          Issue Type: Bug
>          Components: File Install
>         Environment: Linux
>            Reporter: Sahoo
>            Assignee: Guillaume Nodet
>             Fix For: fileinstall-2.0.2
>
>
> I am currently using FileInstall 1.2.0. While trying to test the staged 2.0.2 
> binaries, I observed this regression. New fileinstall is calling 
> bundle.update() which relied on the bundle location to be a valid URL. Since 
> old fileinstall was installing bundles with a location same as absolute path 
> (i.e., it was not a valid URL), when I upgraded to newer version of 
> fileinstall, my OSGi cache still had bundles with location which is not a 
> valid URL. When I updated one such bundle, I got the following exception:
> 21 Oct, 2009 6:30:41 PM  
> INFO: Failed to update artifact 
> /space/ss141213/WS/gf/v3/publish/glassfishv3/glassfish/modules/autostart/org.apache.felix.scr.jar:
>  org.osgi.framework.BundleException: Update of bundle org.apache.felix.scr 
> [210] failed.
> 21 Oct, 2009 6:30:41 PM  
> INFO: org.osgi.framework.BundleException: Update of bundle 
> org.apache.felix.scr [210] failed.
>       at org.apache.felix.framework.Felix.updateBundle(Felix.java:1966)
>       at org.apache.felix.framework.BundleImpl.update(BundleImpl.java:908)
>       at org.apache.felix.framework.BundleImpl.update(BundleImpl.java:895)
>       at 
> org.apache.felix.fileinstall.internal.DirectoryWatcher.update(DirectoryWatcher.java:913)
>       at 
> org.apache.felix.fileinstall.internal.DirectoryWatcher.update(DirectoryWatcher.java:721)
>       at 
> org.apache.felix.fileinstall.internal.DirectoryWatcher.process(DirectoryWatcher.java:374)
>       at 
> org.apache.felix.fileinstall.internal.DirectoryWatcher.run(DirectoryWatcher.java:200)
> Caused by: java.net.MalformedURLException: no protocol: 
> /space/ss141213/WS/gf/v3/publish/glassfishv3/glassfish/modules/autostart/org.apache.felix.scr.jar
>       at java.net.URL.<init>(URL.java:567)
>       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:150)
>       at 
> org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:79)
>       at 
> org.apache.felix.framework.cache.JarRevision.<init>(JarRevision.java:57)
>       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.BundleImpl.revise(BundleImpl.java:1043)
>       at org.apache.felix.framework.Felix.updateBundle(Felix.java:1835)
>       ... 6 more
> Earlier versions of fileinstall used to use bundle.update(InputStream). Not 
> sure why this has been changed in recent versions.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to