På JavaOne-konferencen har Sun løftet sløret for de kommende Java-versioner, Java Enterprise Edition (EE) 6 og Java Standard Edition (SE) 7.
Hvor Java SE er den grundlæggende Java-platfom, så er Java EE enterprise-versionen med ekstra faciliteter til at håndtere transaktionsintensive og komplekse systemer.
Planerne for Java EE 6
Java EE 6 er rettet mod udvikling af store enterprise-systemer, og her fokuserer Sun i den kommende version på at få den omfattende Java EE-specifikation gjort mere håndterlig for udviklerne.
"For EE 6 er temaet, hvad jeg vil kalde rightsizing, hvilket basalt set betyder, at platformen skal have den rette størrelse for dig," siger Roberto Chinnici, leder af Java EE platform hos Sun.
"Med version 6 vil der blive oprettet såkaldte profiler baseret på forskellige behov. Eksempelvis vil der være en Web profil som er beregnet til Web-udviklere," siger Roberto Chinnici.
Web-profilen er endnu ikke færdigdefineret, men vil indeholde teknologier, som størstedelen af web-applikationer indeholder.
Der forventes at blive defineret andre profiler som eksempelvis en telekommunikationsprofil som indeholder SIP (Session Initiation Protocol) services.
Profiler oprettes på bagrund af Java Specification Request (JSR) som en del af Java Community Process.
En anden interessant feature i version 6 er et API for REST Web services.
"Der var behov for at vi lavede et API, der udelukkende fokuserede på dem," siger Roberto Chinnici.
Der planlægges også en beskæring af Java-platformen, så ældre og ikke så anvendte teknologier bliver valgfri.
"De typiske kandidater er de teknologier, som er blevet overgået af nye teknologier," forklarer Roberto Chinnici.
Som eksempel nævner han JAX RPC og Entity Beans som er mere eller mindre forældede teknologier.
Der er ikke fastlagt nogen dato for frigivelse af Java EE 6, men det forventes at ske senere i år.
Planerne for Java SE 7
Java SE 7 forventes klar til sommer 2009 og fokuserer blandt andet på modularitet i udvikling og udrulning af systemer.
Specifikt er det JSR 294, for forbedret understøttelse af modularitett, og JSR 277, for Java Module System, som Java SE 7 vil indeholde.
Målet med Java-modulsystemet er at forbedre pakningen af applikationer ved hjælp af JAM formatet.
Java Development Kit (JDK) 7, som bliver baseret på Java SE 7, vil understøtte OSGi bundles.
"Vi annoncerer en ny specifikation som giver interoperabilitet mellem Java module system for SE 7 og OSGi bundles," siger Danny Coward, chefarkitekt i klient software gruppen hos Sun.
"Det betyder, at udviklere, som har lavet applikationer, som anvender OSGi bundles, vil kunne køre dem uændret i JDK 7. Målet er, at hjælpe udviklere med at få koden til at køre på JDK 7," siger Danny Coward.
Anvendelsen af OSGi, som en deployment-model bifaldes af analytikeren Anne Thomas Manes fra Burton Group.
"Deployment af systemer er ikke videre kendt i den nuværende version af Java. Det er en god ide at bruge OSGi til at løse det problem," siger hun.
JVM understøtter andre sprog
Som del af Sun's plan om at udvide understøttelsen af forskellige programmeringssprog på JVM'en(Java Virtual Machine), vil Sun fjerne de sidste Java-bindinger, der stammer fra dengang JVM'en udelukkende var beregnet til at eksekvere Java-programmer.
Det skal være nemmere for udviklere at skrive compilere og eksekvere dem på Java-platformen.
Flere talere på JavaOne-konferencen fremhævede at Suns applikationsserver-projekt Glassfish i den kommende version 3 vil understøtte dynamiske programmeringssprog som Ruby og Groovy, ligesom den selvfølgelig vil understøtte Java EE 6.