Thanks for the follow up, Jan.
Ed
| edburns@xxxxxxxxxxxxx | office: +1 954 727 1095
| Calendar Booking:
https://aka.ms/meetedburns
|
| Please don't feel obliged to read or reply to this e-mail outside
| of your normal working hours.
|
| Reply anonymously to this email: https://purl.oclc.org/NET/edburns/contact
From: jakartaee-platform-dev <jakartaee-platform-dev-bounces@xxxxxxxxxxx>
On Behalf Of Jan via jakartaee-platform-dev
Sent: Thursday, January 9, 2025 5:19
To: Ondro Mihályi <mihalyi@xxxxxxxxxxx>
Cc: Jan <jan@xxxxxxxxxxx>; jakartaee-platform developer discussions <jakartaee-platform-dev@xxxxxxxxxxx>
Subject: [EXTERNAL] Re: [jakartaee-platform-dev] [DISCUSS] Mark Application Client as deprecated in Jakarta EE 11 Platform Profile?
PortableRemoteObject.narrow
that are used. If those are NOT part of the appclient I see no problems from MY point of view not to remove appclient.
What Arjan says is true. There’s a difference between calling EJBs remotely and calling them from an appclient container.
Appclient is a proxy that pretends that the client runs in an appserver, injects EJBs and calls them locally. Then it intercepts the calls and forwards them to remote EJBs running on the server. This is not used often, and if it is, it
would still be possible to rewrite to use plain remote EJB calls.
Another things is that removing appclient from Jakarta EE doesn’t remove it from appservers. Most appservers that have will continue supporting it. It’s an old technology, no need to add new features, and old apps that use it will not need
new features nor will need to be migrated to an appserver that doesn’t support appclient (in most cases).
So, by removing appclient from Jakarta EE, there will still be appservers that can run apps that need it, and it’s also possible to migrate them to plain remote EJB calls.
As I understand it the appclient is what Swing uses to connect to the application server. I'm now mostly retired but I can refer to the last 20+ years of development in Java/JavaEE/JakartaEE.
My hunch is that quite a lot of people confuse "plain" remote JNDI access (using some client libs and InitialContext) with the application client container. All the Swing applications I ever saw in the same last 20+ years used remote JNDI
access to talk to a J2EE/Java EE server.
The actual application client container does uses this technology under the hood, but is a rather distinct thing itself.
_______________________________________________
jakartaee-platform-dev mailing list