Hi everyone,
Java 26 has done something that's been a long time coming: JEP 504 removes the Applet API entirely from the JDK. It was marked for deprecation in Java 9, warned for removal in Java 17, and now in Java 26, it's actually gone.
I'm interested in a few practical questions.
1.Has anyone actually depended heavily on Applet in production?
I know some legacy systems (especially industrial control, internal banking tools, and educational platforms) still use Applet for:
- Local hardware access (card readers, printers)
- Native code interaction (via Applet's permission model)
- Or simply because the system is too critical or lacks maintenance resources to risk a change
Question: Do anyone still have systems running Applet? If so, what's the plan after Java 26?
- Stick with JDK 17 and never upgrade?
- Rewrite that functionality?
2.If really need to migrate, what's the standard approach?
Applet's core capabilities back in the day were essentially two things:
- Embedding Java GUI (Swing/AWT) in the browser
- High-privilege local operations (files, hardware, processes)
Official suggestion was:
Migrate to Java Web Start (JNLP) or switch completely to a standalone application with modern deployment.
But Web Start itself was removed after Java 11.
So the more realistic questions are:
- For pure GUI parts: rewrite as a local Swing/JavaFX app, communicating with the backend over HTTP.
- For local hardware access: split it into a local service + Java controlling it via JNI or process calls.
Question: Has anyone done such a migration in a real project? What pitfalls are there?