Release Notes - CDI Specification Issues - Version 2.0 .Final - HTML format

Feature Request

  • [CDI-30] - An API for managing built in request contexts designed for other frameworks
  • [CDI-420] - add a bean-discovery-mode 'scoped'
  • [CDI-458] - Give the possibility to deactivate an observer in ProcessObserverMethod
  • [CDI-471] - Support repeating qualifiers
  • [CDI-481] - Introduce AnnotatedParameter.getJavaParameter()
  • [CDI-485] - Provide literals for built-in annotations
  • [CDI-515] - Allow to obtain Bean metadata from javax.enterprise.inject.Instance
  • [CDI-522] - Create add method setObserver() to ProcessObserverMethod SPI event
  • [CDI-527] - allow proxying of classes with non-private final methods
  • [CDI-542] - "10.2.2. Firing events asynchronously" update/enhancements
  • [CDI-546] - Constant for default observer priority
  • [CDI-558] - Standardize the Meta-Data builders API (BeanBuilder, etc...)
  • [CDI-568] - Enhancing Java SE bootstrap API
  • [CDI-573] - Review code of CDI class to switch to ServiceLoader
  • [CDI-580] - Allow interceptors and decorators to be applied to the return value of a producer method
  • [CDI-588] - Adding missing annotation Literals
  • [CDI-592] - Consider adding ObserverMethod.notify() method which also accepts EventMetadata
  • [CDI-633] - Introduce BeanManager.event()
  • [CDI-636] - Add Instance.stream()
  • [CDI-638] - Introduce a new xsd for CDI 2.0
  • [CDI-642] - Allow defining interceptor binding or qualifier via an AnnotatedTypeConfigurator in BeforeBeandiscovery
  • [CDI-643] - Provide a way to easily configure injection point of an InjectionTarget
  • [CDI-650] - Introduce asynchronous event notification options
  • [CDI-651] - Add convenient Instance.isResolvable()
  • [CDI-652] - Introduce example of InterceptionFactory usage in 11.7. Apply interceptor programmatically
  • [CDI-653] - Introduce BeanManager#getInstances() to ease instance resolution in custom SPI
  • [CDI-655] - Allow CDIProvider to specify the priority
  • [CDI-657] - Introduce ProcessSyntheticObserverMethod
  • [CDI-658] - Introduce ProducerConfigurator
  • [CDI-684] - Should portable extension support static observer method
  • [CDI-690] - Automatically start a request context for async observer methods

Epic

  • [CDI-461] - Configuration Epic for CDI 2.0
  • [CDI-462] - Parts Epic for CDI 2.0

Bug

  • [CDI-449] - beans.xml examples are not valid
  • [CDI-477] - Update outdated package-info.java in javax.enterprise.inject package
  • [CDI-523] - CDI spec tries to dispose a container-managed entity manager.
  • [CDI-543] - Handling exception during async event - contradiction?
  • [CDI-555] - Inaccurate wording in "24.3.1. Obtaining a reference to the CDI container in Java EE"
  • [CDI-557] - Chapter "10.4.3. The EventMetadata interface" mentions fireAsyncEvent method
  • [CDI-559] - typo on page 113
  • [CDI-569] - Add @ObservesAsync where the spec mention @Observes
  • [CDI-602] - Unmanaged.UnmanagedInstance.disposed is never set to true
  • [CDI-627] - fix wording regression for beans.xml alternative check introduced in 1.2
  • [CDI-637] - Rename builder package to configurator
  • [CDI-640] - Improve javadoc for SeContainer methods
  • [CDI-645] - Links in CDI EDR2 javadoc go to Java SE 6; should go to Java SE 8
  • [CDI-646] - Fix AnnotatedTypeConfigurator.add(), AnnotatedMethodConfigurator.add() and AnnotatedParameterConfigurator.add() javadoc
  • [CDI-663] - Usage of repeatable qualifiers contradicts several statements in the spec
  • [CDI-669] - Clarify statement wrt exception for Interceptionfactory.createInterceptedInstance
  • [CDI-673] - Revisit manipulation with InjectionPoint(s) in ProducerConfigurator
  • [CDI-681] - Spec doesn't talk about BeanConfigurator.read method
  • [CDI-689] - Typo or unclear message in 24.1.2
  • [CDI-692] - isResolvable missing from 5.6.1
  • [CDI-694] - Make an observer that uses both @Observes and @ObservesAsync forbidden
  • [CDI-745] - Project Explorer in RH CodeReady Studio shows incorrect project items hierarchy

