Siirry pääsisältöön

Setup and Configuration

Avaa ChatGPT:ssä

Webswingin integrointi webforJ:n kanssa sisältää kaksi komponenttia: Webswing-palvelimen, joka isännöi Swing-sovellustasi, ja WebswingConnector-komponentin webforJ-sovelluksessa, joka upottaa sen.

Ehdot

Ennen kuin aloitat, varmista, että sinulla on seuraavat vaatimukset:

  • Java-työpöytäsovellus: Swing, JavaFX tai SWT -sovellus pakattuna JAR-tiedostoksi
  • Webswing-palvelin: lataa sivustolta webswing.org
  • webforJ versio 25.10 tai uudempi: vaaditaan WebswingConnector-tuennan vuoksi

Arkkitehtuurin yleiskatsaus

Integrointiarkkitehtuuri koostuu:

  1. Webswing-palvelin: suorittaa Swing-sovellustasi, tallentaa GUI:n renderointia ja käsittelee käyttäjäsyötteitä
  2. webforJ-sovellus: isännöi verkkosovellustasi upotetun WebswingConnectorin kanssa
  3. Selaimen asiakas: näyttää sekä webforJ-käyttöliittymän että upotetun Swing-sovelluksen
Porttikonfigurointi

Webswingin ja webforJ:n on toimittava eri porteissa konfliktien välttämiseksi. Sekä webforJ että Webswing toimivat tyypillisesti portissa 8080. sinun tulee muuttaa joko Webswingin porttia tai webforJ:n porttia.

Webswing-palvelimen asetukset

Asennus ja käynnistys

  1. Lataa Webswing viralliselta verkkosivustolta
  2. Purettava arkisto haluamaasi sijaintiin (esim. /opt/webswing tai C:\webswing)
  3. Käynnistä palvelin käyttöjärjestelmälähtöisillä skripteillä:
webswing.sh
  1. Varmista, että palvelin on käynnissä siirtymällä osoitteeseen http://localhost:8080

Sovelluksen konfigurointi

Kun palvelin on käynnissä, siirry admin-konsoliin osoitteessa http://localhost:8080/admin lisätäksesi ja konfiguroidaksesi Swing-sovelluksesi.

Admin-konsolissa konfiguroi:

  • Sovelluksen nimi: tulee osaksi URL-polku, (esim. myapphttp://localhost:8080/myapp/)
  • Pääluokka: Swing-sovelluksesi sisäänkäyntipiste
  • Classpath: polku sovelluksesi JARiin ja riippuvuuksiin
  • JVM-parametrit: muistiasetukset, järjestelmäominaisuudet ja muut JVM-vaihtoehdot
  • Kotihakemisto: työskentelyhakemisto sovellukselle

Konfiguroinnin jälkeen Swing-sovelluksesi on saatavilla osoitteessa http://localhost:8080/[app-name]/

CORS-konfigurointi

Kun upotat Webswingin webforJ-sovellukseen, joka toimii eri portissa tai domainissa, sinun on määritettävä Cross-Origin Resource Sharing (CORS) Webswingissä. Tämä mahdollistaa selaimen ladata Webswing-sisältöä webforJ-sivultasi.

Webswingin admin-konsolissa siirry sovelluksesi konfigurointiin ja aseta:

  • Sallitut alkuperät: Lisää webforJ-sovelluksesi alkuperä (esim. http://localhost:8090 tai * kehittämistä varten)

Tämä asetus vastaa Webswingin sovelluskonfiguraatiossa olevaa allowedCorsOrigins-vaihtoehtoa.

webforJ-integraatio

Kun Webswing-palvelimesi on käynnissä Swing-sovelluksesi kanssa konfiguroituna ja CORS aktivoituna, voit integroida sen webforJ-sovellukseesi.

Lisää riippuvuus

Lisää Webswing-integraatiomoduuli webforJ-projektiisi. Tämä tarjoaa WebswingConnector-komponentin ja siihen liittyvät luokat.

<dependency>
<groupId>com.webforj</groupId>
<artifactId>webforj-webswing</artifactId>
</dependency>

Perusimplementaatio

Luo näkymä, joka upottaa Swing-sovelluksesi WebswingConnectorin avulla:

SwingAppView.java
package com.example.views;

import com.webforj.annotation.Route;
import com.webforj.component.Composite;
import com.webforj.component.html.elements.Div;
import com.webforj.component.webswing.WebswingConnector;

@Route
public class SwingAppView extends Composite<Div> {
private WebswingConnector connector;

public SwingAppView() {
// Alusta yhdistin Webswing-sovelluksesi URL-osoitteella
connector = new WebswingConnector("http://localhost:8080/myapp/");

// Aseta näyttömitat
connector.setSize("100%", "600px");

// Lisää näkymän konttiin
getBoundComponent().add(connector);
}
}

Yhdistin luo automaattisesti yhteyden Webswing-palvelimeen, kun se lisätään DOM:iin. Swing-sovelluksen käyttöliittymä renderöidään sitten yhdistin-komponenttiin.

Konfigurointivaihtoehdot

WebswingOptions-luokka mahdollistaa yhdistimen käyttäytymisen räätälöimisen. Oletuksena yhdistin käynnistyy automaattisesti luotaessa ja käyttää vakioyhteysasetuksia. Voit muuttaa tätä käyttäytymistä luomalla WebswingOptions-instanssin ja soveltamalla sitä yhdistimeen.

Esimerkiksi voidaksesi piilottaa kirjautumispainikkeen tuotantoympäristössä, jossa hallitset todennusta webforJ-sovelluksesi kautta:

WebswingConnector connector = new WebswingConnector("http://localhost:8080/myapp/");

WebswingOptions options = new WebswingOptions()
.setDisableLogout(true); // Piilota kirjautumispainike

connector.setOptions(options);

Tai jos tarvitset manuaalista hallintaa siitä, milloin yhteys käynnistyy:

// Luo yhdistin ilman automaattista käynnistystä
WebswingConnector connector = new WebswingConnector(url, false);

// Määritä ja käynnistä kun valmis
WebswingOptions options = new WebswingOptions();
connector.setOptions(options);
connector.start();

Asetukset kattavat yhteyden hallinnan, todennuksen, virheenkäsittelyn ja seurannan.