Oracle: Eclipse non può utilizzare i marchi Java EE

La migrazione di Java EE (Enterprise Edition) alla Eclipse Foundation ha riscontrato alcuni problemi, con Oracle che non consente l'utilizzo dei marchi delle specifiche Java da parte della fondazione. Tuttavia, il direttore esecutivo di Eclipse Mike Milinkovich è fermamente convinto che Java EE non sia morto e Oracle non lo abbia ucciso, come suggerito da un blog.

Dopo molti mesi di negoziazioni in "buona fede", la fondazione e Oracle, che è stato responsabile di Java EE, non sono stati in grado di concordare i termini per utilizzare i marchi Java attualmente utilizzati dalle specifiche Java EE o per modificare lo spazio dei nomi del pacchetto javax, un bollettino alla fine della scorsa settimana ha detto. I marchi Java di Oracle sono di proprietà della società ed Eclipse non ha alcun diritto di utilizzarli. Milinkovich ha citato le implicazioni per l'implementazione Java di Jakarta EE enterprise della Eclipse Foundation:

  • Le specifiche dei componenti Jakarta EE che utilizzano lo spazio dei nomi del pacchetto javax possono essere completamente omesse dalle future specifiche della piattaforma Jakarta EE.
  • Lo spazio dei nomi del pacchetto javax può essere utilizzato all'interno delle specifiche EE di Jakarta, ma può essere utilizzato solo "così com'è". Non sono consentite modifiche. Le specifiche Jakarta EE che continuano a utilizzare lo spazio dei nomi del pacchetto javax devono rimanere TCK (kit di compatibilità tecnologica) compatibile con le corrispondenti specifiche Java EE.
  • Qualsiasi specifica che utilizza lo spazio dei nomi javax continuerà ad avere gli stessi requisiti di contenitore e certificazione Java EE di prima. Le implementazioni che rivendicano la conformità con qualsiasi versione delle specifiche Jakarta EE che utilizzano lo spazio dei nomi javax devono testare e distribuire contenitori che incorporano implementazioni Java SE (Standard Edition) certificate e concesse in licenza da Oracle.
  • Le specifiche devono essere modificate da una convenzione di denominazione "Java EE" a una convenzione "Jakarta EE", inclusi acronimi come EJB (Enterprise JavaBeans), JPA (Java Persistence API) e JAX-RS (Java API for RESTful Web Services).

Alla domanda sulle potenziali incompatibilità della piattaforma derivanti dal disaccordo con Oracle, Minkovich ha detto che è necessario sviluppare soluzioni a questi problemi tecnici. Il gruppo di lavoro di Jakarta EE darà il via a queste discussioni con la comunità questa settimana. Ad esempio, la compatibilità binaria potrebbe essere ottenuta e offerta da implementazioni tramite strumenti che eseguono la modifica del bytecode in fase di compilazione, distribuzione o runtime.

Milinkovich prevede che il lavoro futuro su Java EE non utilizzerà lo spazio dei nomi javax ma piuttosto un nuovo spazio dei nomi come jakarta. Nonostante le battute d'arresto, il lavoro continuerà a spostare Java EE in Eclipse. Milinkovich ha notato che sono stati compiuti progressi nello spostamento di Java EE in Oracle, come il contributo di Oracle al server delle applicazioni GlassFish, che è servito come implementazione di riferimento di Java EE, a Eclipse. Le specifiche ratificate di Jakarta saranno disponibili con la licenza Eclipse. Il lavoro continua per fornire una versione di Jakarta EE 8 entro la fine dell'anno. Oltre Jakarta EE 8, è previsto Jakarta EE 9.

Oracle ha affermato di rimanere impegnata a collaborare con il gruppo di lavoro Jakarta EE e il processo di specifica Jakarta EE per creare la piattaforma Jakarta EE. Ma la società ha riconosciuto di non poter raggiungere un accordo sui marchi e sull'uso di javax. Eclipse ha ereditato lo sviluppo di Java aziendale da Oracle nel settembre 2017.