Daniele Pirola created FELIX-4653:
-------------------------------------

             Summary: Different representation between Local and Remote Resource
                 Key: FELIX-4653
                 URL: https://issues.apache.org/jira/browse/FELIX-4653
             Project: Felix
          Issue Type: Bug
          Components: Bundle Repository (OBR)
    Affects Versions: bundlerepository-2.0.2
            Reporter: Daniele Pirola


Local and remote resource have different capability/requirement even if the 
bundles referred are the same. This is an error specially when the bundle is a 
fragment. These are the "local" and "remote" requirement of the same fragment 
bundle:

LOCAL
bundle:(&(symbolicname=org.eclipse.nebula.widgets.datechooser)(version>=0.0.0))

REMOTE
fragment:(&(fragment=org.eclipse.nebula.widgets.datechooser)(bundle-version>=0.0.0))

These are the "local" and "remote" capabilities of the bundle host

LOCAL
bundle:{symbolicname=org.eclipse.nebula.widgets.datechooser.rap, version=1.0.0}

REMOTE
bundle:{osgi.wiring.bundle=org.eclipse.nebula.widgets.datechooser, 
bundle-version=1.0.0}, 
fragment:{osgi.wiring.host=org.eclipse.nebula.widgets.datechooser, 
bundle-version=1.0.0}

Resolving the remote fragment lead to an unsatisfied requirement.
The error IMO is in the SpecXMLPullParser class when in the parseRequirement 
method besides requirement name also the filter osgi namespace are converted 
into felix namespace, so 

<requirement namespace='osgi.wiring.host'>
      <directive name='filter' value='(&amp;(osgi.wiring.host=....

becomes
fragment:(&(fragment...

insead of
fragment:(&(osgi.wiring.host...




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

Reply via email to