Lokaler Code
Mit „Lokaler Code“ lädt das echte System die Dateien einer UI5-App von deinem Dev-Server. Launchpad, Rollen, Daten, Plugins und UI5 selbst bleiben auf dem System – nur dein eigener Code kommt von localhost. Das gilt nur in diesem Tab, ein Banner in der Seite zeigt es an, und ein Klick schaltet zurück.
- Edition
- ab Pro
- Tab
- „Lokaler Code“
- Oberflächen
- DevTools-Panel und Side-Panel
- Ziele
- localhost, 127.0.0.1, [::1], *.localhost, bestätigte https-Dev-Hosts
- Auf PROD
- Einschalten gesperrt, Ausschalten immer möglich
Wozu „Lokaler Code“?
Manche Fehler zeigen sich nur im echten Launchpad: mit der echten Kachel, den echten Rollen, echten Daten und den Plugins des Systems. Bisher hieß das: bauen, deployen, Cache leeren, testen. Mit dem Tab Lokaler Code leitet FrontTailor die Anfragen nach den Dateien einer App auf deinen Dev-Server um (ui5 serve, fiori run oder die Vorschau im SAP Business Application Studio). Alles andere kommt weiter vom System. Geladen wird nur dein eigener Code; hochgeladen wird nichts.
Die Umleitung gilt nur im aktuellen Tab und endet, wenn du ausschaltest, den Tab schließt, den Browser neu startest oder die Extension aktualisiert wird. ab Pro
Der Tab hat drei Bereiche: Zuordnungen (welche App auf welchen Dev-Server geht), Neue Zuordnung und So funktioniert es mit einer Kurzanleitung. Hast du https-Dev-Hosts bestätigt, steht darunter Vertraute Dev-Hosts.
Eine Zuordnung anlegen
- Starte deinen Dev-Server, zum Beispiel
ui5 serve --port 8080oderfiori run. - Öffne die App auf dem System – im Launchpad: starte sie –, dann im Panel den Tab Lokaler Code.
- Unter Apps auf dieser Seite stehen die erkannten UI5-Apps. Klicke bei deiner App Übernehmen; App-ID und Pfad auf dem System sind dann ausgefüllt. Fehlt die App, klicke Erneut suchen.
- Trage unter URL des Dev-Servers die Adresse ein, unter der dein Server die
manifest.jsonder App liefert, etwahttp://localhost:8080/. - Klicke Zuordnung speichern.

- Übernehmen füllt App-ID (
sap.app.id) und Pfad auf dem System aus der erkannten App. Geöffnet markiert die App, die gerade läuft. - URL des Dev-Servers. Darunter steht sofort, ob das Ziel erlaubt ist – hier „Dein eigener Rechner: erlaubt.“
- Component-preload.js: Blockieren (Einzeldateien) ist der Standard und richtig für
ui5 serveundfiori run– UI5 lädt dann jede Datei einzeln von deinem Dev-Server. Vom Dev-Server nur, wenn dein Server selbst einen Preload baut (zum Beispiel aus einemdist-Ordner). - Bleibt auf dem System: Diese Pfade leitet FrontTailor nie um, darunter
resources/,test-resources/,sap-ui-cachebuster-info.jsonund die Backend-Services aus dem Manifest der App. - Zuordnung speichern legt die Zuordnung für dieses System ab. Eingeschaltet ist damit noch nichts.
Zuordnungen gelten je System (Host). Pro Host speichert FrontTailor bis zu 30 Zuordnungen, lokal im Browser. Mit Bearbeiten und Löschen änderst du sie später.
Den Dev-Server prüfen
Bevor du einschaltest, klicke bei der Zuordnung Prüfen. FrontTailor ruft dann – nur auf diesen Klick – die manifest.json unter der URL des Dev-Servers ab und vergleicht die App-ID.

- Prüfen fragt den Dev-Server nach der
manifest.json. - Das Ergebnis, hier „Dev-Server antwortet in … ms mit der manifest.json von ft.demo.freestyle.“ Andere Ergebnisse stehen unter Typische Probleme.
- Einschalten startet die Umleitung (siehe nächster Abschnitt).
Einschalten
- Klicke bei der Zuordnung Einschalten.
- Lies im Dialog, was passiert: welcher Pfad wohin geht, wie Component-preload.js behandelt wird und was auf dem System bleibt.
- Setze den Haken Ich möchte meinen lokalen Code in diesem Tab ausführen.
- Klicke Einschalten und neu laden. Die Seite lädt ohne Cache neu und holt die Dateien der App von deinem Dev-Server.

- Ohne diesen Haken bleibt der Button gesperrt.
- Einschalten und neu laden. Abbrechen lässt alles, wie es ist.
Hat FrontTailor noch keinen Zugriff auf das System, fragt der Browser beim Einschalten danach (siehe Zugriff auf eine Seite erlauben). Gebraucht wird der Zugriff auf den Ursprung der App-Dateien und den der Seite. Pro Tab ist immer nur eine Umleitung aktiv.
Woran du siehst, dass lokaler Code läuft
Solange die Umleitung aktiv ist, zeigt die Seite unten einen Banner Lokaler Code aktiv mit der Adresse des Dev-Servers und der App-ID. Er gehört zur Extension, nicht zur App, und erscheint nicht im Ausdruck.

