A quick update on Weld-OSGi.
I finally managed to get all tests - plain, incontainer, etc - to pass. :-)
(apart from that disabled LifeCycleTest, which I'm waiting on Mathieu to have a look)
This are the latest branches I've been working on
(a) Weld API: https://github.com/alesj/api/tree/osgi2
(b) AS7 OSGi: https://github.com/alesj/jboss-as/tree/osgi2
(c) Weld OSGi: https://github.com/alesj/core/tree/osgi3
* I would need a new AS7 CDI TCK Runner - 1.0.0.CR3
* if you could run this stuff against JEE6 TCK
Now the next question is how to get this into AS7?
As it's sort of a chicken-n-egg problem. :-)
We need to upgrade Weld API in AS7 + switch its impl,
but to release the impl we need to test this against latest AS7.
I guess if this manual setup from above (a, b, c) fully works,
we could tweak/hack the release of impl (Weld Core) a bit?
Is this OK now?
I mean, are you happy with the fix. :-)
> You can merge this Pull Request by running:
> git pull https://github.com/luksa/weld-core weld1144
> Or you can view, comment on it, or merge it online at:
> -- Commit Summary --
> * Remove unnecessary code
> * Extract methods from WeldClassImpl constructor to make it readable
> * WELD-1144 Superclass of processed AnnotationType is ignored
> -- File Changes --
> M impl/src/main/java/org/jboss/weld/bean/AbstractClassBean.java (2)
> M impl/src/main/java/org/jboss/weld/introspector/ForwardingWeldClass.java (4)
> M impl/src/main/java/org/jboss/weld/introspector/WeldClass.java (2)
> M impl/src/main/java/org/jboss/weld/introspector/jlr/WeldClassImpl.java (256)
> M impl/src/main/java/org/jboss/weld/manager/SimpleInjectionTarget.java (2)
> M impl/src/main/java/org/jboss/weld/util/Beans.java (167)
> M pom.xml (2)
> M tests-arquillian/src/test/java/org/jboss/weld/tests/annotatedType/weld1144/CdiTest1.java (1)
> M tests-arquillian/src/test/java/org/jboss/weld/tests/annotatedType/weld1144/CdiTest2.java (1)
> M tests-arquillian/src/test/java/org/jboss/weld/tests/annotatedType/weld1144/SomeInjectedBean.java (1)
> M tests-arquillian/src/test/java/org/jboss/weld/tests/annotatedType/weld1144/Weld1144Test.java (6)
> -- Patch Links --
> Reply to this email directly or view it on GitHub:
Anyone know why WeldClassImpl sets superclass to Object.class for some
classes? This causes weld not to inject fields, declared in
superclasses, where the annotatedType is supplied by an extension. (OK,
not in all cases, only in cases where the annotatedType is detected as
being modified). See https://issues.jboss.org/browse/WELD-1144
Take a look at
I'm thinking of changing this to something along the lines of:
This change does break two tests (SuperTypeTest and
SuperclassModifiedTest), but IMO for these two tests to pass, we should
change Beans.getFieldInjectionPoints() so it returns only the fields
that were returned by AnnotatedType.getFields().
Is there any other reason why WeldClassImpl would need to set
this.superclass to Object.class?