Setup and Configuration
Die Integration von Webswing mit webforJ umfasst zwei Komponenten: den Webswing-Server, der Ihre Swing-App hostet, und die Komponente WebswingConnector in Ihrer webforJ-App, die sie einbettet.
Voraussetzungen
Bevor Sie beginnen, stellen Sie sicher, dass Sie die folgenden Voraussetzungen erfüllen:
- Java-Desktop-App: eine Swing-, JavaFX- oder SWT-App, die als JAR-Datei verpackt ist
- Webswing-Server: herunterladen von webswing.org
- webforJ-Version
25.10oder höher: erforderlich für die Unterstützung desWebswingConnector
Architekturübersicht
Die Integrationsarchitektur besteht aus:
- Webswing-Server: führt Ihre Swing-App aus, erfasst das GUI-Rendering und verarbeitet Benutzereingaben
- webforJ-Anwendung: hostet Ihre Web-App mit dem eingebetteten
WebswingConnector - Browser-Client: zeigt sowohl die webforJ-Benutzeroberfläche als auch die eingebettete Swing-App an
Webswing und webforJ müssen auf unterschiedlichen Ports ausgeführt werden, um Konflikte zu vermeiden. Sowohl webforJ als auch Webswing laufen typischerweise auf dem Port 8080. Sie sollten entweder den Webswing-Port oder den webforJ-Port ändern.
Einrichtung des Webswing-Servers
Installation und Start
- Laden Sie Webswing herunter von der offiziellen Website
- Entpacken Sie das Archiv an Ihren bevorzugten Speicherort (z.B.
/opt/webswingoderC:\webswing) - Starten Sie den Server mit den plattformspezifischen Skripten:
- Linux
- macOS
- Windows
webswing.sh
webswing.command
webswing.bat
- Überprüfen Sie, ob der Server läuft, indem Sie
http://localhost:8080aufrufen
Anwendungs-Konfiguration
Sobald der Server läuft, greifen Sie auf die Admin-Konsole unter http://localhost:8080/admin zu, um Ihre Swing-App hinzuzufügen und zu konfigurieren.
In der Admin-Konsole konfigurieren Sie:
- Anwendungsname: wird Teil des URL-Pfades (z.B.
myapp→http://localhost:8080/myapp/) - Hauptklasse: der Einstiegspunkt Ihrer Swing-App
- Classpath: Pfad zu Ihrer App-JAR und Abhängigkeiten
- JVM-Argumente: Speichereinstellungen, Systemeigenschaften und andere JVM-Optionen
- Home-Verzeichnis: Arbeitsverzeichnis für die App
Nach der Konfiguration ist Ihre Swing-App unter http://localhost:8080/[app-name]/ zugänglich.
CORS-Konfiguration
Wenn Sie Webswing in einer webforJ-App einbetten, die auf einem anderen Port oder einer anderen Domain läuft, müssen Sie Cross-Origin Resource Sharing (CORS) in Webswing konfigurieren. Dies ermöglicht es dem Browser, Webswing-Inhalte von Ihrer webforJ-Seite zu laden.
Navigieren Sie in der Webswing-Admin-Konsole zur Konfiguration Ihrer App und setzen Sie:
- Erlaubte Ursprünge: Fügen Sie den Ursprung Ihrer webforJ-App hinzu (z.B.
http://localhost:8090oder*für die Entwicklung)
Diese Einstellung entspricht der Option allowedCorsOrigins in der App-Konfiguration von Webswing.
webforJ-Integration
Sobald Ihr Webswing-Server mit Ihrer konfigurierten Swing-App läuft und CORS aktiviert ist, können Sie ihn in Ihre webforJ-App integrieren.
Abhängigkeit hinzufügen
Die Webswing-Integration hängt von dem Webswing-Integrationsmodul von webforJ ab, das die Komponente WebswingConnector und verwandte Klassen bereitstellt. Fügen Sie Folgendes zu Ihrer pom.xml-Datei hinzu:
<dependency>
<groupId>com.webforj</groupId>
<artifactId>webforj-webswing</artifactId>
<version>${webforj.version}</version>
</dependency>