Skip to main content
Breadcrumbs
Date: 2020-10-13
Present:
- Jean-Louis Monteiro (Tomitribe)
- Andy McCright (IBM)
- Scott Marlow (Red Hat)
- Kevin Sutter (IBM)
- Ed Bratt (Oracle)
- Ivar Grimstad (Eclipse Foundation)
- César Hernández (Tomitribe)
- Paul Nicolucci (IBM)
- Dmitry Kornilov (Oracle)
- Emily Jiang (IBM)
- Steve Millidge (Payara)
- Jonathan Coustick (Payara)
- Jonathan Gallimore (Tomitribe)
- David Blevins (Tomitribe)
- Tanja Obradovic (Eclipse Foundation)
- Kenji Kazumura (Fujitsu)
- Werner Keil (Individual)
Agenda and Minutes
[Scott Marlow] Follow up on Corba/IIOP removal
- IIOP Interoperability was ‘proposed optional’ in Java EE 8 Platform SPEC (see table EE.6-1 EJB3.2 entry that mentions POPTc which means interoperability could be removed from Jakarta EE 9 which it was).
- EJB 1.x spec was RMI focused, Corba could be used but JRMP was generally used initially.
PortableRemoteObject#narrow was there from near the beginning of EJB 1.x, which use of ensured that ejb calls would work with varies EJB implementations.
- EJB 3 eliminated the need for PortableRemoteObject to be used, as new remote interfaces could automatically handle remote calls without calling #narrow. Works under the covers.
- Also note that Corba/IIOP is removed from Java SE 11, which means for future JDK11+ support, javax.rmi.portableremoteobject can not be referenced in Platform EE 9 TCK.
- At least not in tests that would be included in TCK test runs on Java SE 11.
- The Platform TCK currently only allows for tests to be required or optional.
- The Platform TCK does not have a way to test removed technologies.
- https://github.com/eclipse-ee4j/jakartaee-tck/pull/543 is being tested.
- The use of remote tiers being invoked may see different outcomes with applications that try to type cast instead of calling javax.rmi.PortableRemoteObject#narrow
- We need a conclusion on how removal of IIOP Interoperability applies to TCK testing.
- Do we need to verify that remote EJB 2 style calls to separate JVM can work with GlassFish?
- If we test this, we will remove the requirement for PortableRemoteObject#narrow from EJB spec.
- javax.rmi.PortableRemoteObject is the only interface that we removed from JDK 11 and haven’t translated to jakarta.* since it wasn’t donated to Jakarta.
- If we do have permission to move javax.rmi.PortableRemoteObject into jakarta.* namespace, we could include jakarta.PortableRemoteObject in EJB SPEC API.
- https://github.com/eclipse-ee4j/orb/blob/master/omgapi/src/main/java/javax/rmi/PortableRemoteObject.java
- Options
- Eliminate use of javax.rmi.PortableRemoteObject in Platform TCK
- Move javax.rmi.PortableRemoteObject into EJB SPEC API and update Platform TCK tests to use jakarta.rmi.PortableRemoteObject
- Deprecate jakarta.rmi.PortableRemoteObject immediately
- javax.rmi.PortableRemoteObjectClass needs to be implemented by GlassFish
- DECISION: Deal with this in EE 9.1 for addressing JDK11 issues
- Platform TCK tests can continue to use javax.rmi.PortableRemoteObject#narrow, instead we will deal with the pull request for EE 9.1.
- FYI… Kevin verified with the IBM EJB Lead that we have packaged the necessary RMI/IIOP classes for our use with Java SE 11. The Liberty support of EJB requires the use of javax.rmi.PortableRemoteObject#narrow.
- Could we deal with JDK 11 in EE 10 as an alternative?
- There is a lot of feedback that we need JDK11 for EE 9.x
- How much time to deal with this (just javax.rmi.PortableRemoteObject) change now for EE 9?
- We don’t have ability to test for EE 9 since we don’t yet support JDK11
- Updating the Platform SPEC for removed Corba/IIOP
- There are a bunch of Corba things that have to be described still in Platform SPEC.
- These have nothing to do with interoperability
- Update Platform SPEC wording from
Compatible Implementations MAY additionally certify and support later versions of the Java SE runtime.
to only support Java SE 8?
- Since later JDK versions removed features, it is currently difficult to to support any later version.
- TCK signature tests need updates for JDK11 to pass on JDK11.
- Will leave Java SE versions later than SE 8 may be used.
Jakarta EE 9.1 (recurring agenda item)
- javax.rmi.PortableRemoteObject#narrow
Jakarta EE 10 (recurring agenda item)
Back to the top