【问题标题】:Test send email on WSO2 ESB在 WSO2 ESB 上测试发送电子邮件
【发布时间】:2020-10-02 23:06:16
【问题描述】:

我想从 esb 向某个电子邮件地址发送电子邮件。

为了做到这一点,我在axis2.xml文件中取消了对这行的注释:

<transportSender class="org.apache.axis2.transport.mail.MailTransportSender" name="mailto">
        <parameter name="mail.smtp.host">smtp.gmail.com</parameter>
        <parameter name="mail.smtp.port">587</parameter>
        <parameter name="mail.smtp.starttls.enable">true</parameter>
        <parameter name="mail.smtp.auth">true</parameter>
        <parameter name="mail.smtp.user">synapse.demo.0</parameter>
        <parameter name="mail.smtp.password">mymailpassword</parameter>
        <parameter name="mail.smtp.from">mymail@gmail.com</parameter>
    </transportSender>

<transportReceiver name="mailto" class="org.apache.axis2.transport.mail.MailTransportListener">
    </transportReceiver>

然后我将this 代理添加到 WSO2 ESB。

现在我想从 ESB 向anymail@gmail.com 发送一封电子邮件。

我正在考虑使用 SoapUI 来执行此操作,因此我创建了一个新的 SOAP 项目并将链接 https://localhost:9443/services/MailProxy?wsdl 用作 Initial WSDL

现在出现this,但现在我不知道应该输入什么代码才能发送电子邮件。谁能帮帮我?

【问题讨论】:

    标签: soap wsdl wso2 wso2esb esb


    【解决方案1】:

    您可以在代理服务配置的地址端点中定义收件人的邮件地址,如下所示。

    <send> 
    <endpoint> 
    <address uri="mailto:anymail@gmail.com"/> 
    </endpoint> 
    </send> 
    

    【讨论】:

    • 是的,我知道我能做到。当我将代码复制到 pastebin 时,我只是错误地发送了电子邮件。但我的困难是要在 ESB 中做什么才能发送实际的电子邮件。当我单击“测试此服务”然后单击“发送”时,它会出现“读取超时”错误。你能帮我解决这个问题吗?
    • 您能在(启用)axis2.xml 文件的 messageFormatter 部分中看到以下消息格式化程序吗? 根据提供的配置,如果您提供正确的邮件地址和密码,那么这应该可以工作,如果您选中“ anymail@gmail.com”邮件帐户,那么您应该会看到一封带有“attachment.csv”文件附件和“已接收文件”主题的邮件。此外,如果它不起作用,请在调用此功能后在 ESB 碳日志中发送错误日志代理服务。
    • 好吧,显然我输入了错误的电子邮件地址,这给了我一个错误。现在一切正常,但每次我尝试发送消息时,我都会在 gmail 发件人帐户上收到一条消息,说 Google 阻止了不符合安全模式的应用程序的登录尝试。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多