Izašla platforma Java EE 7
13.06.2013.
Od strane JCP (Java Community Process) i kompanije Oracle jučer je objavljena javna dostupnost platforme Java EE 7 (punim imenom Java Platform, Enterprise Edition 7), prve verzije izdane pod vodstvom Oracla nakon što je kupio Sun Mycrosystems. S obzirom da je Java EE 6 izašla davne 2009. godine, ovo je dugo očekivana inačica koja je trebala donijeti dosta novosti. Iako je izdanje planirano još krajem prošle godine, zbog kašnjenja u određenim dijelovima specifikacije, isto je odgođeno za lipanj 2013. Neki su dijelovi koji se odnose na mogućnosti računarstva u oblaku i caching API JCache zbog problema u dinamici razvoja odgođeni za sljedeće izdanje platforme Java EE. No, ovo je ipak značajno izdanje koje donosi čak 14 novih specifikacija (JSR) i 9 osvježenih izdanja (MR).
Strateški dio objave vodili su Hasan Rizvi i Cameron Purdy, a slijedio je tehnički keynote od Aruna Gupte i Linde DeMichiel, koja je i vodila razvoj specifikacije platforme Java EE 7, te posljedično niz detaljnih objava od strane voditelja pojedinih specifikacija. Fokus ovog izdanja je usmjeren u tri pravca, a to su primjena podrške za HTML5, produktivnost razvoja i podrška zahtjevima enterprise tržišta. Skalabilna infrastruktura trebala bi podržati jednostavniju izradu novih HTML5 aplikacija korištenjem dvosmjerne komunikacije niske latencije pomoću WebSockets API-ja, pojednostavnjenim procesiranjem JSON objekata, neblokirajućim I/O u specifikaciji Servlet 3.1. i podrškom za veliki broj konkurentnih korisnika pomoću asinkronih RESTful Web servisa s JAX-RS 2.0. Smanjenje glavobolja razvojnih inženjera i povećanje njihove produktivnosti trebalo bi se očitovati kroz integriranu kohezivnu platformu koja smanjuje potrebu za boiler-plate kodom korištenjem anotacija, injektiranjem ovisnosti i default resursa, te povećanjem portabilnosti aplikacija. Odgovorilo se i na mnoge zahtjeve tržišta, pa se tako u Java EE 7 našla i podrška za batch procesiranje, poboljšana skalabilnost kroz višenitne konkurentne zadatke te poboljšana podrška za transakcijske aplikacije. Od drugih zanimljivosti izdvojili bi svakako i podršku za poruke pomoću Java Message Service (JMS) 2.0.
Sve ovo nije zasluga samog Oracla, već Java zajednice u cjelini, pri čemu se ističe i pomoć 19 korisničkih Java grupa (JUG) kroz program „Adopt a JSR“, a na mnogim dijelovima specifikacija surađivalo je i mnogo drugih velikih kompanija, pa je tako primjerice Red Hat vodio razvoj specifikacija CDI (Contexts and Dependency Injection) i Bean Validation, a IBM specifikaciju vezanu uz batch procesiranje.
Potpuna lista novosti uključuje sljedeće specifikacije JSR:
- Java Platform, Enterprise Edition 7 (JSR 342)
- Concurrency Utilities for Java EE 1.0 (JSR 236)
- Java Persistence 2.1 (JSR 338)
- JAX-RS: The Java API for RESTful Web Services 2.0 (JSR 339)
- Java Servlet 3.1 (JSR 340)
- Expression Language 3.0 (JSR 341)
- Java Message Service 2.0 (JSR 343)
- JavaServer Faces 2.2 (JSR 344)
- Enterprise JavaBeans 3.2 (JSR 345)
- Contexts and Dependency Injection for Java EE 1.1 (JSR 346)
- Bean Validation 1.1 (JSR 349)
- Batch Applications for the Java Platform 1.0 (JSR 352)
- Java API for JSON Processing 1.0 (JSR 353)
- Java API for WebSocket 1.0 (JSR 356)
kao i sljedeća osvježena izdanja (MR):
- Web Services for Java EE 1.4 (JSR 109)
- Java Authorization Service Provider Contract for Containers 1.5 (JACC 1.5) (JSR 115)
- Java Authentication Service Provider Interface for Containers 1.1 (JASPIC 1.1) (JSR 196)
- JavaServer Pages 2.3 (JSR 245)
- Common Annotations for the Java Platform 1.2 (JSR 250)
- Interceptors 1.2 (JSR 318)
- Java EE Connector Architecture 1.7 (JSR 322)
- Java Transaction API 1.2 (JSR 907)
- JavaMail 1.5 (JSR 919)
Istovremeno s ovim izdanjem izašla je i nova verzija aplikacijskog poslužitelja GlassFish 4.0 koji služi kao referentna implementacija specifikacije Java EE 7, kao i razvojno okruženje NetBeans 7.3.1 te rano Kepler izdanje razvojnog okruženja Eclipse, koja podržavaju novu platformu.
Vijest pisana za BUG online i HUJAK.