That's a good point for Karaf 5 ;) (the OSGi headers/test/kwonledges ;)).
Regards
JB
On 29/09/2021 10:46, Richard Hierlmeier wrote:
The point is that the fix of issue 1616 in jsoup is sufficient for me.
It does not fix the problem in jsr305, it just does not use it.
I can wait until jsoup 1.14.3 is released.
Yes, you can't fix these issues. The problem is that most artifacts do
not run on OSGI primarily.
They have OSGI definitions in the manifest, but the are not really tested.
An upgrade to a newer versions ends often in fixing these issues by
wrapping the artifact.
Regards
Richard
Am Mi., 29. Sept. 2021 um 08:20 Uhr schrieb JB Onofré <j...@nanthrax.net
<mailto:j...@nanthrax.net>>:
So what’s the point in your previous email ? If the third party
fixed their issue already that’s fine right ?
Karaf can’t fix whole world issue ;)
Regards
JB
Le 29 sept. 2021 à 08:04, Richard Hierlmeier
<rhierlme...@googlemail.com <mailto:rhierlme...@googlemail.com>> a
écrit :
Wrapping the bundle is not necessary for my use case. The bug is
already fixed in jsoup.
See https://github.com/jhy/jsoup/issues/1616
<https://github.com/jhy/jsoup/issues/1616>
Unfortunately the release of jsoup 1.14.3 is yet not available.
The original findbugs development is no longer active. The newer
project is named spotbugs. It does not
use the javax.annotation package.
See
https://github.com/spotbugs/spotbugs/issues/421
<https://github.com/spotbugs/spotbugs/issues/421>
Regards
Richard
Am Mi., 29. Sept. 2021 um 06:07 Uhr schrieb Jean-Baptiste Onofre
<j...@nanthrax.net <mailto:j...@nanthrax.net>>:
Hi Richard
Sorry I misread the trace especially this part:
export: osgi.wiring.package=org.atmosphere.cpr;
uses:=javax.annotation
com.vaadin.external.atmosphere.runtime
[com.vaadin.external.atmosphere.runtime [141](R 141.0)]
import: (osgi.wiring.package=javax.annotation)
AFAIR we already discuss about google findbugs bundle that
cause an issue (it should not export Java.annotation package
as it’s not a spec).
Maybe I can wrap this bundle in SMX to avoid issue in the
future. Thoughts ?
Regards
JB
> Le 28 sept. 2021 à 20:19, Richard Hierlmeier
<rhierlme...@googlemail.com
<mailto:rhierlme...@googlemail.com>> a écrit :
>
> Hi J.B,
>
> The javax.annotation package is exported by
>
> mvn:com.google.code.findbugs/jsr305/3.0.2 (dependency of jsoup)
> and by
> mvn:jakarta.annotation/jakarta.annotation-api/1.3.5 (from
cxf-specs feature)
>
> None of them comes from Vaadin. vaadin-server has a
dependency to jsoup that was upgraded with Vaadin 8.14.0 to
version 1.14.2.
> The jsr305 bundle imports to javax.annotation;version=[3.0.2,4)
> My vaadin8osgi Bundle imports javax.annotation;version=[1.3.5,2)
>
> It seems that the jsr305 bundle ist the problem:
>
https://stackoverflow.com/questions/64568455/why-does-findbugs-jsr305-break-osgi-package-export-of-javax-annotations-in-redha
<https://stackoverflow.com/questions/64568455/why-does-findbugs-jsr305-break-osgi-package-export-of-javax-annotations-in-redha>
>
> Richard
>
>
>
>
> Am Di., 28. Sept. 2021 um 17:35 Uhr schrieb Jean-Baptiste
Onofre <j...@nanthrax.net <mailto:j...@nanthrax.net>>:
> Hi Richard,
>
> It seems that vaadin.annotations bundle is just wrong as it
exports javax.annotation whereas it should not.
>
> You have basically three options:
> 1. Fix vaadin.annotations ;)
> 2. Wrap vaadin.annotations to remove the “bad” export
> 3. Don’t use six annotation-api-1.3 and use
vaadin.annotations instead but it means changing the core features
>
> Regards
> JB
>
> > Le 28 sept. 2021 à 17:27, Richard Hierlmeier
<rhierlme...@googlemail.com
<mailto:rhierlme...@googlemail.com>> a écrit :
> >
> >
> > After upgrading the Vaadin OSGI demo to VAADIN 8.14.0 it
tried
> > to integrate a jax-rs resource into this application.
> >
> > I used the rest whiteboard examples from the Karaf 4.3.3
distribution. It worked in a first step fine.
> >
> > Finally I tried to implement a JAX-RS authentication
filter for this application.
> >
> > I implemented this class:
https://github.com/rhierlmeier/vaadin8_karaf_demo/blob/jaxrs-integration/src/main/java/de/rhierlmeier/vaadin8osgi/rest/AuthenticationFilter.java
<https://github.com/rhierlmeier/vaadin8_karaf_demo/blob/jaxrs-integration/src/main/java/de/rhierlmeier/vaadin8osgi/rest/AuthenticationFilter.java>
> >
> > I needs the javax.annotation.Priority annotation.
> >
> > When I start now the bundle, I get following error:
> >
> > Error executing command: Error executing command on bundles:
> > Error starting bundle 148: Uses constraint
violation. Unable to resolve resource
de.rhierlmeier.vaadin8osgi [de.rhierlmeier.vaadin8osgi [148](R
148.2)] because it is exposed to package 'javax.annotation'
from resources org.apache.servicemix.specs.annotation-api-1.3
[org.apache.servicemix.specs.annotation-api-1.3 [164](R
164.0)] and org.apache.felix.framework
[org.apache.felix.framework [0](R 0)] via two dependency chains.
> >
> > Chain 1:
> > de.rhierlmeier.vaadin8osgi [de.rhierlmeier.vaadin8osgi
[148](R 148.2)]
> > import:
(&(osgi.wiring.package=javax.annotation)(version>=1.3.0)(!(version>=2.0.0)))
> > |
> > export: osgi.wiring.package: javax.annotation
> > org.apache.servicemix.specs.annotation-api-1.3
[org.apache.servicemix.specs.annotation-api-1.3 [164](R 164.0)]
> >
> > Chain 2:
> > de.rhierlmeier.vaadin8osgi [de.rhierlmeier.vaadin8osgi
[148](R 148.2)]
> > import:
(&(osgi.wiring.package=com.vaadin.annotations)(version>=8.14.0)(!(version>=9.0.0)))
> > |
> > export: osgi.wiring.package=com.vaadin.annotations;
uses:=org.atmosphere.cpr
> > com.vaadin.server [com.vaadin.server [145](R 145.0)]
> > import:
(&(osgi.wiring.package=org.atmosphere.cpr)(version>=2.4.30.vaadin4))
> > |
> > export: osgi.wiring.package=org.atmosphere.cpr;
uses:=javax.annotation
> > com.vaadin.external.atmosphere.runtime
[com.vaadin.external.atmosphere.runtime [141](R 141.0)]
> > import: (osgi.wiring.package=javax.annotation)
> > |
> > export: osgi.wiring.package: javax.annotation
> > org.apache.felix.framework [org.apache.felix.framework
[0](R 0)] Unresolved requirements:
[[de.rhierlmeier.vaadin8osgi [148](R 148.2)]
osgi.wiring.package;
(&(osgi.wiring.package=com.vaadin.annotations)(version>=8.14.0)(!(version>=9.0.0)))]
> >
> > How can I solve this problem?
> >
> > This problem can be reproduced by building and installing
this branch:
> >
> >
https://github.com/rhierlmeier/vaadin8_karaf_demo/tree/jaxrs-integration
<https://github.com/rhierlmeier/vaadin8_karaf_demo/tree/jaxrs-integration>
> >
> > Regards
> >
> > Richard
>