You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@felix.apache.org by "J.W. Janssen (JIRA)" <ji...@apache.org> on 2014/12/05 14:36:12 UTC

[jira] [Commented] (FELIX-4516) Update command fails for non-bundle resource

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

J.W. Janssen commented on FELIX-4516:
-------------------------------------

Looked into your supplied DP, but it is actually not correct: OSGi spec 114.3 specifies that resources (such as your {{icon.png}}) *must* be placed after all bundles. You DP contains the {{icon.png}} before any of the bundles.

> Update command fails for non-bundle resource
> --------------------------------------------
>
>                 Key: FELIX-4516
>                 URL: https://issues.apache.org/jira/browse/FELIX-4516
>             Project: Felix
>          Issue Type: Bug
>          Components: Deployment Admin
>    Affects Versions: deploymentadmin-0.9.6
>            Reporter: Norman Fomferra
>         Attachments: com.acme.toolbox-1.0.4.jar
>
>   Original Estimate: 2h
>  Remaining Estimate: 2h
>
> I have a deployment package containg two bundles and an image resource. All three resources are listed in the manifest 
> in the given order. When trying to install the package, the UpdateCommand.doExecute() thows the following exception:   
> {noformat}
> org.osgi.service.deploymentadmin.DeploymentException: Resource 'icon.png' is not described in the manifest.
> 	at org.apache.felix.deploymentadmin.spi.UpdateCommand.doExecute(UpdateCommand.java:69)
> 	at org.apache.felix.deploymentadmin.spi.Command.execute(Command.java:55)
> 	at org.apache.felix.deploymentadmin.spi.DeploymentSessionImpl.call(DeploymentSessionImpl.java:77)
> 	at org.apache.felix.deploymentadmin.DeploymentAdminImpl.installDeploymentPackage(DeploymentAdminImpl.java:214)
> 	at org.teo.obr.DpCommand.installFromFile(DpCommand.java:153)
> {noformat}
> The exception is thrown in org/apache/felix/deploymentadmin/spi/UpdateCommand.java(line 69) once the current JAR
> entry is not the name of an expected bundle:
>  
> {code:java}
> 66  String name = entry.getPath();
> 67  BundleInfoImpl bundleInfo = (BundleInfoImpl) expectedBundles.remove(name);
> 68  if (bundleInfo == null) {
> 69      throw new DeploymentException(DeploymentException.CODE_OTHER_ERROR, "Resource '" + name + "' is not described...");
> 70  }
> {code}
> The code should check first if the current JAR entry points to any other resource in the manifest before assuming 
> it points to a bundle.  
> Issue FELIX-518 is closely created, if not the same.
> Thanks!
>    Norman



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)