[JBoss JIRA] Created: (WELD-522) Weld makes my Java SE app startup time >100x slower
by Morten Christensen (JIRA)
Weld makes my Java SE app startup time >100x slower
----------------------------------------------------
Key: WELD-522
URL: https://jira.jboss.org/jira/browse/WELD-522
Project: Weld
Issue Type: Bug
Affects Versions: 1.0.1.Final
Environment: Java 6, Weld 1.01 SE + lots of jars on the classpath
Reporter: Morten Christensen
Booting my Java SE app without weld takes << 1s BUT the 1 line for initializing weld to autowire my app takes at least 4-5 seconds.
My app is not so big and consist of ~20-30 singletons that must be wired + various other non-weld stuff. I have lots of stuff on my classpath so I suspect that could be why weld is going crazy.
I guess this could be improved if I can have weld limited to work only inside my own jar and/or only work with specific classes/packages.
P.S. With breakpoints enabled in a debugger and a bit of unluck, I was even able to have welds initialization to take ~ 5 minutes one day (reduced to seconds again after I removed all breakpoints though).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 11 months
[JBoss JIRA] Created: (CDITCK-186) TCK does not properly test for inhertance of observer methods
by Igor Vaynberg (JIRA)
TCK does not properly test for inhertance of observer methods
-------------------------------------------------------------
Key: CDITCK-186
URL: https://jira.jboss.org/browse/CDITCK-186
Project: CDI TCK
Issue Type: Bug
Security Level: Public (Everyone can see)
Reporter: Igor Vaynberg
EventTest has a bug in it. According to section 4.2 of the spec
{code}
If X declares an initializer, non-static observer, @PostConstruct or @PreDestroy method x() then
Y inherits x() if and only if neither Y nor any intermediate class that is a subclass of X and a
superclass of Y overrides the method x().
{code}
both IntermediateStockWatcher and IndirectStockWatcher which extend StockWatcher should inherit its observer method:
{code}
StockWatcher#public void observeStockPrice(@Observes StockPrice price)
{code}
However, EventTest on line 149 asserts there is only one observer method, when in fact there should be three:
{code}
147: StockPrice price = new StockPrice();
148: Set<ObserverMethod<? super StockPrice>> observers = getCurrentManager().resolveObserverMethods(price);
149: assert observers.size() == 1;
{code}
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 11 months
[JBoss JIRA] Created: (WELD-705) Changes made to a superclass's AnnotatedType by extensions not taken into account while sending ProcessAnnotatedType events pertaining to the subclass
by Sivakumar Thyagarajan (JIRA)
Changes made to a superclass's AnnotatedType by extensions not taken into account while sending ProcessAnnotatedType events pertaining to the subclass
------------------------------------------------------------------------------------------------------------------------------------------------------
Key: WELD-705
URL: https://jira.jboss.org/browse/WELD-705
Project: Weld
Issue Type: Bug
Components: Bootstrap and Metamodel API
Affects Versions: 1.1.0.Beta1
Environment: Jersey extension in GlassFish faces this issue
Reporter: Sivakumar Thyagarajan
Fix For: 1.1.0.Beta2
It appears that Weld does not take into account changes made to a superclass's AnnotatedType by extensions, when sending ProcessAnnotatedType events pertaining to the subclass.
Please find attached a netbeans project that demonstrates the problem. It is a web app containing a CDI extension that patches the annotated types it sees to remove all their fields.
BeanOne has one field:
@Inject BeanManager beanManager;
BeanTwo extends BeanOne and doesn't add any fields.
There are no other injection points. The portable extensions patches the annotated type for BeanOne and removes the BeanManager injection point. However on execution, this output appears in the server log: (all the diagnostic output is at warning level...)
===
WARNING: Handling BeforeBeanDiscovery event
WARNING: Handling ProcessAnnotatedType event for beans.BeanOne
WARNING: type has 0 fields
WARNING: replaced annotated type for class beans.BeanOne
WARNING: Handling ProcessAnnotatedType event for beans.BeanTwo
WARNING: type has 0 fields
WARNING: replaced annotated type for class beans.BeanTwo
WARNING: Handling ProcessManagedBean event for beans.BeanTwo
WARNING: found injection point interface javax.enterprise.inject.spi.BeanManager @javax.enterprise.inject.Default()
WARNING: Handling ProcessManagedBean event for beans.BeanOne
===
I.e. in BeanOne the field has been correctly nuked, but it comes back in BeanTwo.
Weld may be holding a reference to the old AnnotatedType for BeanOne as part of its internal representation for BeanTwo and uses that instead of the replacement provided by the extension. Since annotated types are self-contained, so Weld should not even look at BeanOne at that point.
The same behavior can be observed on both GF 3.0.1 (=WELD-000900 1.0.1 (SP3)) and GF 3.1-b16 (=WELD-000900 1.1.0.01 (glassfish)).
A glassfish issue tracking this Jersey extension problem is at https://glassfish.dev.java.net/issues/show_bug.cgi?id=13132
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 11 months
[JBoss JIRA] Created: (CDITCK-180) org.jboss.jsr299.tck.tests.inheritance.specialization.enterprise.Farmer org.jboss.jsr299.tck.tests.inheritance.specialization.enterprise.Yard need to use public
by Lance Andersen (JIRA)
org.jboss.jsr299.tck.tests.inheritance.specialization.enterprise.Farmer org.jboss.jsr299.tck.tests.inheritance.specialization.enterprise.Yard need to use public
----------------------------------------------------------------------------------------------------------------------------------------------------------------
Key: CDITCK-180
URL: https://jira.jboss.org/browse/CDITCK-180
Project: CDI TCK
Issue Type: Bug
Security Level: Public (Everyone can see)
Components: Tests
Affects Versions: 1.0.1.Final
Reporter: Lance Andersen
The following two classes are missing public in there declarations:
org.jboss.jsr299.tck.tests.inheritance.specialization.enterprise.Farmer
org.jboss.jsr299.tck.tests.inheritance.specialization.enterprise.Yard
Specification version & section:
The EJB Spec states the following in section "4.9.2 Session Bean Class":
The class must be defined as public, must not be final, and must not be abstract. The class must be a top level class.
This clearly violates that rule. These classes are not public.
Tests Affected:
testSpecializingBeanHasBindingsOfSpecializedAndSpecializingBean
testSpecializingBeanHasNameOfSpecializedBean
from
org.jboss.jsr299.tck.tests.inheritance.specialization.enterprise.EnterpriseBeanSpecializationTest
Output:
[9/7/10 14:57:34:309 CDT] 0000002f annotations E AbstractMergeAction merge An exception occurred while validating an annotation:com.ibm.wsspi.amm.validate.ValidationException: class org.jboss.jsr299.tck.tests.inheritance.specialization.enterprise.Farmer does not define a valid enterprise bean; the class is either not declared public or is declared as either final or abstract
[9/7/10 14:57:34:312 CDT] 0000002f annotations E AbstractMergeAction merge An exception occurred while validating an annotation:com.ibm.wsspi.amm.validate.ValidationException: class org.jboss.jsr299.tck.tests.inheritance.specialization.enterprise.Yard does not define a valid enterprise bean; the class is either not declared public or is declared as either final or abstract
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: https://jira.jboss.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira
14 years, 11 months