Salesforce是一个客户关系管理工具(CRM),用来帮助企业管理和促进与现有客户的关系,开发新客户。它运行在云上,所以不需要安装任何软件,也不需要硬件。显然,它降低了开发成本,可以在很短的时间内交付应用程序。目前,Salesforce是市场上领先的按需客户关系管理公司。因此,在构建网站或系统时,与Salesforce的集成更为常见。本系列文章主要关注如何将AEM与Salesforce集成,从AEM的云服务及其OOTB组件到使用Salesforce API的定制组件。
我注意到Adobe AEM已经提供了可扩展的功能(云服务)来与Salesforce集成,它还提供了OOTB组件来显示来自Salesforce的数据。有一个文章在它的助手中心上。然而,这篇文章并不是完美的,有一些错误可能会阻止开发人员成功的集成。因此,我写这篇文章是为了说明正确的步骤。我希望这篇文章可以帮助你,当你试图让AEM云服务与Salesforce集成。
配置AEM与Salesforce集成
您将需要客户秘密和客户密钥来远程登录Salesforce。Salesforce提供了一个名为Connected App的应用程序用于远程访问。在AEM中,它提供了Salesforce云服务来配置与Salesforce的集成。
1.在Salesforce中创建连接应用
登录你的Salesforce网站。
导航到创建->应用程序.
单击新按钮连接应用程序部分创建一个新的。
填写所需的细节如下图所示。这里的回调URL只接受HTTPs URL,所以AEM必须配置SSL。回调URL是我们将在AEM中创建的云服务的URL。
2.在AEM中配置Salesforce云服务
转到云服务。在“第三方服务”中,单击Salesforce中的“立即配置”。
创建一个新的配置并获取应用程序URL,这是Connected App配置中的Callback URL。
填写从Salesforce Connected App获得的客户密钥和客户秘密。
3.连接到Salesforce
单击Connect to Salesforce按钮,下面的模块将弹出。
然后会打开一个确认对话框,告诉您连接成功。
尝试AEM中的OOTB组件来访问Salesforce中的数据
AEM中有一个名为Salesforce.com Search的OOTB组件,它展示了如何使用Salesforce REST API访问Salesforce对象。
1.将创建的Salesforce云服务设置到您的站点上
2.将Salesforce搜索组件拖到页面。在对话框中设置搜索条件。
然后,您将从Salesforce获得匹配的Lead数据。
小贴士:
- 回调URL应该是https。因此,您必须在AEM上启用SSL。要了解如何启用SSL,请参见此博客.
- 如果你在连接Salesforce时出现以下错误,该怎么办?
一个可能的原因是,您正在尝试登录Salesforce沙箱。Salesforce沙箱的登录URL (test.salesforce.com)与Salesforce开发人员和生产环境(login.salesforce.com)不同。但是,在AEM中,salesforce连接器将授权URL设置为https://login.salesforce.com/services/oauth2/token.因此,对于沙箱环境,请将此值更改为https://test.salesforce.com/services/oauth2/token在/ libs / mcm / salesforce /组件/ salesforcepage /对话框/项目/标签/项目/基本/项目/ authorizationUrl。
参考:
https://docs.adobe.com/docs/en/aem/6-2/administer/integration/third-party-services/salesforce.html
http://www.aemquickstart.in/2017/03/enable-ssl-for-aem-author-instance.html