04.03 - 01.04.2025
JMIX ONLINE COURSE
Advanced introduction to the Jmix platform for building business applications using Java or Kotlin. Discover a solution to your challenges and accelerate the development process.




WHY CHOOSE THIS COURSE
Ideal for

Junior developers
Junior developers will learn and be able to use (including for free) a tool to Construct full-stack web applications with Java and Jmix.

Experienced developers
Experienced developers will discover a comprehensive platform with
a wide range of useful functionalities: from creating simple Admin UI applications to large enterprise applications with complex data models, an integrated security subsystem, and available add-ons for popular business requests.


What the Java Developers Say
The information presented was very usefull, and variated, I am on a migration process of a system that was develop on a earlier version of jmix, so I'm going to have the chance tu apply them. The instructor was very professional, pretty sure of what he was explaining, couple of moments where the hot deploy did not help him, but nothing unexpected if you are used to work with jmix or cuba platform. I am very satisfied with the training, the material provided are going to be a very usefull reminder of how to code propertly.
Enrique Céspedes
Java Developer
Since I have been working with your product for some time, some of what was presented was familiar to me, but a large part was new. Dmitriy Vaschenko is a very good professional and sometimes he is funny, he relaxes the atmosphere very well. I liked that he used Jmix Studio to a minimum, this was useful for us. The course was a real marathon for both the master and the students, it really covered almost everything that is necessary for a developer.
Florin Tanaša
Engineering SpecialistMost of the information presented was highly relevant and practical, directly applicable to my work. The instructor was highly professional, knowledgeable, and engaging throughout the course. I am very satisfied with the training; it exceeded my expectations in many aspects. The course was excellent as it is. Adding more real-world examples or case studies could make it even better.
Atamert Çakır
Full Stack Java DeveloperAs a Java backend engineer, I found the JMIX training vital for bridging the gap between backend and UI development. The course’s practical approach and expert instruction boosted my confidence and skills, preparing me to build UIs and transition into a full-stack developer role. I highly recommend this training as a streamlined path to becoming a proficient full-stack engineer without diving into HTML, CSS, or JavaScript.
Jean-Claude Bucumi
Java backend developer.png?width=200&height=200&name=%D0%B8%D0%B7%D0%BE%D0%B1%D1%80%D0%B0%D0%B6%D0%B5%D0%BD%D0%B8%D0%B5%20(1).png)
I enjoyed this course and learned new things to apply immediately in practice. All the topics discussed were presented through practical examples, while the instructor implemented them in real-time, which is very instructive and adds a lot of genuine credibility to the Jmix platform. The instructor was highly skilled and professional and could answer all the questions regardless of their complexity. I'm very satisfied and would highly recommend this course to anyone looking to work with Jmix, both platform beginners and proficient users of prior versions of Jmix.
Mladen Bucan
Java developerThe course was interesting and amazing to follow with Dmitriy. For the instructor I will give him a mark of 1000/10 (he is professional, academic, humble, he has patience to answer all our questions). If you can, tell the Jmix tech team that they create a great tool well-architected and extensible.
El bachir NOUNI
Java DeveloperThe information provided was extremely helpful. I was very pleased with Dmitryi and the training session. I appreciated that he began incorporating short breaks, as it was initially challenging to maintain focus for three hours straight.
Jan Duda
Java developerWhat you will learn
• Use Jmix Studio to create an application data model and implement the role-based access control model for the application.
• Restrict access to both the entire application resources (screens, menu items, and entities) and individual instances of entities.
• Examine and use the available software interfaces, validation methods, data types, entity relationships.
• Use the EntityManager, apply entity traits, learn available JPQL extensions.
• Create a user interface that links to data in just a few clicks. Work with screen templates to style Jmix applications and correctly configure components using XML descriptors.
NEW PROGRAM
• Entity types in Jmix
• Jmix framework annotations for entities
• Data store. Supported databases
• Multiple data stores. Referencing entities from different data stores
• Traits: Versioned, Audit, HasUUID, SoftDelete
• Key-value entities
• Entity states
• Database versioning. Liquibase Tool
• Non-standard data types (JPA converters)
• Entity Manager service. Usage and transaction management
• Entity graph for data fetch
• DataManager and EntityManager services. Similarities and differences
• Data Security and DataManager
• Data and Query Cache. Cache customization
• JPA callbacks
• Entity lifecycle events
• Optimistic and pessimistic locks
● Roles - advanced topics
○ Scopes
○ Specific policies
● Data access restrictions
○ Application of restrictions
○ Overriding data access checks in business logic
● Anonymous access to the application UI
● Programmatic user management
○ Data model of users and roles
○ User creation
○ Role assignment
○ Implementing a scenario of user registration and activation
● Additional security features
○ System authentication
○ Authentication events
○ User substitution
● Accessing users in Jmix add-ons. UserDetails, UserRepository, UserManager
● External authentication services
○ Integration with LDAP and Active Directory
○ Integration with KeyCloak SSO
○ Login and registration via social networks (Google and GitHub)
● Preparing the application for deployment
○ Deployment checklist
● Execution profiles
● Types of artifacts for deployment
○ Fat Jar
○ War
○ Docker image
● Application runtime overview
○ Dedicated server
○ Container
● Application deployment options
● Ensuring fault tolerance
○ Application clustering
○ Database replication
● Application monitoring and diagnostics tools
• Views in Jmix
• Opening Views – ViewsNavigation and DialogWindows APIs
• Routing and Navigation
• Notifications and Dialogs
• Background tasks
• Facets – non-visual view components
• Views extensions and working with view template
• Event Bus – global events in Jmix
• Lazy loading in views
• Styling • Layout rules
• Creating Custom Action class
• Creating UI components





+ HOMEWORK WITH TRAINER FEEDBACK





FAQ
Duration
The duration of the course is 39 hours including your questions during the meetings. The timetable is 17:00 to 20:00 (UTC+2).
Format
The course is conducted remotely online. After every educational day you will get recordings of sessions, presentations, links to the GitHub repositories, and a certificate of completion of the course.
Requirements
Our course is designed for Java developers who have worked with the following technologies:
• Java and Spring framework
• JPA and JPQL
• IntelliJ IDEA
• Git
• Gradle
Cost
If you are interested, please send us the request form below and we will inform you about the cost of the online course.






Fast-track your learning Jmix and improve in the interested areas
REGISTRATION
If you are interested, please send us the request form below and we will inform you about the next course, its program and cost.