[ 
https://issues.apache.org/jira/browse/FELIX-1203?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12718402#action_12718402
 ] 

Filippo Diotalevi commented on FELIX-1203:
------------------------------------------

Generally speaking, weird things happen when you try  provision your container 
with FileInstall and another provisioning system.

Anyway I agree we should at least avoid the NPE and give a more expressive 
error message.

While looking into the code I realized that there's a very similar error case 
when you:
1) add a bundle.jar in the /load folder (watched by fileinstall)
2) uninstall bundle.jar via console
3) update the bundle.jar file  in the /load folder (just:> touch bundle.jar 
f.i.)
Similarly to the error case reported, you have 
Failed to update bundle 
/opt/myprojects/felix-1.8.0/load/sample.bundle-1.1.0-SNAPSHOT.jar: 
java.lang.NullPointerException

I'll submit a patch to avoid the NPE and give a more meaningful error message 
in both cases

> NPE in fileinstall if a watched bundle is uninstalled by some other means
> -------------------------------------------------------------------------
>
>                 Key: FELIX-1203
>                 URL: https://issues.apache.org/jira/browse/FELIX-1203
>             Project: Felix
>          Issue Type: Bug
>          Components: File Install
>    Affects Versions:  fileinstall-1.0.0
>         Environment: generic
>            Reporter: Sahoo
>             Fix For: fileinstall-1.2.0
>
>
> test1.jar is part of watched dir /tmp/autodeploy-bundles/. I accidentally 
> uninstalled test1.jar bundle using the Shell command. Next time, when I 
> actually removed the file from the directory, fileinstall failed with the 
> following NPE:
> Jun 7, 2009 11:23:52 PM  
> INFO: Failed to uninstall bundle: /tmp/autodeploy-bundles/test1.jar: 
> java.lang.NullPointerException
> Jun 7, 2009 11:23:52 PM  
> INFO: java.lang.NullPointerException
> Jun 7, 2009 11:23:52 PM  
> INFO:   at 
> org.apache.felix.fileinstall.DirectoryWatcher.uninstall(DirectoryWatcher.java:717)
> Jun 7, 2009 11:23:52 PM  
> INFO:   at 
> org.apache.felix.fileinstall.DirectoryWatcher.uninstall(DirectoryWatcher.java:611)
> Jun 7, 2009 11:23:52 PM  
> INFO:   at 
> org.apache.felix.fileinstall.DirectoryWatcher.doInstalled(DirectoryWatcher.java:350)
> Jun 7, 2009 11:23:52 PM  
> INFO:   at 
> org.apache.felix.fileinstall.DirectoryWatcher.run(DirectoryWatcher.java:122)
> I think it is OK to get the NPE, as user is expected to uninstall the bundle 
> by removing the file unlike what I did in this case. But I am not sure. So, I 
> am filing this bug to share my experience. The fix is pretty simple; we need 
> to log the fact that the bundle has been uninstalled by some other means and 
> add a null check in the code. 

-- 
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