Zum Hauptinhalt springen

Visueller Editor für webforJ

Sieh dir die App an, die du mit Java erstellt hast. Ändern Sie es, während es läuft.

craftforJ läuft im Entwicklungsmodus innerhalb Ihrer App. Es zeigt den von Ihrem Code erstellten Komponentenbaum, lässt Sie Eigenschaften live ändern und schreibt die Änderungen, die Sie übernehmen, zurück in die Java-Datei, in der die Komponenten erstellt wurden.

Vier Tastenkombinationen decken die Schleife ab

  • Öffnen oder schließenAltShiftD
  • Komponente auswählenAltShiftC
  • Änderungen überprüfenCmd/CtrlS
  • Änderung rückgängig machenCmd/CtrlZ
craftforJ über einer laufenden App geöffnet, mit ausgewähltem AppNav im Komponentenbaum und dessen Eigenschaften in der Seitenleiste

So funktioniert es

Es liest deine App aus. über webforJ selbst

Deshalb beschreibt es die App mit den Begriffen, die Sie beim Schreiben verwendet haben. Der Baum listet Ihre Komponenten auf, die Eigenschaften sind die, die Ihre Komponenten deklarieren, und die Routen sind die, die Ihr Router registriert hat – mit den Zugriffsregeln, die Sie ihnen zugeordnet haben.

  1. 01

    Öffnen

    Klicken Sie in Ihrer App auf die Trigger-Schaltfläche oder drücken Sie an beliebiger Stelle Alt+Umschalt+D.

  2. 02

    Auswählen

    Drücken Sie Alt+Umschalt+C, bewegen Sie den Mauszeiger über eine Komponente und klicken Sie darauf. Der Baum markiert sie und die Seitenleiste zeigt ihre Eigenschaften an.

  3. 03

    Ändern

    Eigenschaft bearbeiten. Die laufende App wird sofort aktualisiert, Ihre Dateien bleiben unverändert.

  4. 04

    Behalten

    Änderung als Diff prüfen und auf die Java-Datei anwenden, mit der sie erstellt wurde.

Ein Rundgang durch die Panels

Die Bereiche, anhand einer echten App

Video
1 von 2

Der Komponentenbaum, den Ihr Java erstellt hat

Der Inspector zeigt deine Komponenten, nicht das vom Browser gerenderte Markup. Ein Composite wird als die von dir geschriebene Klasse angezeigt und enthält seine untergeordneten Elemente in der Reihenfolge, in der webforJ sie verwaltet.

  • Drücken Sie Alt+Umschalt+C und klicken Sie auf ein beliebiges Element auf der Seite, um es im Baum auszuwählen.
  • Ändern Sie eine Eigenschaft in der Seitenleiste – die laufende App wird sofort aktualisiert.
  • Komponente bis zur Java-Zeile zurückverfolgen, in der sie erstellt wurde.

Zurück zur Quelle

Es bearbeitet Java, keine Kopie davon

Nimm ein Formular mit den Schaltflächen „Speichern“ und „Abbrechen“. Wähle „Speichern“ aus, klicke im Baum mit der rechten Maustaste darauf und wähle „Aus Quelle entfernen“. Die Deklaration, das Theme, der Listener, seine Position im add()-Aufruf und der sonst nirgendwo verwendete ButtonTheme-Import werden entfernt. „Abbrechen“ bleibt erhalten.

Vorher

ContactFormView.java
import com.webforj.component.button.Button;
import com.webforj.component.button.ButtonTheme;
import com.webforj.component.layout.flexlayout.FlexLayout;

public class ContactFormView {
public ContactFormView(FlexLayout layout) {
layout.setSpacing("1em");
Button save = new Button("Save");
save.setTheme(ButtonTheme.PRIMARY);
save.onClick(event -> {
save.setEnabled(false);
});
Button cancel = new Button("Cancel");
layout.add(save, cancel);
}
}

Nach dem Entfernen aus der Quelle

ContactFormView.java
import com.webforj.component.button.Button;
import com.webforj.component.layout.flexlayout.FlexLayout;

public class ContactFormView {
public ContactFormView(FlexLayout layout) {
layout.setSpacing("1em");
Button cancel = new Button("Cancel");
layout.add(cancel);
}
}
  • Zwei Einstellungen, beide erforderlich

    craftforJ benötigt webforj.debug und webforj.devtools.craftforj.enabled. Keine der beiden Einstellungen bewirkt für sich allein etwas.

  • Standardmäßig lokaler Zugriff

    Solange du keinen anderen Rechner in hosts-allowed angibst, kann nur ein Browser auf dem Rechner, auf dem die App läuft, darauf zugreifen.

  • Keine zusätzliche HTTP-Angriffsfläche

    Es fügt keinen Endpunkt, kein Servlet und keinen Filter hinzu. Es nutzt die Verbindung, die Ihre App bereits hat.

  • Schreibt nur, was kompiliert.

    Eine Entfernung aus dem Quellcode wird nur vorgenommen, wenn das Ergebnis weiterhin kompiliert; Dateien werden niemals gelöscht.

Erste Schritte

Einschalten in drei Schritten

craftforJ wird mit webforJ ausgeliefert, sodass nichts separat heruntergeladen werden muss. In Projekten, die mit startforJ oder aus einem webforJ-Archetyp erstellt wurden, ist es bereits aktiviert. Starten Sie die App und fahren Sie direkt mit Schritt drei fort.

  1. 1

    Abhängigkeit hinzufügen

    Fügen Sie webforj-devtools zu Ihrem Projekt hinzu, falls es noch nicht vorhanden ist.

    pom.xml
    <dependency>
    <groupId>com.webforj</groupId>
    <artifactId>webforj-devtools</artifactId>
    <version>${webforj.version}</version>
    </dependency>
  2. 2

    Debug-Modus aktivieren und craftforJ

    Setzen Sie beide Eigenschaften in webforj.conf oder bei einem Spring-Projekt in application.properties. craftforJ funktioniert nur, wenn beide aktiviert sind.

    webforj.debug = true
    webforj.devtools.craftforj.enabled = true
  3. 3

    Neu starten, neu laden und öffnen

    Öffne die App auf dem Rechner, auf dem sie läuft. Über deiner App erscheint eine Trigger-Schaltfläche. Klicke darauf oder drücke AltShiftD an einer beliebigen Stelle in der App. Mit derselben Tastenkombination schließt du craftforJ wieder.

    craftforJ am rechten Rand einer App-Seite angedockt
    craftforJ wird standardmäßig über Ihrer App eingeblendet. Ziehen Sie es an einen Rand, um es dort anzudocken, oder verschieben Sie es für einen zweiten Monitor in ein eigenes Browserfenster oder einen eigenen Tab.