Wichtig
Detail
Wichtig
Detail
#25612
Modell Editor zeigt bei Änderungen von Referenzen Verknüpfungsenden in der Attributtabelle an
#26382
Fehlermeldungen "Duplicate tag name..." beim Starten einer Anwendung in der IDE aus einem TL-Studio
#26402
Modell Editor: Diagramm: Fehler beim Ziehen einer Klasse aus einem anderen Modul ins eigene Arbeitsblatt
#26405
TTypeRewriter loggt Warnung "Unable to resolve items by external reference" auch unnötigerweise
#26431
Geänderte Oberklassenbeziehung führt erst nach Neustart zu geänderter Attributliste im Formulareditor
#26446
Generische Formulare: Sichtbarkeitsanpassungen überschriebener Attribute werden nicht berücksichtigt.
#26484
In-App Template für Grid und Tabellen: Funktion "Prüfer für Benutzung als Listenelement" bekommt Komponentenmodell nicht
#26536
Beim HTML-Rendern von TLScript-Expressions werden konfigurierte Renderer nicht berücksichtigt
#26569
Fehlende Constraint-Violation beim Löschen von Objekten die von Pflichtfeldern referenziert werden
#26663
TreeGridComponent: Selektion wird nach Verwerfen einer transienten Zeile nicht zurück gesetzt
#26797
Transaktion mit Nutzereingabe: Unsichtbare Eigenschaften des Formularmodells können nicht mit Werten belegt (initialisiert) werden
#26827
Keine Fehlermeldung beim Zugriff auf Fremdschlüsselreferenzen, wenn Fremdschlüssel nicht aufgelöst werden kann
#26884
Deklarative Formulare: Fehlendes GUI update bei programmatischen Änderungen eines List-wertigen Property
#26885
Constraints an deklarativen Formularen mit Argumenten aus einer Container-Referenz führen bei neuen Elementen zu Fehlern
#26890
Überschriebene Eigenschaften werden beim Booten aus Modelldefinition nicht richtig initialisiert
#26921
ClassCastException bei der Auswertung von Security-Regeln, die sich auf (Nicht-StructuredElement-)Singletons eines Moduls beziehen
#26922
Mit generierten Fachklassen erhält ein Default-Provider eines Attributs in einer Nicht-Struktur-Klasse keinen Create-Context
#26988
In-App-Dokumentations-Generator extrahiert keine Dokumentation für überschriebene Config-Properties
#27027
Deklarative Formulare: SelectField verschwindet nach Upload, wenn Optionsliste von mandatory Property abhängig ist
#27090
TreeTableComponent soll initial die erste sichtbare Zeile selektieren, wenn initial eine Zeile selektiert werden soll
Fehlerbehebung
Detail
#26520
Formularerstellung mit "Fremden Objekten" und individuellen Template schlägt fehl
Wenn ein Formular mit dem Formular-Editor erstellt wird und hier die Option "Fremde Objekte" benutzt wird, kann für die Darstellung der fremden Objekte wieder ein Formular konfiguriert werden.
Passiert dies kommt es zu einer NullPointerException:
Caused by: java.lang.NullPointerException at com.top_logic.element.layout.formeditor.FormEditorUtil.createAnotherMetaAttribute(FormEditorUtil.java:98) at com.top_logic.element.layout.formeditor.FormEditorUtil.addAnotherMetaAttribute(FormEditorUtil.java:157) at com.top_logic.element.layout.formeditor.implementation.FieldDefinitionTemplateProvider.createFormMember(FieldDefinitionTemplateProvider.java:391) at com.top_logic.element.layout.formeditor.implementation.FieldDefinitionTemplateProvider.addMember(FieldDefinitionTemplateProvider.java:339) at com.top_logic.element.layout.formeditor.implementation.FieldDefinitionTemplateProvider.createDisplayTemplate(FieldDefinitionTemplateProvider.java:140) at com.top_logic.model.form.implementation.AbstractFormElementProvider.createDesignTemplate(AbstractFormElementProvider.java:139) at com.top_logic.model.form.implementation.FormElementTemplateProvider.createTemplate(FormElementTemplateProvider.java:42) at com.top_logic.model.form.implementation.AbstractFormContainerProvider.createContentTemplate(AbstractFormContainerProvider.java:84) at com.top_logic.model.form.implementation.FormDefinitionTemplateProvider.createDesignTemplate(FormDefinitionTemplateProvider.java:63) at com.top_logic.element.layout.formeditor.FormEditorEditorControl.createTemplate(FormEditorEditorControl.java:312) at com.top_logic.element.layout.formeditor.FormEditorEditorControl.writeContent(FormEditorEditorControl.java:279) at com.top_logic.element.layout.formeditor.FormEditorEditorControl.internalWrite(FormEditorEditorControl.java:273) at com.top_logic.layout.basic.AbstractControlBase$ScopedRenderer.write(AbstractControlBase.java:1306) at com.top_logic.layout.basic.AbstractControlBase$ScopedRenderer.write(AbstractControlBase.java:1293) at com.top_logic.layout.basic.AbstractDisplayContext.renderScoped(AbstractDisplayContext.java:109) at com.top_logic.layout.basic.AbstractControlBase.write(AbstractControlBase.java:550)
Ursache
Da es im Design-Modus keine Objekte gibt, werden tl:FormField für tl:AttributeUpdate im Modus "create" erstellt. Da für die vermeintlich zu erstellenden Objekte des Basis-Typ's und des "fremden Typ", keine Identifier existieren wird versucht das selbe transiente Objekt zu benutzen, was fehlschlägt.
Lösung
Eine "Domain" bei der Erstellung des AttributeUpdate nutzen.
Test
- Formular-Editor öffnen für einen Typ X` != `Benutzerkonto öffnen.
- "Objekte" auswählen.
- Hier den Typ Benutzerkonto auswählen.
- Formular konfigurieren.
- Hier das Attribut "Benutzername" auswählen.
- Ein Attribut des Typs X hinzufügen.
- Erwartung: Es kommt zu keiner NullPointerException.