Skip to content

Releases: dynamiatools/framework

v5.4.12

28 Dec 14:00
32d4516

Choose a tag to compare

What's Changed

  • ZK Long Operations reimplemented using EventQueue and events by @marioserrano09 in #44
  • New Randoms utility class to generate randoms numbers, strings, dates and names
  • Null checking improvements
  • Documentation improvements
  • Upgrade to Spring Boot 3.5.9
  • Replace ObjectMapper references to JsonMapper or XmlMapper interfaces
  • Fix: JsonView form ViewDescriptor now support jackson JavaTime modules for LocalDate and LocalTime classes

Full Changelog: 5.4.11...5.4.12

v5.4.11

04 Dec 11:37
adfb8bf

Choose a tag to compare

What's Changed

Full Changelog: 5.4.10...5.4.11

v5.4.10

03 Dec 19:41
cd5e14b

Choose a tag to compare

What's Changed

  • Improve WebSocket handler utility class by @marioserrano09 in #41
  • Support to send websocket heartbeats from server
  • New broadcastHeartbeats()

Full Changelog: 5.4.9...5.4.10

v5.4.9

03 Dec 01:37
119f0dc

Choose a tag to compare

What's Changed

  • Disable ZK websocket config auto configuration by @marioserrano09 in #40
  • Websocket support is now configured extending ZKWebSocketConfigurer class to allow custom handlers, and handshakers.

Full Changelog: 5.4.8...5.4.9

v5.4.8

01 Dec 19:55
5dfe527

Choose a tag to compare

What's Changed

  • Improve WebSocketPushSender with checkDesktop() to validate ws session and auto reconnect by @marioserrano09 in #39

Full Changelog: 5.4.7...5.4.8

v5.4.7

01 Dec 00:35
5287797

Choose a tag to compare

What's Changed

🧵 SchedulerUtil powered by VirtualThreads

  • Now uses Java Virtual Threads for all async processing.
  • No longer depends on Spring for async execution (except Cron-based jobs).

🔄 Automatic Context Propagation

  • Async operations automatically pass variables and objects using ThreadLocalObjectContainer.

🌱 Spring Boot Upgrade

  • Updated core dependencies to Spring Boot 3.5.8 for enhanced performance, security and support.

🌐 Built-in WebSocket Integration for ZK

  • A new WebSocket connection implementation is now used automatically in apps running ZK.
  • Using WebSocketPushSender, you can request the client to execute a ZK Global command remotely, with support for sending parameters.
  • Improved utilities for working with ZK EventQueue.

📣 Advanced Messaging API

  • MessageService now supports subscriptions to channels and topics for real-time event processing.
  • SimpleMessageService also supports programmatic subscriptions, eliminating the need for annotated listener classes (@MessageListener). Listeners can be registered flexibly in code.

📨 Message Event Export

  • Introduced MessageEventTransport class for easy export of MessageEvent data—
    making it simple to serialize, send (e.g. JSON, distributed systems), and rehydrate events externally.

🌍 Modern HTTP Client

  • HttpRestClient now uses the new Spring RestClient implementation internally, replacing the older RestTemplate for RESTful calls.

Full Changelog: 5.4.6...5.4.7

v5.4.6

23 Oct 01:12
d805d8d

Choose a tag to compare

What's Changed

🆕 Added

  • 🧩 ETagVersionedResource — new class to handle versioned/static resources (originally added as FileNameVersionedResource).
    Commits: 965f93c, 84078cf
  • ⏱️ Support for java.sql.Time in DateTimeUtils. (687c82c)
  • 🧠 Utility class for lambda expressions and functional interfaces. (45c5840)
  • 🧰 Added dependency for tools.dynamia.actions. (55c53ce)
  • 🖼️ View resolvers for HTML and ZUL templates under /WEB-INF/views and related locations. (ad0c9e3)
  • 🔎 Methods to load actions by ID and by reference. (4f47112)
  • ❗ JSON error handling in GlobalExceptionController (improves API error responses). (a03a2e1)
  • 📝 FormViewAction and action rendering support in FormViewRenderer. (1771e10)
  • ✨ CallZKGlobalCommandViewAction — execute global ZK commands from view actions. (56bf28c)
  • 🌐 SendHttpRequestViewAction — perform HTTP requests within view actions. (1c1afee)
  • 📦 ClassPathView and ClassPathViewResolver — render classpath resources. (e309601)
  • 🪄 VelocityClassPathView — render classpath resources using Velocity. (be32e0a)

♻️ Changed / Renamed

  • 🔁 Rename ActionRef → ActionReference and update all related attributes/usages.
    Commits: c0d983a, 42587e3, b47948d, fd7a926
  • 🏷️ Rename FileNameVersionedResource → ETagVersionedResource. (84078cf)
  • 🔼 Bumped project version to 5.4.6 across all modules (pom.xml). (8cd51ad)

🛠️ Refactored / Internal Improvements

  • 🧩 Refactor ApplicationTemplateResourceHandler to use constants for resource handling. (c3dca80)
  • 🏗️ Refactor MVC configuration and view resolver setup; improve dependency configuration. (2332ddf)
  • 🎭 Refactor action handling to use ViewAction and attribute-based handling. (c87f2f8)
  • 📚 YamlViewDescriptorReader refactored to use ActionReference and improved reading logic. (fd7a926)
  • 🔁 Replace remaining ActionRef usages with ActionReference across descriptor classes. (b47948d)
  • 🧭 Refactor view resolver configuration to use ClassPathViewResolver. (refactor view resolver configuration to use ClassPathViewResolver)

