TopLogic - the automated application engine
  • Releases
  • Dokumentation
  • Github
  • Discord
  1. Home
  2. Releases
  3. TL_7.10.0
  4. #28678

7.10.0
TopLogic Release

2026-01-19

enhancement

critical
#25918
Graph-Binding 2.0
major
#25529
Weak model constraints
#27483
TLScript: Mathematical functions
#28083
Core theme: Better display/UX of TL script context help
#28336
Dynamic confirm messages
#28604
General display of the change history with undo option
#28648
TL-Script: Unzip
#28727
Tree-table selection logic
#28765
Image Upload Control
#28892
TL-Script: flatMap()-Function
#28893
TL-Script: indexBy() with value transformation
#28897
Instance export: export context for optional import
#28899
Tile views: Mixed views of object tiles with standard tiles
#28900
TL-Script: transpose()-function
#28901
TL-Script: count() with one argument
#28902
TL script: remove()
#28903
TL-Script: split() with limit
#28920
Layout editor: Pluggable generic commands
#28924
TL script: toJson()
#28927
TL-Script: excelFile()
#28931
Import/update role profiles at application startup
#28934
TL-Script: pdfFile()
#28947
Composition attributes: Create from copy
#28949
TL-Script: CSS class calculation for whole lines
minor
#27849
Property of type "Color" cannot be assigned a color value in TL-Script
#28305
Better default file names for generic Excel exports
#28633
XML import: Handler to add a translation to a property of type "Internationalized string"
#28643
TL-Script: Parse Base64 in Data-URL Format
#28652
XML import: Transient import with post-processing action
#28729
Layout editor: Show button line in every layout
#28742
Display (local) dialogs without changing view
#28743
Layout editor: Show and hide toolbars in all components
#28745
Drag from tree tables should also return collapsed nodes
#28762
Introduction of Renovate Bot to automatically update external dependencies.
#28874
Automatically activate ExternalAuthentication when using tl-security-auth-pac4j
#28875
Recalculation of options for selection fields
#28879
Offer TL script methods via Reflection
#28880
Add TLScript "try" function for exception handling
#28886
Instance export: Do not "automatically" export non-compositions
#28906
Tile preview image from binary/image attribute
#28913
Application tests: Context-local object identification
#28915
Update GWT to version 2.12
#28918
Enum protocol names via @name annotation
#28930
Mark calculated columns as "multiple" and "mandatory"
#28937
Command release service: Check for collections and delegation to other models
#28951
Commands for changing a selection in a tree table
#28963
Drag & drop across window boundaries
#28965
Specify file extension for XML import commands
#28970
HTML as value for a "Structured text" attribute
#28974
XML import: Context for ID resolution
#28983
Output error during backward navigation via non-navigable attributes
#28986
Enable servlets with async support
#28999
Scheduler: Execution every x days instead of every day
#29001
Hide undone changes in "My last changes"
#29016
Display dialogs in the window in which you are currently working
#29019
Remove legacy bus system
nice-to-have
#28987
StreamUtilities.readStreamContents() Utility also for BinaryDataSource
#29043
Heartbeat logging for revison migration
#29045
Consolidate Git ignores (application template, message backups, settings)
#29046
Introspection for TL script functions

defect

major
#27746
Context help for TL script partially cut off and not or only poorly scrollable
#28047
Error Icon next to the TextInput is positioned incorrectly
minor
#27707
Table does not update after moving rows by pressing a button
#28265
Update pdf.js to 4.9.155 due to CVE reports
#28678
MACHINE_IP column too short in USER_SESSION (for IPv6)
#28693
Questionable clipboard commands are displayed by default on all grid components
#28919
Transient objects can provide references to deleted objects
#28945
Error when displaying the change history if reference was deleted
#28950
TL-Script: toSet() changes the order of the elements
#28954
Column "Administrator" of user accounts cannot be filtered
#28955
Full text search for grid component potentially leads to a logged error
#28957
Client-side errors with GotoLinkControl
#28972
Flow diagram: Font-Size and Font-Family attributes for text have no effect.
#28973
Dialog "My last changes" may take a very long time to open
#28980
I18NRuntimeException is reported as "Internal error"
#28982
Table components can display unexpected objects
#28984
Workflow processes can no longer be completed
#28991
Flow diagram: Selection channel may only contain quantities if multiple selection is configured
#28992
SVG diagram with click handler can lead to errors
#28996
TL-Script: No internationalized number format in expressions in HTML templates
#28998
Flow diagram: Double-click and context menu handler
#29036
Translation error for resource files with country code
defect

minor

#28678

MACHINE_IP column too short in USER_SESSION (for IPv6)

