Here are a bunch of points which seemed to have to come out of the discussions so far
JCache & Java EE 8 Integration Points
CDI can be used to manage caches with the help of Producers. Containers can also provide portable CDI extensions to make the job a little easier and reduce boilerplate (see TomEE jcache-cdi)
Implementing JCache Annotations
JCache ships with annotations meant to be leveraged by DI containers. A Java EE implementation would need to provide support for these annotations which can also be achieved by CDI interceptors (possibly in the form of portable CDI extensions)
Other Java EE Specs Leveraging JCache
Different Java EE 8 specs can make use of the presence of JCache standards and make use of its features. One of the most common examples would be JPA 2.2 using JCache provider as a (distributed) L2 (Level 2) cache. Payara has this lined up as well
Payara is leading the way with some other use cases in the pipeline
- Hazelcast as ejb timer store: EJB-JCache in tandem
- Hazelcast as a jbatch store: JBatch-JCache in tandem
- Hazelcast as a EclipseLink L1 cache co-ordinator: another JPA-JCache integration point in the works
What’s the Bare Minimum?
As Johan Vos stated, just including it in the Java EE 8 Platform would be great!
I’ll stop rambling and open the floor for discussions, inputs and suggestions – over here, on the open Java EE 8 mailings lists or maybe in a blog post of your own ..?