我不能用 mule 发送邮件
I cannot send a mail in mule
我在尝试执行 muleproject 时收到该错误消息
"The endpoint is malformed an cannot be parsed" and this is the endpoint
代码如下:
<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"/>
哪里错了??
我已经从用户中删除了“@gmail.com”并且项目现在已经部署但是它引发了这个异常
Root Exception stack trace:
com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first. cf12sm8298386wjb.10 - 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: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)
********************************************************************************
确实,这就是端点移除“@gmail.com”后的样子:
<smtp:outbound-endpoint host="smtp.gmail.com" user="mymail" password="mypass"
to="destiny@gmail.com" from="my@gmail.com" responseTimeout="10000"
doc:name="SMTP" port="587" subject="the subject"/>
或替换@:
<smtp:outbound-endpoint host="smtp.gmail.com" user="mymail%40gmail.com" password="mypass"
to="destiny@gmail.com" from="my@gmail.com" responseTimeout="10000"
doc:name="SMTP" port="587" subject="the subject"/>
GMail SMTP 有一个名为 smtp:gmail-connector
的特定连接器
这是一个用法示例:
<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>
参考:http://www.mulesoft.org/documentation/display/current/SMTP+Transport+Reference#SMTPTransportReference-Connectors(向下滚动查看 GMail 连接器示例,就在 Endpoints 上方)。
尝试删除 @ 并将其替换为 %40。
我在尝试执行 muleproject 时收到该错误消息
"The endpoint is malformed an cannot be parsed" and this is the endpoint
代码如下:
<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"/>
哪里错了??
我已经从用户中删除了“@gmail.com”并且项目现在已经部署但是它引发了这个异常
Root Exception stack trace:
com.sun.mail.smtp.SMTPSendFailedException: 530 5.7.0 Must issue a STARTTLS command first. cf12sm8298386wjb.10 - 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: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)
********************************************************************************
确实,这就是端点移除“@gmail.com”后的样子:
<smtp:outbound-endpoint host="smtp.gmail.com" user="mymail" password="mypass"
to="destiny@gmail.com" from="my@gmail.com" responseTimeout="10000"
doc:name="SMTP" port="587" subject="the subject"/>
或替换@:
<smtp:outbound-endpoint host="smtp.gmail.com" user="mymail%40gmail.com" password="mypass"
to="destiny@gmail.com" from="my@gmail.com" responseTimeout="10000"
doc:name="SMTP" port="587" subject="the subject"/>
GMail SMTP 有一个名为 smtp:gmail-connector
这是一个用法示例:
<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>
参考:http://www.mulesoft.org/documentation/display/current/SMTP+Transport+Reference#SMTPTransportReference-Connectors(向下滚动查看 GMail 连接器示例,就在 Endpoints 上方)。
尝试删除 @ 并将其替换为 %40。