Mule 我不能用骡子发邮件

Mule 我不能用骡子发邮件,mule,Mule,当我试图执行我的多项目时,我收到了错误消息 “终结点格式不正确,无法分析”,这是终结点 代码如下: <smtp:outbound-endpoint host="smtp.gmail.com" user="mymail@gmail.com" password="mypass" to="destiny@gmail.com" from="my@gmail.com" responseTimeout="10000" doc:name="SMTP" port="587" subject="the

当我试图执行我的多项目时,我收到了错误消息

“终结点格式不正确,无法分析”,这是终结点

代码如下:

<smtp:outbound-endpoint host="smtp.gmail.com" user="mymail@gmail.com" password="mypass" 
to="destiny@gmail.com" from="my@gmail.com" responseTimeout="10000" 
doc:name="SMTP" port="587" subject="the subject"/>
这是完整的堆栈跟踪

    INFO  2015-03-26 22:26:00,479 [[domotica2].connector.smtp.mule.default.dispatcher.01] org.mule.transport.service.DefaultTransportServiceDescriptor: Loading default outbound transformer: org.mule.transport.email.transformers.ObjectToMimeMessage
INFO  2015-03-26 22:26:00,499 [[domotica2].connector.smtp.mule.default.dispatcher.01] org.mule.lifecycle.AbstractLifecycleManager: Initialising: 'connector.smtp.mule.default.dispatcher.2081412619'. Object is: SmtpMessageDispatcher
INFO  2015-03-26 22:26:00,912 [[domotica2].connector.smtp.mule.default.dispatcher.01] org.mule.lifecycle.AbstractLifecycleManager: Starting: 'connector.smtp.mule.default.dispatcher.2081412619'. Object is: SmtpMessageDispatcher
ERROR 2015-03-26 22:26:01,100 [[domotica2].connector.smtp.mule.default.dispatcher.01] org.mule.exception.DefaultMessagingExceptionStrategy: 
********************************************************************************
Message               : Failed to route event via endpoint: DefaultOutboundEndpoint{endpointUri=smtp://mymail:<password>@smtp.gmail.com, connector=SmtpConnector
{
  name=connector.smtp.mule.default
  lifecycle=start
  this=77c233af
  numberOfConcurrentTransactedReceivers=4
  createMultipleTransactedReceivers=true
  connected=true
  supportedProtocols=[smtp]
  serviceOverrides=<none>
}
,  name='endpoint.smtp.mymail.gmail.com.587', mep=ONE_WAY, properties={fromAddress=mymail@gmail.com, toAddresses=destiny@gmail.com, subject=SD}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000, endpointEncoding=UTF-8, disableTransportTransformer=false}. Message payload is of type: MimeMessage
Code                  : MULE_ERROR-42999
--------------------------------------------------------------------------------
Exception stack is:
1. 530 5.7.0 Must issue a STARTTLS command first. md2sm586901wic.19 - gsmtp
 (com.sun.mail.smtp.SMTPSendFailedException)
  com.sun.mail.smtp.SMTPTransport:1829 (null)
2. Failed to route event via endpoint: DefaultOutboundEndpoint{endpointUri=smtp://mymail:<password>@smtp.gmail.com, connector=SmtpConnector
{
  name=connector.smtp.mule.default
  lifecycle=start
  this=77c233af
  numberOfConcurrentTransactedReceivers=4
  createMultipleTransactedReceivers=true
  connected=true
  supportedProtocols=[smtp]
  serviceOverrides=<none>
}
,  name='endpoint.smtp.mymail.gmail.com.587', mep=ONE_WAY, properties={fromAddress=mymail@gmail.com, toAddresses=destiny@gmail.com, subject=SD}, transactionConfig=Transaction{factory=null, action=INDIFFERENT, timeout=0}, deleteUnacceptedMessages=false, initialState=started, responseTimeout=10000, endpointEncoding=UTF-8, disableTransportTransformer=false}. Message payload is of type: MimeMessage (org.mule.api.transport.DispatchException)
  org.mule.transport.AbstractMessageDispatcher:117 (http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/transport/DispatchException.html)
--------------------------------------------------------------------------------
Root Exception stack trace:
com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first. md2sm586901wic.19 - gsmtp

    at com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1829)
    at com.sun.mail.smtp.SMTPTransport.mailFrom(SMTPTransport.java:1368)
    at com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:886)
    + 3 more (set debug level logging or '-Dmule.verbose.exceptions=true' for everything)