e.g.:

[2025-06-15 08:09:26] [info] 2025-06-15T08:09:26,844 ERROR [http-nio-8080-exec-36]: com.top_logic.event.bus.Channel - Failed to send event 'com.top_logic.base.bus.UserEvent [user: 'Account(type:tl.accounts:Person, id: Person:4875, name: bhu)', type: loggedIn, machine: '0:0:0:0:0:0:0:1, X-Forwarded-For: 2a02:8071:4481:93e0:801c:9ab5:f32d:66a9']' to receiver 'class com.top_logic.knowledge.monitor.UserMonitor for class com.top_logic.event.bus.Service [namespace: changes, name: user]'. [2025-06-15 08:09:26] [info] com.top_logic.knowledge.service.KnowledgeBaseException: Database operation failed. [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.service.db2.DefaultDBContext.commitTransaction(DefaultDBContext.java:861) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.service.db2.TransactionImpl.internalCommit(TransactionImpl.java:164) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.service.AbstractTransaction.commit(AbstractTransaction.java:73) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.monitor.UserMonitor.login(UserMonitor.java:209) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.monitor.UserMonitor.receive(UserMonitor.java:120) [2025-06-15 08:09:26] [info] #011at com.top_logic.event.bus.Channel$1.run(Channel.java:149) [2025-06-15 08:09:26] [info] #011at com.top_logic.event.bus.Channel$1.run(Channel.java:145) [2025-06-15 08:09:26] [info] #011at com.top_logic.basic.thread.ThreadContextManager.inInteractionInternal(ThreadContextManager.java:404) [2025-06-15 08:09:26] [info] #011at com.top_logic.basic.thread.ThreadContextManager.inSystemInteractionInternal(ThreadContextManager.java:446) [2025-06-15 08:09:26] [info] #011at com.top_logic.basic.thread.ThreadContextManager.inSystemInteraction(ThreadContextManager.java:438) [2025-06-15 08:09:26] [info] #011at com.top_logic.basic.thread.ThreadContext.inSystemContext(ThreadContext.java:157) [2025-06-15 08:09:26] [info] #011at com.top_logic.event.bus.Channel.send(Channel.java:145) [2025-06-15 08:09:26] [info] #011at com.top_logic.event.bus.Sender.send(Sender.java:77) [2025-06-15 08:09:26] [info] #011at com.top_logic.base.accesscontrol.SessionService.sendEvent(SessionService.java:561) [2025-06-15 08:09:26] [info] #011at com.top_logic.base.accesscontrol.SessionService.getNewSessionForUser(SessionService.java:413) [2025-06-15 08:09:26] [info] #011at com.top_logic.base.accesscontrol.SessionService.login(SessionService.java:365) [2025-06-15 08:09:26] [info] #011at com.top_logic.base.accesscontrol.SessionService.loginUser(SessionService.java:361) [2025-06-15 08:09:26] [info] #011at com.top_logic.base.accesscontrol.Login.login(Login.java:384) [2025-06-15 08:09:26] [info] #011at com.top_logic.base.accesscontrol.Login.login(Login.java:292) [2025-06-15 08:09:26] [info] #011at com.top_logic.base.accesscontrol.LoginPageServlet.checkRequest(LoginPageServlet.java:282) [2025-06-15 08:09:26] [info] #011at com.top_logic.base.accesscontrol.LoginPageServlet.doPost(LoginPageServlet.java:214) [2025-06-15 08:09:26] [info] #011at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:590) [2025-06-15 08:09:26] [info] #011at com.top_logic.util.NoContextServlet.doService(NoContextServlet.java:100) [2025-06-15 08:09:26] [info] #011at com.top_logic.util.NoContextServlet.executeInInteraction(NoContextServlet.java:49) [2025-06-15 08:09:26] [info] #011at com.top_logic.util.NoContextServlet.lambda$service$0(NoContextServlet.java:40) [2025-06-15 08:09:26] [info] #011at com.top_logic.util.TopLogicServlet.withSessionIdLogMark(TopLogicServlet.java:209) [2025-06-15 08:09:26] [info] #011at com.top_logic.util.NoContextServlet.service(NoContextServlet.java:39) [2025-06-15 08:09:26] [info] #011at jakarta.servlet.http.HttpServlet.service(HttpServlet.java:658) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:205) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) [2025-06-15 08:09:26] [info] #011at org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:51) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.gui.layout.HttpSecureHeaderFilter.doFilter(HttpSecureHeaderFilter.java:135) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:174) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:149) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:167) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:90) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:482) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:115) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:93) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:673) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:74) [2025-06-15 08:09:26] [info] #011at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:340) [2025-06-15 08:09:26] [info] #011at org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:391) [2025-06-15 08:09:26] [info] #011at org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:63) [2025-06-15 08:09:26] [info] #011at org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:896) [2025-06-15 08:09:26] [info] #011at org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1744) [2025-06-15 08:09:26] [info] #011at org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:52) [2025-06-15 08:09:26] [info] #011at org.apache.tomcat.util.threads.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1191) [2025-06-15 08:09:26] [info] #011at org.apache.tomcat.util.threads.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:659) [2025-06-15 08:09:26] [info] #011at org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61) [2025-06-15 08:09:26] [info] #011at java.base/java.lang.Thread.run(Thread.java:1583) [2025-06-15 08:09:26] [info] Caused by: java.sql.SQLException: Value too long for column "MACHINE_IP VARCHAR_IGNORECASE(64)": "'0:0:0:0:0:0:0:0:1, X-Forwarded-For: 2a02:8071:4481:93e0:801c:9ab5:f32d:66a9' (73)"; SQL statement: [2025-06-15 08:09:26] [info] INSERT INTO "USER_SESSION" ("BRANCH", "IDENTIFIER", "REV_MAX", "REV_MIN", "REV_CREATE", "PHYSICAL_RESOURCE", "NAME", "SESSION_ID", "MACHINE_IP", "SERVER", "LOGIN", "LOGOUT") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) [22001-224]: INSERT INTO "USER_SESSION" ("BRANCH", "IDENTIFIER", "REV_MAX", "REV_MIN", "REV_CREATE", "PHYSICAL_RESOURCE", "NAME", "SESSION_ID", "MACHINE_IP", "SERVER", "LOGIN", "LOGOUT") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) [2025-06-15 08:09:26] [info] #011at com.top_logic.basic.sql.SQLH.enhanceMessage(SQLH.java:594) [2025-06-15 08:09:26] [info] #011at com.top_logic.basic.db.sql.PrepStmtBasedCompiledStatement.enhanceMessage(PrepStmtBasedCompiledStatement.java:144) [2025-06-15 08:09:26] [info] #011at com.top_logic.basic.db.sql.PrepStmtBasedCompiledStatement$1.executeBatch(PrepStmtBasedCompiledStatement.java:131) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.service.db2.DefaultDBAccess.executeInsertBatch(DefaultDBAccess.java:403) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.service.db2.DefaultDBAccess.insertAll(DefaultDBAccess.java:371) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.service.db2.VersionedDBAccess.storeAll(VersionedDBAccess.java:505) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.service.db2.VersionedDBAccess.insertAll(VersionedDBAccess.java:489) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.service.db2.DefaultDBContext.commitNew(DefaultDBContext.java:537) [2025-06-15 08:09:26] [info] #011at com.top_logic.knowledge.service.db2.DefaultDBContext.commitTransaction(DefaultDBContext.java:790) [2025-06-15 08:09:26] [info] #011... 52 more [2025-06-15 08:09:26] [info] Caused by: org.h2.jdbc.JdbcBatchUpdateException: Value too long for column "MACHINE_IP VARCHAR_IGNORECASE(64)": "'0:0:0:0:0:0:0:0:1, X-Forwarded-For: 2a02:8071:4481:93e0:801c:9ab5:f32d:66a9' (73)"; SQL statement:
[2025-06-15 08:09:26] [info] INSERT INTO "USER_SESSION" ("BRANCH", "IDENTIFIER", "REV_MAX", "REV_MIN", "REV_CREATE", "PHYSICAL_RESOURCE", "NAME", "SESSION_ID", "MACHINE_IP", "SERVER", "LOGIN", "LOGOUT") VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?) [22001-224] [2025-06-15 08:09:26] [info] #011at org.h2.jdbc.JdbcPreparedStatement.executeBatch(JdbcPreparedStatement.java:1282) [2025-06-15 08:09:26] [info] #011at com.top_logic.basic.db.sql.AbstractStatementBatch.executeBatch(AbstractStatementBatch.java:46) [2025-06-15 08:09:26] [info] #011at com.top_logic.basic.db.sql.PrepStmtBasedCompiledStatement$1.executeBatch(PrepStmtBasedCompiledStatement.java:129) [2025-06-15 08:09:26] [info] #011... 58 more
  • Get Started
  • Github
  • Discord
  • Das Unternehmen hinter TopLogic
  • Softwareentwicklung heute
  • Kontakt

© Copyright – Business Operation Systems GmbH

  • top-logic.com
  • Nutzungsbedingungen
  • Impressum
  • Rechtlicher Hinweis
  • Datenschutz
  • DE
  • Login