Webswing 25.10
Webswing ist eine Webserver-Technologie, die es ermöglicht, Java-Desktop-Anwendungen (Swing, JavaFX, SWT) in einem Webbrowser auszuführen, ohne dass Änderungen am ursprünglichen Quellcode erforderlich sind. Es rendert die Desktop-App auf dem Server und streamt die Benutzeroberfläche über das HTML5-Canvas, wobei alle Benutzerinteraktionen transparent gehandhabt werden.
Was Webswing löst
Viele Organisationen haben umfangreiche Investitionen in Java-Desktop-Anwendungen, die kritische Geschäftslogik enthalten, die über Jahre oder Jahrzehnte entwickelt wurde. Diese Anwendungen können oft nicht einfach neu geschrieben werden aufgrund von:
- Komplexer Fachlogik, deren Neuerstellung riskant wäre
- Integration mit desktop-spezifischen Bibliotheken oder Hardware
- Zeit- und Kosteneinschränkungen eines vollständigen Neuschreibens
- Notwendigkeit, die Funktionsparität mit bestehenden Funktionen aufrechtzuerhalten
Webswing ermöglicht es, diese Anwendungen webzugänglich zu machen, ohne Modifikationen, und bewahrt deren ursprüngliche Funktionalität und Erscheinung.
Integration mit webforJ
Die Webswing-Integration von webforJ bietet die Komponente WebswingConnector, die es ermöglicht, Webswing-gehostete Anwendungen direkt innerhalb Ihrer webforJ-App einzubetten. Dies schafft Möglichkeiten für:
Progressive Modernisierung
Anstatt einen vollständigen Neuschreibungsansatz zu wählen, können Sie:
- Beginnen Sie mit der Einbettung Ihrer bestehenden Swing-App über
WebswingConnector - Neue Funktionen in webforJ rund um die eingebettete App entwickeln
- Allmählich Swing-Komponenten durch webforJ-Äquivalente ersetzen
- Schließlich die Legacy-App vollständig ausmustern
Hybride Anwendungen
Kombinieren Sie moderne Web-Benutzeroberflächen, die mit webforJ erstellt wurden, mit spezialisierter Desktop-Funktionalität:
- Verwenden Sie webforJ für benutzerorientierte Schnittstellen, Dashboards und Berichte
- Nutzen Sie Swing für komplexe Visualisierungen oder spezialisierte Editoren
- Erhalten Sie ein einziges integriertes App-Erlebnis
Wie es funktioniert
Die Integration funktioniert durch drei Schichten:
- Webswing-Server: führt Ihre Java-Desktop-App aus, erfasst deren visuelle Ausgabe und verarbeitet Benutzereingaben
- WebswingConnector-Komponente: eine webforJ-Komponente, die den Webswing-Client einbettet und die Verbindung und Kommunikation mit dem Server verwaltet
- Kommunikationsprotokoll: bidirektionale Nachrichtenübertragung, die es Ihrer webforJ-App ermöglicht, Befehle an die Swing-App zu senden und Ereignisse zurück zu empfangen
Wenn ein Benutzer auf Ihre webforJ-App zugreift, stellt der WebswingConnector eine Verbindung zum Webswing-Server her. Der Server erstellt oder stellt eine Verbindung zu einer Anwendungsinstanz her und beginnt, den visuellen Status an den Browser zu streamen. Benutzerinteraktionen (Maus, Tastatur) werden erfasst und an den Server gesendet, wo sie auf der tatsächlichen Swing-App wiedergegeben werden.
Themen
📄️ Setup and Configuration
Die Integration von Webswing mit webforJ umfasst zwei Komponenten: den Webswing-Server, der Ihre Swing-Anwendung hostet, und die WebswingConnector-Komponente in Ihrer webforJ-Anwendung, die ihn einbettet.
📄️ Communication
Der WebswingConnector ermöglicht eine bidirektionale Kommunikation zwischen Ihrer webforJ-Anwendung und der eingebetteten Swing-Anwendung. Dies ermöglicht es Ihnen, Befehle an die Swing-Anwendung zu senden und Benachrichtigungen zu erhalten, wenn innerhalb dieser Ereignisse auftreten.
📄️ Modernization Tutorial
Dieses Tutorial zeigt, wie man eine bestehende Java Swing-App modernisiert, indem man sie mit webforJ unter Verwendung des WebswingConnector integriert. Sie lernen, wie man eine traditionelle Desktop-App webzugänglich macht und schrittweise moderne Webfunktionen wie webbasierte Dialoge und interaktive Formulare mit webforJ-Komponenten hinzufügt.