Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

RapidClipse bietet Ihnen die Möglichkeit ganze Views zu persistieren um diese bei Bedarf jederzeit wiederherstellen zu können, z.B. nach einem Anwendungs- oder Systemabsturz oder, 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 allows you to persist entire views to restore them at any time; e.g., after an application or system crash or to allow the user to locate his or her custom interface at each login. However, the entire interface is not saved automatically, only the UI components for which you set the following property: Properties > GUI Persistence > Persist 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 Strategie umsetzen können, z.B. 

Datenbank - Speichern der UI-Informationen bei den Benutzerdaten in der entsprechenden USER Tabelle. 

1 View persistieren - Um 1 View zu persistieren, müssen Sie nur 1 weiteres Datenfeld VIEW anlegen.

USER

...

. All parameters required for a later building of the GUI are automatically read out and combined into a single string, which you need to save. It is also possible to persist the values the user enters and the selections he or she makes by setting Properties > GUI Persistence > Persist > PersistValue. It is, however, for the user to decide how to save the generated string. You can implement any strategy that is aligned with your needs. Some examples are outlined below.

  • Database: Save the UI information on the user data in the respective USER table.

    • Persist 1 View: To persist one view, you only need to create one further VIEW data field.

      • USER

        Data fieldsData type
        USERNAMEString
        PASSWORDbyte[]
        ......
        VIEWNAMEString
        VIEWDATAString
    • 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 istPersist multiple views: To persist multiple views, you need another VIEWS table that is connected to the USER table using an n:1 relation
      • USER

        DatenfelderData fieldsDatentypData type
        USERNAMEString
        PASSWORDbyte[]
        ......
        VIEWS_IDInteger
      • VIEWS

        DatenfelderData fieldsDatentypData type
        IDInteger
        VIEWNAME
        String
        VIEWDATAString



  • 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 - Die GUI-Daten können als Cokie auf dem lokalen Rechner des Anwenders gespeichert werden.  
Examples:
  • String mit GUI-Daten generieren lassen: The GUI data can be globally saved during the session. As long as the session exists, the interface can be restored. 
  • Browser cookie: The GUI data can be saved as a cookie on the user's local computer.  
Examples:
  • Generate string with GUI data

    Code Block
    languagejava
    themeConfluence
    String viewData = GuiPersistence.save(this, this.getClass().getName());
    
    //TODO: Persisting viewData into Database 
  • GUI Daten einer View zuweisenAssign GUI data to a view 

    Code Block
    languagejava
    themeConfluence
    //TODO: Loading viewData from database first 
    
    GuiPersistence.load(this, this.getClass().getName(), viewData);
  • Store GUI -Daten global data globally in UI Session speichern

    Code Block
    languagejava
    themeConfluence
    UI.getCurrent().getSession().setAttribute("ProductView", viewData);
  • Retrieve GUI -Daten aus data from UI Session holen

    Code Block
    languagejava
    themeConfluence
    Object attribute = UI.getCurrent().getSession().getAttribute("ProductView");
    
    
    String viewData = attribute.toString();

Zur Go to GUI Persistence Javadoc