Clarification

  • [CDI-232] - Relax requirements for built-in Instance
  • [CDI-433] - AdminEvent example has redundant qualifiers.
  • [CDI-439] - ProcessBean event section - make a reference to AfterBeanDiscovery#addBean()
  • [CDI-441] - Enhance wording for indirect specialization in 4.3.1
  • [CDI-460] - Support repeating annotations in CDI SPI
  • [CDI-489] - NonexistentConversationException thrown at restore view or not?
  • [CDI-490] - Clarify what happens when an interceptor/decorator is enabled using both @Priority and beans.xml
  • [CDI-494] - Events - clarify that a type variable that resolves to a wildcard is not resolvable
  • [CDI-495] - What happens if an illegal bean type is found in the set of bean types
  • [CDI-500] - Clarify @Intercepted Bean metadata injection for EE components
  • [CDI-508] - Nested classes except for static nested classes should not be managed beans
  • [CDI-519] - Instance.destroy() cannot be used for dependent bean instances not created by the same Instance object
  • [CDI-528] - Minor inconsistency in Built-in qualifiers chapter
  • [CDI-544] - 10.2.3. The Event interface - provided executor cannot execute observers notification
  • [CDI-545] - Clarify that observers can't be remote business method
  • [CDI-547] - Resolving sync/async observer methods
  • [CDI-548] - FireAsyncException conflicting with CompletionStage definition
  • [CDI-550] - Misleading AfterBeanDiscovery.addBean() description WRT interceptors and decorators
  • [CDI-553] - Chapter 10.5.3. Observer method invocation context should probably be in EE part
  • [CDI-560] - A bean archive does not have to contain a beans.xml file
  • [CDI-563] - Event.fireAsync() - clarify the usage of the returned CompletionStage
  • [CDI-564] - Async events simplification and clarification
  • [CDI-566] - Container lifecycle events and context initialization events are synchronous
  • [CDI-571] - Producer and Disposer methods as remote business methods
  • [CDI-575] - Add test for CDI class
  • [CDI-577] - Non-Dependent scope specified on Decorator
  • [CDI-578] - define behaviour of firing an event for an observer with transaction if the transaction is not open or marked rollback
  • [CDI-586] - Add spec text for new Literals
  • [CDI-593] - Mention javax.enterprise.inject.spi.Prioritized in spec text and improve its javadoc
  • [CDI-596] - ProcessAnnotatedType - clarify what happens if both setAnnotatedType() and configurator are used within observer notification
  • [CDI-600] - Specialization code sample is misleading
  • [CDI-603] - Create separate doc section for each Annotated*Configurator
  • [CDI-611] - Enhance 10.3.3. Multiple event qualifiers section
  • [CDI-612] - ObserverMethodConfigurator.notifyWith() should probably accept a functional interface whose method throws java.lang.Exception
  • [CDI-614] - Review all read methods at configurators
  • [CDI-616] - Injection point declared as transient is not useful
  • [CDI-620] - Not clear what the id for an annotated type is.
  • [CDI-623] - Specify what happens when calling addObserverMethod or addBean alone
  • [CDI-624] - Map SeContainerInitializer.addBeans() and SeContainerInitializer.addAnnotatedTypes() to the application initialization lifecycle
  • [CDI-625] - When exactly are events with @Initialized(X.class) and @Destroyed(X.class) qualifiers fired
  • [CDI-626] - How should CDI.current() and CDI.getBeanManager() behave for non-CDI apps?
  • [CDI-634] - Clarify contextual reference validity to a bean with a normal scope in Java SE
  • [CDI-639] - Clarify purpose of InjectionPointConfigurator.bean(Bean<?> bean) method
  • [CDI-654] - Revisit BeanConfigurator create/destroy methods
  • [CDI-656] - Clarify effect of @Priority on ordered observers
  • [CDI-662] - Fix Instance.isResolvable() text
  • [CDI-664] - Rename SeContainerInitializer.addInterceptors()/addDecorators()/addAlternatives()/addAlternativeStereotypes() and clarify the purpose
  • [CDI-667] - Session beans in trimmed bean archive
  • [CDI-668] - Most Example with @Priority provide non fully qualified contant name
  • [CDI-670] - Clarify InterceptionFactory.ignoreFinalMethods() purpose and functioning
  • [CDI-671] - SPI element related to Instance are missing info about their qualifier
  • [CDI-672] - Purpose of BeanAttributesConfigurator read methods
  • [CDI-677] - Specify the default scope for beans created from BeanConfigurator
  • [CDI-686] - Could InterceptionFactory accept an interface as type parameter
  • [CDI-700] - BeanManager.createInstance() shouldn't be allowed before AfterDeploymentValidation

Edit/Copy Release Notes

The text area below allows the project release notes to be edited and copied to another document.