Enhancement
Critical
Major
Detail
Detail
#25907
Layout editor: inconsistent behavior of unfold state, selection and reaction to object creation
#25951
Application tests: CheckLabeledExecutabilityOp fails to assert non-executability of literal ResKey reasons.
#25952
Model Editor: Enum default provider does not work for enum references for which singleton link storage was explicitly selected
#26002
ConfigurationItem-valued properties with format annotations may cause an attempt to create abstract config items when deserializing null values
#26012
Help editor crashes when a user has chosen a language that is not in the supported languages of the application
#26039
Gridcomponent: Display of context menu for new (transient) row object leads to UnsupportedOperationException
#26085
An attribute of type tl.model.search:Expr is not displayed in the form above a TL script editor
#26111
Context menu commands for table rows are erroneously executed on the table model when opening the context menu in the background of the table
#26153
Migration: Replay fails if string values with line breaks are contained in the dataset where a line ends with a semicolon
#26171
A TL script expression entered in a wizard template is reformatted when transferred to the final template
#26223
TL script: Under unfavorable conditions wrong parameter values when evaluating local functions
Bugfix
Someone changed the theme. Then the server was restarted. Right after that the user wants to log in.
Problem
An exception occurs. The login fails:
Problem reading masterFrame.layout.xml java.io.IOException: No file found for layout rootLayout at com.top_logic.mig.html.layout.ComponentConfigurationBuilder.build(ComponentConfigurationBuilder.java:124) at com.top_logic.mig.html.layout.LayoutStorage.createLayoutInternal(LayoutStorage.java:636) at com.top_logic.mig.html.layout.LayoutStorage.createLayout(LayoutStorage.java:612) at com.top_logic.mig.html.layout.LayoutStorage.getOrCreateLayout(LayoutStorage.java:565) at com.top_logic.mig.html.layout.LayoutStorage.getOrCreateLayoutConfig(LayoutStorage.java:521) at com.top_logic.mig.html.layout.LayoutStorage.getOrCreateLayoutConfig(LayoutStorage.java:501) at com.top_logic.layout.internal.SubsessionHandler.lambda$0(SubsessionHandler.java:428) at com.top_logic.basic.config.DefaultInstantiationContext.deferredReferenceCheck(DefaultInstantiationContext.java:173) at com.top_logic.basic.config.InstantiationContextImpl.deferredReferenceCheck(InstantiationContextImpl.java:43) at com.top_logic.layout.internal.SubsessionHandler.finishLogin(SubsessionHandler.java:423) at com.top_logic.layout.internal.SubsessionHandler.deliverLocalContent(SubsessionHandler.java:145) at com.top_logic.layout.internal.WindowHandler.handleLocalContent(WindowHandler.java:109) at com.top_logic.layout.internal.WindowHandler.handleContent(WindowHandler.java:87) at com.top_logic.layout.internal.WindowRegistry.dispatch(WindowRegistry.java:139) at com.top_logic.layout.ContentHandlersRegistry.dispatch(ContentHandlersRegistry.java:162) at com.top_logic.layout.ContentHandlersRegistry.dispatch(ContentHandlersRegistry.java:1) at com.top_logic.layout.internal.WindowRegistry.dispatch(WindowRegistry.java:91) at com.top_logic.layout.internal.WindowRegistry.handleContent(WindowRegistry.java:85) at com.top_logic.knowledge.gui.layout.TLLayoutServlet.doGet(TLLayoutServlet.java:80)
For each theme, the tl:LayoutStorage loads the appropriate layout. If the tl:TLLayout is not cached, it must be recreated. The cause of the error is when creating the layout for masterFrame.layout.xml. The masterFrame.layout.xml layout key is "normalized" to rootLayout. Understandably, the tl:LayoutResolver cannot resolve files for this key (they are stored for the masterFrame.layout.xml key) and throws the above error.
Test
Start application, reload theme, restart application and then reload theme again. No errors should be logged.