-
CSR
-
Resolution: Approved
-
P4
-
None
-
source
-
medium
-
-
Java API
-
SE
Summary
The beancontext.* package was added (by lcable) in 1.2 to provide a "container" for JavaBeans(tm) to interact.
These APIs were motivated by some of the concepts found in "OpenDoc" which was a popular component model at the time.
These APIs predated by several years the concept of "dependency injection" and "Inversion of Control" that were subsequently popularized by frameworks such as Spring(tm) and Guice(tm) etc.
With the invention of DI/IoC and JSR 330 DI annotations, these APIs have long been superseded and arguably are now an anti-pattern that should no longer be part of the JDK.
the package java.beans.beancontext.* should be deprecated and marked for removal in a later release.
Problem
The APIs are obsolete, and are an anti-pattern at this point given Di/IoC and JSR330 presence.
Solution
Mark java.beans.beancontext.* as @Deprecated for removal in a later release
Specification
mark as @Deprecated:
- BeanContext
- BeanContextChild
- BeanContextChildComponentProxy
- BeanContextContainerProxy
- BeanContextMembershipListener
- BeanContextProxy
- BeanContextServiceProvider
- BeanContextServiceProviderBeanInfo
- BeanContextServiceRevokedListener
- BeanContextServices
BeanContextServicesListener
BeanContextChildSupport
- BeanContextEvent
- BeanContextMembershipEvent
- BeanContextServiceAvailableEvent
- BeanContextServiceRevokedEvent
- BeanContextServiceSupport
- BeanContextServicesSupport.BCSSServiceProvider
- BeanContextSupport
- BeanContextSupport.BCSIterator
- csr of
-
JDK-8321428 Deprecate for removal the package java.beans.beancontext
-
- Resolved
-
- relates to
-
JDK-8347008 beancontext package spec does not clearly explain why the API is deprecated
-
- Resolved
-
-
JDK-8348188 beancontext package spec does not clearly explain why the API is deprecated
-
- Closed
-