August 24, 2010

Web Forms for Marketers: Send Email

To have the save action for your form actually send email, you will need to change one of the settings, otherwise you will receive this error whenever submitting the form:

We experience a technical difficulty while processing your request. Your data may not have been correctly saved.

Also in your log (/data/logs/newest log file) you will see this error after the form has been submitted:

Exception: System.Net.WebException
Message: The remote name could not be resolved: 'example.host'
Source: System
at System.Net.ServicePoint.GetConnection(PooledStream PooledStream, Object owner, Boolean async, IPAddress& address, Socket& abortSocket, Socket& abortSocket6, Int32 timeout)
at System.Net.PooledStream.Activate(Object owningObject, Boolean async, Int32 timeout, GeneralAsyncDelegate asyncCallback)
at System.Net.PooledStream.Activate(Object owningObject, GeneralAsyncDelegate asyncCallback)
at System.Net.ConnectionPool.GetConnection(Object owningObject, GeneralAsyncDelegate asyncCallback, Int32 creationTimeout)
at System.Net.Mail.SmtpConnection.GetConnection(String host, Int32 port)
at System.Net.Mail.SmtpTransport.GetConnection(String host, Int32 port)
at System.Net.Mail.SmtpClient.GetConnection()
at System.Net.Mail.SmtpClient.Send(MailMessage message)
WARN Web Forms for Marketers: an unhandled exception: Failure sending mail. has occured while trying to execute an action.

In your content tree, browse down to: /sitecore/system/Modules/Web Forms for Marketers/Settings/Actions/Save Actions/Send Mail


Under that item there will be a submit section with parameters:


wffmpara


Just replace example.host with your SMTP host information for the server, and form@example.host with the address you want to send mail from – save, and republish!


That should correct the error above and, barring any other issues, hopefully the form will be working as intended!

8 comments:

  1. There is the situation happens when you need one place for configuring SMTP host name for all web forms in your solution. You can do it in the following way: just remove tags from those forms you need to have the same configuration and set correct SMTP host name in web.config ("MailServer" setting) and that's it :)

    ReplyDelete
  2. did you try the gmail smtp ? I'm facing an issue with it , when I opened the log I found this error
    "The SMTP server requires a secure connection or the client was not authenticated. The server response was: 5.7.0 Must issue a STARTTLS command first "
    Do you have any idea how to solve it?

    ReplyDelete
  3. We were facing a similar issue with Gmail SMTP (security)


    We ended up having to go to another SMTP for now

    http://stackoverflow.com/questions/3724506/sending-sitecore-emails-through-gmail

    ReplyDelete
  4. You're a life saver! :)

    ReplyDelete
  5. Amy, need help...
    Can we conditionally change field validation (optional to required and vice versa) in web form for marketers?
    I need to change validation of a field depending on a droplist field selected value.

    Thanks in advance.
    Vikrant

    ReplyDelete
  6. This comment has been removed by the author.

    ReplyDelete
  7. Hey Amy I am getting the same error after replacing host and from tag? Then what is the solution for this?

    ReplyDelete