RapidClipse bietet Ihnen die Möglichkeit , den aktuellen Zustand einer grafischen Oberfläche ganze Views zu persistieren , um diese bei Bedarf jederzeit wiederherstellen zu können, z.B. nach einem AnwendugnsAnwendungs- oder Systemabsturz oder bei einem späteren Login. RapidClipse speichert , damit der Benutzer bei jedem Login seine individuell eingerichtete Oberfläche wieder vorfindet. Dabei wird jedoch nicht automatisch die gesamte Oberfläche gespeichert, sondern nur die UI-Komponenten bei denen Sie die Eigenschaft Properties > GUI Persistence > Persist gesetzt ist. Befinden sich in einer UI-Komponente die persistiert wird, weitere UI-Komponenten, werden diese automatisch mit persistiert, auch wenn bei diesen die Eigenschaft Persist nicht gesetzt ist. Falls Sie die gesamte Oberfläche oder einen große Teile persistieren möchten, genügt es die Eigenschaft Persist bei einem Layout oder direkt bei der View selbst zu seten. Die Persistierugns-Daten werden automatisch in einem String gespeichert. Wo Sie diesen setzen. Alle für einen späteren Aufbau der GUI notwendigen Parameter werden automatisch ausgelesen und zu einem einzigen String zusammengefasst, den Sie anschließend nur noch speichern müssen. Auch vom Anwender bereits eingegebene Werte und vorgenommene Selektierungen können durch Setzen von Properties > GUI Persistence > Persist > PersistValue mit persistiert werden. Wie Sie den generierten String speichern bleibt jedoch Ihnen überlassen, sodass Sie jede beliebige Strategien Strategie umsetzen können, z.B.
USER Tabelle in der Datenbank - Speichert die Speichern der UI-Informationen beim Benutzer bei den Benutzerdaten in der entsprechenden USER Tabelle in der Datenbank. Um mehrere Views abspeichern Tabelle.
1 View persistieren - Um 1 View zu persistieren, müssen Sie nur 1 weiteres Datenfeld VIEW anlegen.
USER
Datenfelder Datentyp USERNAME String PASSWORD byte[] ... ... VIEWNAME String VIEWDATA String
- Viele Views persistieren - Um mehrere Views persistieren zu können, benötigen Sie eine weitere
- Tabelle VIEWS, die über eine n:1
- Relation mit
- der USER
- Tabelle verknüpft ist.
USER
Datenfelder Datentyp USERNAME String PASSWORD byte[] ... ... VIEWS_ID Integer VIEWS
Datenfelder Datentyp ID Integer VIEWNAME String
VIEWDATA String
- UI Session - Die GUI-Daten können global bei der Session gespeichert werden. Solange die Session existiert, kann die Oberfläche wiederhergestellt werden.
- Browser Cookie - Speichert die UI-Informationen als Cookie Die GUI-Daten können als Cokie auf dem lokalen Rechner des Anwenders abgespeichert werden.
Examples:
GUI persistieren String mit GUI-Daten generieren lassen
Code Block language java theme Confluence String guiDataviewData = GuiPersistence.save(this, this.getClass().getName()); //TODO: Persisting guiDataviewData into Database
Persistente GUI Daten einer View zuweisen
Code Block language java theme Confluence //TODO: Loading guiDataviewData from database first GuiPersistence.load(this, this.getClass().getName(), guiData viewData);
GUI-Daten global in UI Session speichern
Code Block language java theme Confluence UI.getCurrent().getSession().setAttribute("ProductView", viewData);
GUI-Daten aus UI Session holen
Code Block language java theme Confluence Object attribute = UI.getCurrent().getSession().getAttribute("ProductView"); String viewData = attribute.toString();
...