Did you make sure that port 25 is open in your Security Group? On Tue, Jun 30, 2009 at 8:39 PM, John Adelus<jadelus@me.com> wrote: > Has anyone tried using the Emailer Service on Amazon Web Services EC2 and > knows how it must be configured? > > I have it working fine on my local machine but when I run my Grails app > under AWS (using a RightScale small server) I get the following error. > > Thanks for your help. > > John Adelus > > 2009-06-30 23:20:41,104 [TP-Processor12] ERROR service.EmailerService =A0= - > Failed to send emails: Mail server connection failed; nested > exception is javax.mail.NoSuchProviderException: smtp > org.springframework.mail.MailSendException: Mail server connection failed= ; > nested exception is javax.mail.NoSuchProviderException: smtp > =A0 =A0 =A0 =A0at > org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSende= rImpl.java:419) > =A0 =A0 =A0 =A0at > org.springframework.mail.javamail.JavaMailSenderImpl.send(JavaMailSenderI= mpl.java:308) > =A0 =A0 =A0 =A0at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Met= hod) > =A0 =A0 =A0 =A0at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java= :39) > =A0 =A0 =A0 =A0at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI= mpl.java:25) > =A0 =A0 =A0 =A0at java.lang.reflect.Method.invoke(Method.java:597) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite$PojoCachedMethodS= ite.invoke(PojoMetaMethodSite.java:188) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.PojoMetaMethodSite.call(PojoMetaMeth= odSite.java:52) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteAr= ray.java:40) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSi= te.java:117) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSi= te.java:125) > =A0 =A0 =A0 =A0at EmailerService.sendEmails(EmailerService.groovy:41) > =A0 =A0 =A0 =A0at EmailerService$sendEmails.call(Unknown Source) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCall(CallSiteAr= ray.java:40) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSi= te.java:117) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.call(AbstractCallSi= te.java:125) > =A0 =A0 =A0 =A0at > com.itelliseek.Wine.RegisterController.sendEmail(RegisterController.groov= y:252) > =A0 =A0 =A0 =A0at > com.itelliseek.Wine.RegisterController.this$2$sendEmail(RegisterControlle= r.groovy) > =A0 =A0 =A0 =A0at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Met= hod) > =A0 =A0 =A0 =A0at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java= :39) > =A0 =A0 =A0 =A0at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI= mpl.java:25) > =A0 =A0 =A0 =A0at java.lang.reflect.Method.invoke(Method.java:597) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86) > =A0 =A0 =A0 =A0at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:2= 34) > =A0 =A0 =A0 =A0at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.ja= va:1062) > =A0 =A0 =A0 =A0at > groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:926) > =A0 =A0 =A0 =A0at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.ja= va:893) > =A0 =A0 =A0 =A0at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.ja= va:1010) > =A0 =A0 =A0 =A0at > groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:926) > =A0 =A0 =A0 =A0at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.ja= va:893) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.PogoMetaClassSite.callCurrent(PogoMe= taClassSite.java:66) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(Cal= lSiteArray.java:44) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(Abstrac= tCallSite.java:143) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(Abstrac= tCallSite.java:151) > =A0 =A0 =A0 =A0at > com.itelliseek.Wine.RegisterController$-closure5.doCall(RegisterControlle= r.groovy:173) > =A0 =A0 =A0 =A0at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Met= hod) > =A0 =A0 =A0 =A0at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java= :39) > =A0 =A0 =A0 =A0at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI= mpl.java:25) > =A0 =A0 =A0 =A0at java.lang.reflect.Method.invoke(Method.java:597) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite$PogoCachedMethodS= iteNoUnwrapNoCoerce.invoke(PogoMetaMethodSite.ja > va:266) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.PogoMetaMethodSite.callCurrent(PogoM= etaMethodSite.java:51) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.CallSiteArray.defaultCallCurrent(Cal= lSiteArray.java:44) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(Abstrac= tCallSite.java:143) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.callsite.AbstractCallSite.callCurrent(Abstrac= tCallSite.java:151) > =A0 =A0 =A0 =A0at > com.itelliseek.Wine.RegisterController$-closure5.doCall(RegisterControlle= r.groovy) > =A0 =A0 =A0 =A0at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Met= hod) > =A0 =A0 =A0 =A0at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java= :39) > =A0 =A0 =A0 =A0at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI= mpl.java:25) > =A0 =A0 =A0 =A0at java.lang.reflect.Method.invoke(Method.java:597) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86) > =A0 =A0 =A0 =A0at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:2= 34) > =A0 =A0 =A0 =A0at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.ja= va:1062) > =A0 =A0 =A0 =A0at > groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:926) > =A0 =A0 =A0 =A0at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.ja= va:893) > =A0 =A0 =A0 =A0at groovy.lang.Closure.call(Closure.java:279) > =A0 =A0 =A0 =A0at groovy.lang.Closure.call(Closure.java:274) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.h= andleAction(SimpleGrailsControllerHelper.java:36 > 8) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.e= xecuteAction(SimpleGrailsControllerHelper.java:2 > 43) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.h= andleURI(SimpleGrailsControllerHelper.java:203) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsControllerHelper.h= andleURI(SimpleGrailsControllerHelper.java:138) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.servlet.mvc.SimpleGrailsController.handleR= equest(SimpleGrailsController.java:88) > =A0 =A0 =A0 =A0at > org.springframework.web.servlet.mvc.SimpleControllerHandlerAdapter.handle= (SimpleControllerHandlerAdapter.java:48) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.servlet.GrailsDispatcherServlet.doDispatch= (GrailsDispatcherServlet.java:264) > =A0 =A0 =A0 =A0at > org.springframework.web.servlet.DispatcherServlet.doService(DispatcherSer= vlet.java:807) > =A0 =A0 =A0 =A0at > org.springframework.web.servlet.FrameworkServlet.processRequest(Framework= Servlet.java:571) > =A0 =A0 =A0 =A0at > org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.= java:511) > =A0 =A0 =A0 =A0at javax.servlet.http.HttpServlet.service(HttpServlet.java= :710) > =A0 =A0 =A0 =A0at javax.servlet.http.HttpServlet.service(HttpServlet.java= :803) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:269) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:188) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerReque= stFilter.java:70) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:215) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:188) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerReque= stFilter.java:70) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:215) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:188) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatch= er.java:691) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationDispatcher.processRequest(Application= Dispatcher.java:469) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationDispatcher.doForward(ApplicationDispa= tcher.java:403) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationDispatcher.forward(ApplicationDispatc= her.java:301) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingI= nfo(WebUtils.java:293) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingI= nfo(WebUtils.java:269) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.util.WebUtils.forwardRequestForUrlMappingI= nfo(WebUtils.java:261) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.mapping.filter.UrlMappingsFilter.doFilterI= nternal(UrlMappingsFilter.java:181) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerReque= stFilter.java:76) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:215) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:188) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.obtainContent(Gr= ailsPageFilter.java:221) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.sitemesh.GrailsPageFilter.doFilter(GrailsP= ageFilter.java:126) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:215) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:188) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doF= ilter(FilterChainProxy.java:378) > =A0 =A0 =A0 =A0at > org.springframework.security.intercept.web.FilterSecurityInterceptor.invo= ke(FilterSecurityInterceptor.java:109) > =A0 =A0 =A0 =A0at > org.springframework.security.intercept.web.FilterSecurityInterceptor.doFi= lter(FilterSecurityInterceptor.java:83) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doF= ilter(FilterChainProxy.java:390) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.ExceptionTranslationFilter.doFilterHttp(E= xceptionTranslationFilter.java:101) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecur= ityFilter.java:53) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doF= ilter(FilterChainProxy.java:390) > =A0 =A0 =A0 =A0at > org.springframework.security.providers.anonymous.AnonymousProcessingFilte= r.doFilterHttp(AnonymousProcessingFilter.java:10 > 5) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecur= ityFilter.java:53) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doF= ilter(FilterChainProxy.java:390) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.rememberme.RememberMeProcessingFilter.doF= ilterHttp(RememberMeProcessingFilter.java:109) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecur= ityFilter.java:53) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doF= ilter(FilterChainProxy.java:390) > =A0 =A0 =A0 =A0at > org.springframework.security.wrapper.SecurityContextHolderAwareRequestFil= ter.doFilterHttp(SecurityContextHolderAwareReque > stFilter.java:91) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecur= ityFilter.java:53) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doF= ilter(FilterChainProxy.java:390) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.AbstractProcessingFilter.doFilterHttp(Abs= tractProcessingFilter.java:277) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.plugins.springsecurity.GrailsAuthenticationPro= cessingFilter.super$3$doFilterHttp(GrailsAuthent > icationProcessingFilter.groovy) > =A0 =A0 =A0 =A0at sun.reflect.GeneratedMethodAccessor636.invoke(Unknown S= ource) > =A0 =A0 =A0 =A0at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorI= mpl.java:25) > =A0 =A0 =A0 =A0at java.lang.reflect.Method.invoke(Method.java:597) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.reflection.CachedMethod.invoke(CachedMethod.java:86) > =A0 =A0 =A0 =A0at groovy.lang.MetaMethod.doMethodInvoke(MetaMethod.java:2= 34) > =A0 =A0 =A0 =A0at groovy.lang.MetaClassImpl.invokeMethod(MetaClassImpl.ja= va:1062) > =A0 =A0 =A0 =A0at > groovy.lang.ExpandoMetaClass.invokeMethod(ExpandoMetaClass.java:926) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.runtime.ScriptBytecodeAdapter.invokeMethodOnSuperN(Sc= riptBytecodeAdapter.java:127) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.plugins.springsecurity.GrailsAuthenticationPro= cessingFilter.doFilterHttp(GrailsAuthenticationP > rocessingFilter.groovy:56) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecur= ityFilter.java:53) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doF= ilter(FilterChainProxy.java:390) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.logout.LogoutFilter.doFilterHttp(LogoutFi= lter.java:89) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecur= ityFilter.java:53) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doF= ilter(FilterChainProxy.java:390) > =A0 =A0 =A0 =A0at > org.springframework.security.context.HttpSessionContextIntegrationFilter.= doFilterHttp(HttpSessionContextIntegrationFilter > .java:235) > =A0 =A0 =A0 =A0at > org.springframework.security.ui.SpringSecurityFilter.doFilter(SpringSecur= ityFilter.java:53) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy$VirtualFilterChain.doF= ilter(FilterChainProxy.java:390) > =A0 =A0 =A0 =A0at > org.springframework.security.util.FilterChainProxy.doFilter(FilterChainPr= oxy.java:175) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(Deleg= atingFilterProxy.java:236) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingF= ilterProxy.java:167) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:215) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:188) > =A0 =A0 =A0 =A0at > org.codehaus.groovy.grails.web.servlet.mvc.GrailsWebRequestFilter.doFilte= rInternal(GrailsWebRequestFilter.java:65) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerReque= stFilter.java:76) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:215) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:188) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(C= haracterEncodingFilter.java:96) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerReque= stFilter.java:76) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(Deleg= atingFilterProxy.java:236) > =A0 =A0 =A0 =A0at > org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingF= ilterProxy.java:167) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Applicat= ionFilterChain.java:215) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilte= rChain.java:188) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve= .java:210) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve= .java:172) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:= 127) > =A0 =A0 =A0 =A0at > org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:= 117) > =A0 =A0 =A0 =A0at > org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.j= ava:108) > =A0 =A0 =A0 =A0at > org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:15= 1) > =A0 =A0 =A0 =A0at > org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:200) > =A0 =A0 =A0 =A0at > org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283) > =A0 =A0 =A0 =A0at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket= .java:773) > =A0 =A0 =A0 =A0at > org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:7= 03) > =A0 =A0 =A0 =A0at > org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.j= ava:895) > =A0 =A0 =A0 =A0at > org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.= java:685) > =A0 =A0 =A0 =A0at java.lang.Thread.run(Thread.java:619) > Caused by: javax.mail.NoSuchProviderException: smtp > =A0 =A0 =A0 =A0at javax.mail.Session.getService(Session.java:782) > =A0 =A0 =A0 =A0at javax.mail.Session.getTransport(Session.java:708) > =A0 =A0 =A0 =A0at javax.mail.Session.getTransport(Session.java:651) > =A0 =A0 =A0 =A0at javax.mail.Session.getTransport(Session.java:631) > =A0 =A0 =A0 =A0at > org.springframework.mail.javamail.JavaMailSenderImpl.getTransport(JavaMai= lSenderImpl.java:434) > =A0 =A0 =A0 =A0at > org.springframework.mail.javamail.JavaMailSenderImpl.doSend(JavaMailSende= rImpl.java:388) > =A0 =A0 =A0 =A0... 153 more > > > > > > >