Last update: Edit


Release date: December 21st, 2017


Published REST Services

You can now publish REST services to expose your entities and microflows to other apps using the REST standard without the need of a Mendix Marketplace module. You can define the URL and the microflow that implements the operation and can pass the HTTP request, path parameters, and query parameters to it.

We also automatically create a file that conforms to the OpenAPI 2.0 specification (formerly known as the “swagger specification”) and a graphical representation of your service similar to the Swagger Petstore.

For more information, see Published REST Service.

Message Definitions

We introduced message definitions that define a structure based on entities from the domain model. They can be used as the source of import and export mappings to interpret or create JSON and XML messages. Message definitions are meant to complement the other sources for mappings (as in, XML schemas, web service definitions, and JSON structures), as those cannot be based on entities in the domain model.

Focus Manager

We replaced the implementation of the focus manager, which solves various bugs and inconsistencies when navigating through a page using the keyboard.

While it is not recommended to use a custom tab order (for reasons of accessibility and usability), specifying a tab index higher than zero on a widget will override the natural tab order in the same way as the tabindex attribute in HTML. This also means that it is no longer an error to use the same tab index value multiple times within the same page.

Within a data view, list view, data grid, or template grid, tab index values are local to that container. The tab index of the container itself will determine its position in the surrounding tab order.


  • We fixed an issue where special characters were not always displayed correctly in OData. (Ticket 58915)
  • We fixed an issue where XML schemas containing DTD segments failed to import. Instead, the DTD segments are now ignored. (Ticket 58805)
  • We now make sure the request body of REST call actions is cleared when the HTTP method is changed to GET or DELETE.
  • We fixed the error handling behavior in microflows that caused a runtime exception. (Ticket 58645)
  • We fixed the images of four building blocks of projects that were created with Atlas UI Beta.
  • We fixed the bug where opening forms with specialized objects did not work as expected. (Ticket 59151)
  • We fixed a typo in the conditional formatting configuration window in the Desktop Modeler. (Ticket 59234)
  • We fixed the documentation for the path argument in mx.data.get. The path argument consists of only the reference name, not Entity/Reference/Entity.
  • We fixed the bug that caused an XPath constraint starting with a whitespace to fail with an exception at runtime. (Ticket 58983)
  • We improved our logging infrastructure to be more resilient in dealing with input resulting in exceptions. Under these circumstances, logging could stop working. (Ticket 58928)
  • We added permission necessary for PostgreSQL JDBC Driver 42.1.4 to the JVM security policy. (Ticket 58952)
  • We fixed an issue in Mendix 7.8 and 7.9 that led to a crash during deployment if any text widget contained duplicated property names in its style.
  • Multi-select search fields were not responding to touch events on the iPhone and iPad. We fixed that for you. (Ticket 57386)
  • The canvas size of the page editor now respects the Windows scaling factor. (Ticket 50105)

Known Issues

  • In some situations, an object associated to another object cannot be committed during the execution of a before/after commit event, resulting in an error such as “Object of type ‘MyModule.MyEntity’ with guid ‘12345’ cannot be updated, as it does not exist anymore.” For example, consider two new objects A and B, wherein A (parent) is associated with B (child) and A has a before- or after-commit event. In this event, B will be changed and committed. If you then commit A, B will be marked as ‘autocommitting’. Because of this, committing B in the before- or after-commit event of A will fail, as it expects A to already exist in the database, which is not yet the case. (Tickets 59099, 59288)
  • List views are not cleared correctly when creating a building block or page template, because the list view templates are not removed. (Ticket 63507)
  • Users with non-administrative user roles with the permission to manage users are able to escalate their privileges. For more information on this vulnerability, see SSA-875726 Privilege Escalation Vulnerability in Mendix.
  • When the first widget in a modal pop-up window is the date picker input widget, you cannot select a date using the pop-up calendar. (Ticket 60311)