I’m trying to send a custom email like this
EmailTemplateProvider emailProvider = context.getSession().getProvider(EmailTemplateProvider.class);
emailProvider.send(subject, emailTemplate, new HashMap<>());
But this breaks with the next exception
org.keycloak.email.EmailException: Failed to template email
at org.keycloak.keycloak-services@15.0.2//org.keycloak.email.freemarker.FreeMarkerEmailTemplateProvider.processTemplate(FreeMarkerEmailTemplateProvider.java:233)
at org.keycloak.keycloak-services@15.0.2//org.keycloak.email.freemarker.FreeMarkerEmailTemplateProvider.send(FreeMarkerEmailTemplateProvider.java:244)
...
Caused by: java.lang.NullPointerException
at org.keycloak.keycloak-services@15.0.2//org.keycloak.email.freemarker.FreeMarkerEmailTemplateProvider.processTemplate(FreeMarkerEmailTemplateProvider.java:212)
The said line (212
in processTemplate
method) is
rb.putAll(realm.getRealmLocalizationTextsByLocale(locale.toLanguageTag()));
it’s not really clear from the exception why this actually happens
Do I need to configure the provider manually with the realm, locale etc.?