Master.view.xml vom Dev-Server: Der Listentitel heißt jetzt „Produkte (lokal)“. Unten der Banner.Im Panel steht über den Zuordnungen ein Hinweis mit derselben Information; die aktive Zuordnung trägt die Markierung Aktiv.

- Ausschalten beendet die Umleitung und lädt die deployte App.
- Die Markierung Aktiv an der Zuordnung, die gerade wirkt.
Ausschalten
Drei Wege führen zurück zur deployten App:
- Ausschalten im Banner in der Seite,
- Ausschalten im Panel,
- der Befehl Lokalen Code ausschalten (<Ziel>) in der Befehlspalette – er erscheint nur, solange eine Umleitung aktiv ist.
Ausschalten funktioniert immer: auch auf PROD, auch wenn die Lizenz abgelaufen ist und auch, wenn dein Administrator das Modul per Richtlinie abgeschaltet hat. Schließt du den Tab, endet die Umleitung ebenfalls.
Erlaubte Ziele und vertraute Dev-Hosts
| Ziel | Erlaubt? |
|---|---|
localhost, 127.0.0.1, [::1], *.localhost – jeder Port, http oder https | Ja, ohne Rückfrage. |
| Ein anderer Host über https, zum Beispiel die Vorschau im SAP Business Application Studio | Erst nach deiner Bestätigung: Beim Speichern fragt FrontTailor „Diesem Dev-Host vertrauen?“. Bekannte BAS-Hosts sind als solche gekennzeichnet, alle anderen mit einer Warnung. Bis zu 20 bestätigte Hosts; entfernen kannst du sie in Vertraute Dev-Hosts. |
| http zu einem anderen Host, andere Schemata, URLs mit Benutzer oder Passwort | Nein. |
FrontTailor führt den Code nicht selbst aus und lädt ihn nicht in die Extension: Der Browser holt die Dateien wie sonst auch, nur von einer anderen Adresse. Zugangsdaten speichert FrontTailor dabei nicht.
Gut zu wissen
- CORS: Der Dev-Server muss Cross-Origin-Anfragen erlauben.
ui5 serveundfiori runtun das. - Lokales Netzwerk: Chrome fragt eventuell einmal, ob das System auf Geräte im lokalen Netzwerk zugreifen darf. Erlaube es.
- Content Security Policy: Eine strenge CSP des Systems kann localhost sperren. Die App startet dann nicht; Ausschalten stellt sie wieder her.
- BAS: Die Vorschau verlangt eine Anmeldung. Öffne die Vorschau-URL einmal in diesem Browser und melde dich an.
- Service Worker der App: Hat die App einen eigenen Service Worker, kann er an der Umleitung vorbei aus seinem Cache liefern. Leere dann den Cache (siehe Werkzeuge).
- Eine Wurzel je Zuordnung: Eigene Bibliotheken, die die App von einem anderen Pfad lädt, brauchen eine eigene Zuordnung.
Typische Probleme
| Meldung | Ursache und Abhilfe |
|---|---|
| „Keine Antwort von …“ | Der Dev-Server läuft nicht auf diesem Port oder erlaubt keine Cross-Origin-Anfragen. |
| „… liefert 404“ | Die URL muss auf den Ordner mit der manifest.json zeigen – bei ui5 serve die Wurzel des Servers. |
| „… gehört zu … statt …“ | Der Server liefert eine andere App. Prüfe URL oder Zuordnung. |
| „… hat keine sap.app.id“ oder „… ist kein JSON“ | Die URL zeigt nicht auf den webapp-Ordner der App. |
| „… verlangt eine Anmeldung“ | Typisch für BAS: die Vorschau-URL einmal im Browser öffnen und anmelden. |
| „Ziel nicht erlaubt“ | Nur localhost oder ein bestätigter https-Dev-Host, siehe Erlaubte Ziele. |
| „Die URL des Dev-Servers liegt im Pfad auf dem System“ | Das ergäbe eine Schleife. Ziel und Pfad auf dem System müssen verschieden sein. |
| „FrontTailor hat noch keinen Zugriff auf dieses System“ | Erneut auf Einschalten klicken und den Zugriff erlauben. |
| „Noch keine UI5-App gefunden“ | Die App ist noch nicht gestartet. Im Launchpad die App öffnen und Erneut suchen klicken. |
| Die App startet nach dem Einschalten nicht | Oft eine strenge CSP oder fehlendes CORS. Ausschalten stellt die deployte App wieder her. |
Siehe auch
- Funktionen im Überblick Funktionen · Testen & melden
- Zum Nachlesen Git und SAP – Versionsverwaltung und Transporte (SAP PRESS)
- Zum Nachlesen SAPUI5 – The Comprehensive Guide (SAP PRESS)
- Hilfe von Menschen Fiori-, UI5- und CAP-Apps nach Maß
- Doku Werkzeuge
- Doku Host-Profile und PROD
- Doku Befehlspalette
- Belege ADR-0361