Keycloak 在KeyClope中部署自定义EmailSender SPI会在运行时导致NullPointerException

Keycloak 在KeyClope中部署自定义EmailSender SPI会在运行时导致NullPointerException,keycloak,keycloak-services,Keycloak,Keycloak Services,我目前正在处理我们的自定义EmailSenderProvider SPI,我得到了一个NullPointerException,因为该提供程序在运行时未成功实例化并返回null。我们已经构建了一个自定义的联合提供者,它已经可以工作,并且位于同一个jar文件中。我遵循了文档,为EmailSender创建了Provider和ProviderFactory类,并在/META-INF/services文件夹中为Provider添加了一个新文件。部署模块时,可以在服务器信息页面上看到它 有人知道我该如何解

我目前正在处理我们的自定义EmailSenderProvider SPI,我得到了一个
NullPointerException
,因为该提供程序在运行时未成功实例化并返回null。我们已经构建了一个自定义的联合提供者,它已经可以工作,并且位于同一个jar文件中。我遵循了文档,为EmailSender创建了Provider和ProviderFactory类,并在/META-INF/services文件夹中为Provider添加了一个新文件。部署模块时,可以在服务器信息页面上看到它


有人知道我该如何解决这个问题或让它工作吗?

我终于找到了问题所在。可能是一个bug,但似乎要使它工作,提供者工厂的id仍然需要是“默认”

向我们展示您的代码。我无法展示项目的全部内容,但作为开始,我仅从KeyClope Github复制了DefaultEmailSenderProvider和DefaultEmailSenderProviderFactory的实现。我只是暂时更改了SPI的id。然后我部署了它来检查它是否工作,但遇到了这个问题。实际上,我添加了两个类CustomEmailSenderProvider和CustomEmailSenderProviderFactory,然后创建了文件org.keydape.email.EmailSenderProviderFactory,其中引用了CustomEmailSenderProviderFactory。