✨ Enhancements

  • 🔤 Add methods for string attribute retrieval and better action configuration support. (b460984)
  • 🔐 Update allowAccess logic and add AlwaysAllowedAction interface for always-allowed actions. (1c99793)
  • 📦 Update dependencies and plugin versions in pom.xml. (f8d5027)

Full Changelog: 5.4.5...5.4.6

v5.4.5

08 Sep 16:31
bb5eefc

Choose a tag to compare

What's Changed

  • handle validation errors in CrudController, enhance EntityFiltersPanel with date and time customizations, and adjust ViewDataAction position (4c299a3c)
  • Merge pull request #36 from dynamiatools/5.4.x: handle validation errors in CrudController, enhance EntityFiltersPanel... (bb5eefc2)
  • Improve documentations and small bug fixes (abd9020c1)
  • Merge remote-tracking branch 'origin/main' into 5.4.x (91db18de)
  • add unit test for Module builder with PageGroup and multiple Pages (dfa04149)
  • add copilot instructions for Dynamia Tools framework, detailing project structure, coding guidelines, documentation standards, and getting started steps (017db5a7)
  • enhance VirtualFile and ValueWrapper classes with additional methods and improved documentation (d31d0fec)
  • refactor view-related interfaces to improve documentation and clarify method purposes (e799bc9e)
  • enhance documentation for file-related classes; add usage examples and method descriptions (06c7d5d3)
  • refactor navigation interfaces to enhance documentation and clarify usage; improve method descriptions and add usage examples (257475c3)
  • enhance documentation for navigation components; add detailed Javadoc comments to interfaces and classes (2120f00d)
  • add README.md for DynamiaTools Starter with overview, features, and usage instructions (501518e5)
  • add ListResponse class for standardized list responses with success, error, and not found handling (114c9613)
  • refactor documentation in various utility classes to enhance clarity and consistency (84281900)
  • refactor utility classes to enhance documentation and improve method descriptions (6622e4d8)
  • enhance ApplicationMetadataController and CommonController with detailed Javadoc comments; improve method descriptions (3da6449c)
  • refactor metadata classes to enhance documentation and structure; improve clarity of properties and methods (4f2e326f)
  • add release and deploy badge to README (85feefbd)
  • enhance action framework with detailed Javadoc comments for clarity and usability (acf7c3f2)
  • bump version to 5.4.5 across all modules in pom.xml (281b70de)
  • refactor color definitions in CSS to use hex values for improved readability and consistency (4a1b16b0)
  • update dark hover background color in variables.css for improved UI consistency (bd01d351)

Full Changelog: 5.4.4...5.4.5

v5.4.4

05 Sep 15:31
c134635

Choose a tag to compare

What's Changed

  • CrudService, QueryBuilder, Dates and Formatters improvements, by @marioserrano09 in #33
  • Expanded and improved the Formatters class to support formatting of LocalDate, LocalTime, LocalDateTime, and * TemporalAccessor with custom patterns, locales, and time zones, as well as adding null checks to return empty strings for null inputs.
  • Updated JavaDoc comments and method signatures in Formatters for clarity and completeness.
  • Testing improvements: Added a new test class FormattersTest with comprehensive unit tests covering all formatting methods and edge cases (including null handling).

Full Changelog: 5.4.3...5.4.4

v5.4.3

05 Sep 14:18
b75d3ce

Choose a tag to compare

What's Changed

Improvements

  • Added showLabel option to NewAction for improved UI visibility.
  • Added showCustomQuestion method to MessageDisplayer and implemented it in MessageDialog.
  • Added FieldRestriction interface and FieldRestrictions utility class for field access control.
  • Added support for nested query parameters in QueryParameters class.
  • Added having clause support to QueryBuilder for enhanced query capabilities.
  • Added executeProjection method with QueryBuilder support and new test for grouping entities.
  • Added type and size fields to DummyEntity with corresponding getters and setters.
  • Added test for LocalDate field customization in DefaultFieldCustomizer.
  • Added method to remove fields matching a given filter from ViewDescriptor.
  • Added static methods to create ViewDescriptorBuilder from existing ViewDescriptor.
  • Added getters and setters for box and button Sclass in DecimalboxCalculator.

Changed

  • Refactored color definitions in CSS to use hex values for improved readability and consistency.
  • Updated dark hover background color in variables.css for improved UI consistency.
  • Refactored action types in CancelAction, SaveAndEditAction, and SaveAndNewAction for consistency.
  • Refactored color variables and updated styles for consistency across CSS files.
  • Enhanced CrudController delete confirmation dialog with custom title and labels.
  • Refactored CrudController to use ClassMessages for user feedback and improved message localization.
  • Updated README to reflect upgrade to Java 21 in v5.x version.
  • Bumped versions to 5.4.3 for all DynamiaTools modules.
  • Refactored view rendering logic to utilize ViewRendererUtil for filtering renderable fields.
  • Refactored DefaultFieldCustomizer to simplify component class check.
  • Refactored EntityFiltersPanel to enhance field filtering logic and improve component instantiation.
  • Updated findViewDescriptor and getViewDescriptor methods to clarify return behavior in Javadoc.
  • Refactored TableViewRowRenderer to improve field component instantiation logic.

Fixed

  • Added null checks for Date and TemporalAccessor parameters in DateTimeUtils.

Other

  • Enhanced FastAction class with additional constructors and fluent setters.
  • Added test for having clause in QueryBuilder.

Full Changelog: 5.4.2...5.4.3