********************************************************************************
INFO 2015-03-26 22:26:00479[[domotica2].connector.smtp.mule.default.dispatcher.01]org.mule.transport.service.DefaultTransportServiceDescriptor:加载默认出站转换器:org.mule.transport.email.transformers.ObjectToMimeMessage
INFO 2015-03-26 22:26:00499[[domotica2].connector.smtp.mule.default.dispatcher.01]org.mule.lifecycle.AbstractLifecycleManager:初始化:“connector.smtp.mule.default.dispatcher.2081412619”。对象是:SmtpMessageDispatcher
INFO 2015-03-26 22:26:00912[[domotica2].connector.smtp.mule.default.dispatcher.01]org.mule.lifecycle.AbstractLifecycleManager:开始:“connector.smtp.mule.default.dispatcher.2081412619”。对象是:SmtpMessageDispatcher
错误2015-03-26 22:26:01100[[domotica2].connector.smtp.mule.default.dispatcher.01]org.mule.exception.DefaultMessaginExceptionStrategy:
********************************************************************************
消息:未能通过端点路由事件:DefaultOutboundEndpoint{endpointUri=smtp://mymail:@smtp.gmail.com,connector=SmtpConnector
{
name=connector.smtp.mule.default
生命周期=开始
这=77c233af
ConcurrentTransacticedReceiver的数量=4
CreateMultipleTransactedReceiver=true
已连接=真
supportedProtocols=[smtp]
服务覆盖=
}
,name='endpoint.smtp.mymail.gmail.com.587',mep=ONE_-WAY,properties={fromAddress=mymail@gmail.com,地址=destiny@gmail.com,subject=SD},transactionConfig=Transaction{factory=null,action=interference,timeout=0},DeleteUnceptedMessages=false,initialState=started,responseTimeout=10000,endpointEncoding=UTF-8,disableTransportTransformer=false}。消息负载的类型为:mimessage
代码:MULE_错误-42999
--------------------------------------------------------------------------------
异常堆栈是:
1.530 5.7.0必须首先发出STARTTLS命令。md2sm586901wic.19-gsmtp
(com.sun.mail.smtp.SMTPSendFailedException)
SMTPTransport:1829(空)
2.未能通过端点路由事件:DefaultOutboundEndpoint{endpointUri=smtp://mymail:@smtp.gmail.com,connector=SmtpConnector
{
name=connector.smtp.mule.default
生命周期=开始
这=77c233af
ConcurrentTransacticedReceiver的数量=4
CreateMultipleTransactedReceiver=true
已连接=真
supportedProtocols=[smtp]
服务覆盖=
}
,name='endpoint.smtp.mymail.gmail.com.587',mep=ONE_-WAY,properties={fromAddress=mymail@gmail.com,地址=destiny@gmail.com,subject=SD},transactionConfig=Transaction{factory=null,action=interference,timeout=0},DeleteUnceptedMessages=false,initialState=started,responseTimeout=10000,endpointEncoding=UTF-8,disableTransportTransformer=false}。消息负载的类型为:mimessage(org.mule.api.transport.DispatchException)
org.mule.transport.AbstractMessageDispatcher:117(http://www.mulesoft.org/docs/site/current3/apidocs/org/mule/api/transport/DispatchException.html)
--------------------------------------------------------------------------------
根异常堆栈跟踪:
com.sun.mail.smtp.SMTPSendFailedException:530 5.7.0必须首先发出STARTTLS命令。md2sm586901wic.19-gsmtp
在com.sun.mail.smtp.SMTPTransport.issueSendCommand(SMTPTransport.java:1829)上
在com.sun.mail.smtp.SMTPTransport.mailFrom上(SMTPTransport.java:1368)
在com.sun.mail.smtp.SMTPTransport.sendMessage(SMTPTransport.java:886)上
+3个以上(为所有内容设置调试级别日志或“-Dmule.verbose.exceptions=true”)
********************************************************************************

事实上,删除“@gmail.com”的端点应该是这样的:

或者替换@而不是:


GMail SMTP有一个特定的连接器,名为
SMTP:GMail连接器

下面是一个示例用法:

<smtp:gmail-connector name="smtpGmailConnector"  bccAddresses="abc@example.com" ccAddresses="bcd@example.com" contentType="foo/bar"
fromAddress="cde@example.com" replyToAddresses="def@example.com"
subject="subject">
  <smtp:header key="foo" value="bar" />
  <smtp:header key="baz" value="boz" />
</smtp:gmail-connector>


参考:(向下滚动查看GMail连接器示例,就在端点上方。

尝试删除@,并将其替换为%40。

尝试从用户属性中删除“@GMail.com”或改用“%40gmail.com”。您使用的是哪个版本的mule?Anypoint Studio 5.0.0我遇到了相同的问题,我收到了这个错误
name='endpoint.smtp.mymail.gmail.com.587',mep=ONE_-WAY,properties={fromAddress=mymail@gmail.com,地址=destiny@gmail.com,subject=SD},transactionConfig=Transaction{factory=null,action=interference,timeout=0},DeleteUnceptedMessages=false,initialState=started,responseTimeout=10000,endpointEncoding=UTF-8,disableTransportTransformer=false}。邮件有效负载的类型为:mimessage Code:MULE_ERROR-42999,在发送邮件时,该类型看起来像是一个问题。你能编辑原始问题来添加新的堆栈跟踪吗?我已经在原始问题上添加了完整的堆栈跟踪。对,问题是gmail需要SSL,这意味着使用
smtps
连接器。正如David Dossot提到的,你也可以使用Gmail SMTP连接器。我已经检查了这个例子,但是..用户名和密码字段在哪里?
<smtp:gmail-connector name="smtpGmailConnector"  bccAddresses="abc@example.com" ccAddresses="bcd@example.com" contentType="foo/bar"
fromAddress="cde@example.com" replyToAddresses="def@example.com"
subject="subject">
  <smtp:header key="foo" value="bar" />
  <smtp:header key="baz" value="boz" />
</smtp:gmail-connector>