Jmix Course for Advanced Users
The most extensive Jmix training
1
Basic knowledge of Jmix or completion of the Jmix Course for Beginners
2
Possess solid knowledge of Java and Spring Boot
3
Understand relational databases and basic security concepts
Program (42 hours training)
1
Data processing advanced
14 hours
The course details the architecture and services of the Jmix data access layer.
Course 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
Additional Topics:
- Data change audit
- Dynamic attributes
2
UI advanced
13 hours
This course focuses on developing an administrative user interface: from placing elements on views to creating custom visual components.
Course program:
- Views in Jmix
- Opening Views – ViewNavigators 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
Optional section:
- Creating views programmatically
3
Access control subsystem
7 hours
This course examines in detail the architecture and functionality of the security and access control subsystem of the Jmix framework.
Course program:
- 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
- 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)
4
Jmix application deployment
4 hours
This course covers various ways to deploy Jmix applications.
Course program:
- 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
After completing the advanced course,
developers will be able to:
Architect and build large-scale, distributed Jmix applications
Integrate Jmix applications with diverse external services and APIs
Confidently deploy, scale, monitor, and troubleshoot Jmix applications using industry best practices (Docker, Kubernetes, centralized logging)
Design robust solutions ready for production environments, including high availability and security measures
Implement modern authentication and advanced security schemes
This course is intended for developers seeking to leverage Jmix for complex, enterprise-grade solutions,
and who want to master deployment, integration, and architecture best practices.
and who want to master deployment, integration, and architecture best practices.
At the end of the course, students receive a certificate of
completion
and a badge that
can be
shared on social media.
