lowcoder-org / lowcoder

🔥 🔥 🔥 The Open Source Retool, Tooljet and Appsmith Alternative
https://www.lowcoder.cloud/
GNU Affero General Public License v3.0
817 stars 175 forks source link

[Bug]: Unable to create SMTP data source #1089

Open BurtonChia opened 1 month ago

BurtonChia commented 1 month ago

Is there an existing issue for this?

Current Behavior

I'm encountering this error when clicking the "Test Connection" button while registering a new SMTP data source:

2024-08-06 03:49:33.463 ERROR reactor.util.Loggers$Slf4JLogger#error:324    [plugin-executor-15]: Operator called default onErrorDropped 
reactor.core.Exceptions$ErrorCallbackNotImplemented: org.lowcoder.sdk.exception.PluginException: Sorry, failed to connect data source, error message: Cannot load interface jakarta.mail.util.StreamProvider as ServiceLoader.
Caused by: org.lowcoder.sdk.exception.PluginException: Sorry, failed to connect data source, error message: Cannot load interface jakarta.mail.util.StreamProvider as ServiceLoader.
        at org.lowcoder.sdk.plugin.common.DatasourceConnector.lambda$doCreateConnection$1(DatasourceConnector.java:90)
        Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException: 
Assembly trace from producer [reactor.core.publisher.MonoOnErrorResume] :
        reactor.core.publisher.Mono.onErrorMap
        org.lowcoder.sdk.plugin.common.DatasourceConnector.doCreateConnection(DatasourceConnector.java:86)
Error has been observed at the following site(s):
        *___Mono.onErrorMap ⇢ at org.lowcoder.sdk.plugin.common.DatasourceConnector.doCreateConnection(DatasourceConnector.java:86)
        |_       Mono.cache ⇢ at org.lowcoder.plugins.SmtpPlugin$SmtpEngine.testConnection(SmtpPlugin.java:118) (observed 2 times)
        |_         Mono.map ⇢ at org.lowcoder.plugins.SmtpPlugin$SmtpEngine.testConnection(SmtpPlugin.java:120)
        *___Mono.onErrorMap ⇢ at org.lowcoder.sdk.plugin.common.DatasourceConnector.doCreateConnection(DatasourceConnector.java:86)
        |_       Mono.cache ⇢ at org.lowcoder.plugins.SmtpPlugin$SmtpEngine.testConnection(SmtpPlugin.java:118) (observed 2 times)
        |_     Mono.flatMap ⇢ at org.lowcoder.plugins.SmtpPlugin$SmtpEngine.lambda$testConnection$4(SmtpPlugin.java:129)
        |_ Mono.subscribeOn ⇢ at org.lowcoder.plugins.SmtpPlugin$SmtpEngine.lambda$testConnection$4(SmtpPlugin.java:129)
Original Stack Trace:
                at org.lowcoder.sdk.plugin.common.DatasourceConnector.lambda$doCreateConnection$1(DatasourceConnector.java:90)
                at reactor.core.publisher.Mono.lambda$onErrorMap$27(Mono.java:3840)
                at reactor.core.publisher.Mono.lambda$onErrorResume$29(Mono.java:3930)
                at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:94)
                at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:106)
                at reactor.core.publisher.Operators.error(Operators.java:198)
                at reactor.core.publisher.MonoError.subscribe(MonoError.java:53)
                at reactor.core.publisher.Mono.subscribe(Mono.java:4568)
                at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:103)
                at reactor.core.publisher.SerializedSubscriber.onError(SerializedSubscriber.java:124)
                at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.onError(FluxTimeout.java:220)
                at reactor.core.publisher.FluxSubscribeOnCallable$CallableSubscribeOnSubscription.run(FluxSubscribeOnCallable.java:231)
                at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68)
                at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28)
                at io.micrometer.core.instrument.internal.TimedCallable.call(TimedCallable.java:51)
                at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
                at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
                at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
                at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
                at java.base/java.lang.Thread.run(Thread.java:840)

Expected Behavior

Test connection to specific SMTP server is successful

Steps to reproduce

  1. Go to Data Sources > New data source > SMTP
  2. Fill in the required details of the SMTP server
  3. Click Test connection

Environment

A multi-docker image deployment with Docker Compose.

Additional Information

No response

dragonpoo commented 2 days ago

Fixed