Re: RMI-IIOP proposed optional

Bill Shannon
 

Hi Jens.

First of all, there is nothing named "JEE".  The correct name is "Java EE".

"Proposed optional" means that it might be declared optional in the next release.  In Java EE 8, it is still required.

In the next release, we will consider whether the time is right to make this technology optional.  If it is made optional, vendors will not be required to include it in their products.  Still, we expect many products with a large customer base to continue to provide it so as to support their existing customers.  If you depend on it and your vendor drops support for it, you might need to take advantage of the portability of Java EE applications and move to a new vendor.

While RMI-IIOP might be made optional, support for remote EJB invocations using EJB 3 style EJBs, including transaction support, will still be required.  The protocol used might be RMI-IIOP or it might be a vendor-specific protocol; the spec would no longer require a specific protocol.

The feedback we've gotten from the vast majority of customers is that use of remote EJB invocations between independently deployed applications is no longer a best practice.  Web technologies such as JAX-WS or especially JAX-RS are greatly preferred.  Such loosely coupled components will not depend on distributed transactions.  We would encourage new applications to use a more web-centric architecture, although remote EJBs will remain for applications that need them.

    Bill

Jens Engel wrote on 08/ 2/17 07:34 AM:

Hello,

I'm trying to understand the impact of sections EE.2.7.4 and EE.6.2.3.6 of the specification declaring RMI-IIOP as proposed optional.
Does this just mean that JEE implementations > JEE8 might not interoperate with CORBA Orbs? Or does this even imply that such future JEE implementations may not provide the ability for transactional remote invocation of Session Beans between different JVM instances within the JEE product itself?

Will there be any replacements for transactional remote calls in the specification if RMI-IIOP falls optional? (I mean within the same JEE product; not necessarily between products of different vendors or to CORBA Orbs). Or will there at least be the requirement for JEE vendors that there has to be any (could even be vendor-specific) underlying protocol that enables transaction (and security) context propagation in remote calls?

A paragraph in the specification clarifying this would help (or maybe it's there and I haven't found it?).

Regards

-Jens

Join javaee-spec@javaee.groups.io to automatically receive all group messages.