felix-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Peter Kriens <peter.kri...@aqute.biz>
Subject Re: Exception while using obr repository file generated by the bundleplugin
Date Tue, 03 Mar 2009 15:56:54 GMT
Implement these operators? I can send you the source code for a filter  
that implements them ...

Kind regards,

	Peter Kriens

On 3 mrt 2009, at 16:11, Richard S. Hall wrote:

> The issue is that bindex (which generates the repository.xml file)  
> is using non-standard LDAP operators which are not supported by the  
> OBR implementation. In this case, the "mandatory" directive on your  
> bundle is resulting in a subset operator, I believe, which is not  
> standard LDAP.
>
> This is a known issue, although we have no solution for it at present.
>
> -> richard
>
> Kristian Köhler wrote:
>> Hi
>>
>> I'm trying to add/install some local jar files to my local OBR  
>> repository
>> and then use these jar-files within felix via the bundle  
>> repository. For
>> most of the files this seems to work fine but some files are  
>> corrupting my
>> repository (file). The following 'require' element is generated  
>> within the
>> obr repository file for the spring-core-2.5.6.jar file for example:
>>
>> --- 8< ---
>>
>> <require extend="false"
>> filter="(&amp;(package=org.eclipse.core.runtime)(version&gt;=0.0.0) 
>> (common=split)(mandatory:&lt;*common))"
>> multiple="false" name="package" optional="true">Import package
>> org.eclipse.core.runtime</require>
>>
>> --- 8< ---
>>
>> This elements causes the parser to throw the following exception when
>> invoking 'obr list' via the felix shell:
>>
>> --- 8< ---
>>
>> ERROR: Error parsing repository metadata
>> org.osgi.framework.InvalidSyntaxException: expected ~=|>=|<=
>>    at org.apache.felix.framework.FilterImpl.<init>(FilterImpl.java: 
>> 81)
>>    at
>> org 
>> .apache 
>> .felix 
>> .framework.BundleContextImpl.createFilter(BundleContextImpl.java:102)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository.RequirementImpl.setFilter(RequirementImpl.java:57)
>>    at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
>>    at
>> sun 
>> .reflect 
>> .DelegatingMethodAccessorImpl 
>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>    at java.lang.reflect.Method.invoke(Method.java:597)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .metadataparser.XmlCommonHandler.startElement(XmlCommonHandler.java: 
>> 490)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .metadataparser.kxmlsax.KXml2SAXParser.parseXML(KXml2SAXParser.java: 
>> 67)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .RepositoryImpl.parseRepositoryFile(RepositoryImpl.java:256)
>>    at
>> org.apache.felix.bundlerepository.RepositoryImpl.access 
>> $000(RepositoryImpl.java:44)
>>    at
>> org.apache.felix.bundlerepository.RepositoryImpl 
>> $1.run(RepositoryImpl.java:75)
>>    at java.security.AccessController.doPrivileged(Native Method)
>>    at
>> org 
>> .apache 
>> .felix.bundlerepository.RepositoryImpl.<init>(RepositoryImpl.java:71)
>>    at
>> org 
>> .apache 
>> .felix.bundlerepository.RepositoryImpl.<init>(RepositoryImpl.java:60)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .RepositoryAdminImpl.initialize(RepositoryAdminImpl.java:206)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .RepositoryAdminImpl.discoverResources(RepositoryAdminImpl.java:126)
>>    at
>> org 
>> .apache 
>> .felix.bundlerepository.ObrCommandImpl.list(ObrCommandImpl.java:210)
>>    at
>> org 
>> .apache 
>> .felix.bundlerepository.ObrCommandImpl.execute(ObrCommandImpl.java: 
>> 104)
>>    at
>> org.apache.felix.shell.impl.Activator 
>> $ShellServiceImpl.executeCommand(Activator.java:276)
>>    at
>> org.apache.felix.shell.tui.Activator 
>> $ShellTuiRunnable.run(Activator.java:167)
>>    at java.lang.Thread.run(Thread.java:619)
>> WARNING: RepositoryAdminImpl: Exception creating repository
>> file:/home/kkoehler/repository.xml. Repository is skipped.
>> java.lang.reflect.InvocationTargetException
>>    at sun.reflect.GeneratedMethodAccessor11.invoke(Unknown Source)
>>    at
>> sun 
>> .reflect 
>> .DelegatingMethodAccessorImpl 
>> .invoke(DelegatingMethodAccessorImpl.java:25)
>>    at java.lang.reflect.Method.invoke(Method.java:597)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .metadataparser.XmlCommonHandler.startElement(XmlCommonHandler.java: 
>> 490)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .metadataparser.kxmlsax.KXml2SAXParser.parseXML(KXml2SAXParser.java: 
>> 67)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .RepositoryImpl.parseRepositoryFile(RepositoryImpl.java:256)
>>    at
>> org.apache.felix.bundlerepository.RepositoryImpl.access 
>> $000(RepositoryImpl.java:44)
>>    at
>> org.apache.felix.bundlerepository.RepositoryImpl 
>> $1.run(RepositoryImpl.java:75)
>>    at java.security.AccessController.doPrivileged(Native Method)
>>    at
>> org 
>> .apache 
>> .felix.bundlerepository.RepositoryImpl.<init>(RepositoryImpl.java:71)
>>    at
>> org 
>> .apache 
>> .felix.bundlerepository.RepositoryImpl.<init>(RepositoryImpl.java:60)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .RepositoryAdminImpl.initialize(RepositoryAdminImpl.java:206)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository 
>> .RepositoryAdminImpl.discoverResources(RepositoryAdminImpl.java:126)
>>    at
>> org 
>> .apache 
>> .felix.bundlerepository.ObrCommandImpl.list(ObrCommandImpl.java:210)
>>    at
>> org 
>> .apache 
>> .felix.bundlerepository.ObrCommandImpl.execute(ObrCommandImpl.java: 
>> 104)
>>    at
>> org.apache.felix.shell.impl.Activator 
>> $ShellServiceImpl.executeCommand(Activator.java:276)
>>    at
>> org.apache.felix.shell.tui.Activator 
>> $ShellTuiRunnable.run(Activator.java:167)
>>    at java.lang.Thread.run(Thread.java:619)
>> Caused by: org.osgi.framework.InvalidSyntaxException: expected ~=| 
>> >=|<=
>>    at org.apache.felix.framework.FilterImpl.<init>(FilterImpl.java: 
>> 81)
>>    at
>> org 
>> .apache 
>> .felix 
>> .framework.BundleContextImpl.createFilter(BundleContextImpl.java:102)
>>    at
>> org 
>> .apache 
>> .felix 
>> .bundlerepository.RequirementImpl.setFilter(RequirementImpl.java:57)
>>    ... 18 more
>>
>> --- 8< ---
>>
>> The parser expects "~=|>=|<=" but found  
>> "mandatory:<*common" ('explicit'
>> generated by the org.osgi.impl.bundle.obr.resource.BundleInfo class).
>>
>> So I'm not sure what's going wrong here ;-) and how to fix this.
>> Is this the wrong syntax or is it a parser problem?
>>
>> I'm using trunk versions of the bundle repository and the  
>> bundleplugin by
>> the way...
>>
>> Thanks
>>
>> Kristian
>>
>>
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
> For additional commands, e-mail: users-help@felix.apache.org
>


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@felix.apache.org
For additional commands, e-mail: users-help@felix.apache.org


Mime
View raw message