Error:The email message requires a link to the web page where users selected whether to receive email messages when sending an email from a marketing effort

When attempting to start and email job from a Marketing Effort in CRM 4.0, users receive the error: Error: Data could not be saved. The email message requires a link to the web page that displays your privacy policy. To add a link, click the "insert link" button in the toolbar and select a page. the email message requires a link to the web page where users selected whether to receive email messages. To add a link, click the "insert link" button in the toolbar and select a page.

However, a link to the privacy policy and communications preferences page was included in the Email.  In the CRM Application Event Viewer, an error with the filing message is logged: 

Exception information: 
    Exception type: ServiceException 
    Exception message: Data could not be saved.  Unable to connect to the remote server
   at Blackbaud.AppFx.Server.DataFormSaveProcessor.ExecuteUpdateCLR()
   at Blackbaud.AppFx.Server.DataFormSaveProcessor.ProcessRequest()
   at Blackbaud.AppFx.Server.RequestProcessor`2.GetReply()
   at Blackbaud.AppFx.Server.AppService.DispatchSyncRequest(RequestProcessorBase processor)
   at Blackbaud.AppFx.Server.AppService.DispatchRequest(RequestProcessorBase processor)
   at Blackbaud.AppFx.Server.AppFxWebService.DataFormSave(DataFormSaveRequest req)
   at Blackbaud.AppFx.UIModeling.Core.DataFormUIModel.SaveDataForm(DataFormUIModelSaveArgs args)
   at Blackbaud.AppFx.UIModeling.Core.DataFormUIModel.Save(DataFormUIModelSaveArgs args)
   at Blackbaud.AppFx.UIModeling.RestServices.UIModelingServiceForm.ConfirmFormSession(RequestContext rc, FormSession session, Boolean ignoreConcurrency, Boolean returnDataFormItem, Boolean isChildForm, Boolean storeDataFormItem)

Unable to connect to the remote server
   at Blackbaud.AppFx.Marketing.NetCommunityIntegrationCatalog.NetCommunityTemplateEdit.Save()
   at Blackbaud.AppFx.Server.DataFormSaveProcessor.ExecuteUpdateCLR()

Unable to connect to the remote server
   at System.Net.HttpWebRequest.GetRequestStream(TransportContext& context)
   at System.Net.HttpWebRequest.GetRequestStream()
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at Blackbaud.AppFx.WebAPI.ServiceProxy.AppFxWebService.DataListLoad(DataListLoadRequest DataListLoadRequest)
   at Blackbaud.AppFx.WebAPI.DataListServices.LoadResults(AppFxWebServiceProvider provider, DataListLoadRequest request)
   at Blackbaud.AppFx.WebAPI.DataListServices.LoadResults[T](AppFxWebServiceProvider provider, DataListLoadRequest request, Func`2 rowFactoryFunction)
   at Blackbaud.AppFx.WebAPI.DataListServices.LoadResults[T](AppFxWebServiceProvider provider, DataListRowFactoryDelegate`1 rowFactory, DataListLoadRequest request)
   at Blackbaud.Web.Content.Core.SecurableObjectHelper..ctor()
   at Blackbaud.Web.Content.Core.SecurableObjectHelper.Current()
   at Blackbaud.Web.Content.Core.EmailTemplate.Save()
   at Blackbaud.AppFx.Marketing.NetCommunityIntegrationCatalog.NetCommunityTemplateEdit.Save()

No connection could be made because the target machine actively refused it
   at System.Net.Sockets.Socket.DoConnect(EndPoint endPointSnapshot, SocketAddress socketAddress)
   at System.Net.ServicePoint.ConnectSocketInternal(Boolean connectFailure, Socket s4, Socket s6, Socket& socket, IPAddress& address, ConnectSocketState state, IAsyncResult asyncResult, Exception& exception)


This is an issue that may have multiple causes, based on the environment.  

In this particular instance, the load balance was routing internal API calls to https and CRM web server was not listening on port 443, which is why it refused the connection back from the BBIS side.  (the IP address actively refusing the connection was associated to the CRM server.)  The issue was addressed in this instance by binding an SSL certificate and opening the server to listen on port 443.  


 Blackbaud Direct Marketing

Was this article helpful?