Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is the JCache API (JSR 107) part of Java EE?

Been googling for a long time and can't seen to find any information on this.

I'm not 100% sure if it is part of the Java EE platform but my gut feeling it is not. Although, it seems most Java EE compliant application containers do use/ or allow usage of caching systems.

Is it part of Java SE?

Or is it just a standalone specification?

like image 893
SoftwareDeveloper Avatar asked Oct 22 '15 10:10

SoftwareDeveloper


2 Answers

Is the JCache API (JSR 107) part of Java EE?

The short answer is no.


The Java Temporary Caching API (javax.cache package) is not included in the Java EE 7 API dependency:

<dependency>
    <groupId>javax</groupId>
    <artifactId>javaee-api</artifactId>
    <version>7.0</version>
</dependency>

If you need the Java Temporary Caching API, you need another dependency:

<dependency>
    <groupId>javax.cache</groupId>
    <artifactId>cache-api</artifactId>
    <version>1.0.0</version>
</dependency>

In a similar way, the JSR 107 is not included in the Java EE 7 technologies list.

And Java Temporary Caching API final version announcement mentions the following:

It should be possible to use it as a drop-in addition to a Java EE 6 or Java EE 7 application. Although JCache does not specifically address Java EE integration most common use cases should be supported, including a pretty cool set of caching annotations that work with CDI.


The Java Temporary Caching API is not part of the Java EE 8 technologies either.

like image 75
cassiomolin Avatar answered Sep 25 '22 15:09

cassiomolin


According to Oracle it is needed for Java EE and needs to be in the Web Profile:

https://blogs.oracle.com/arungupta/entry/java_ee_7_key_features

like image 25
Marged Avatar answered Sep 25 '22 15:09

Marged