建立与Salesforce连接的Java后端
#api #java #salesforce #ecosystem

第一部分:Java致电Salesforce

Salesforce生态系统非常大。开发人员需要努力工作,以了解来自Salesforce的最新功能和工具。在本文中,我们将一点点 new 混合。我们将将基于Java的应用程序与Salesforce结合在一起,我们将通过Web Services进行。

Java是一种编程语言和计算平台,首先是Sun Microsystems于1995年发布的。从那时起,我们看到了Web 2.0和Web编程语言,容器,微服务和云本地体系结构的兴起。即使到现在,许多为未来设计的新产品和数字服务仍在继续依靠Java。 Java将在可预见的未来。

同时,Salesforce已将自己确立为世界顶级CRM和客户成功平台。随着当今的S企业依靠需要与彼此无缝集成的应用程序和混合云设置,这并不奇怪,Java应用程序和Salesforce Cloud需要相交。那么,我们如何获得我们的Java和Salesforce.com(SFDC)应用程序集成并互相交谈?

在本文中,我们将讨论如何使用Web服务连接器(WSC)实现此集成。我们将使用一个示例用例使用企业,该公司想使用其Java应用程序来操纵Salesforce org数据,并向您展示如何设置开发人员环境并连接这些部件。

但是,在我们开始之前,让我们简要讨论Salesforce及其API-First方法。

Salesforce和API优先方法

如果您熟悉SFDC生态系统,那么您将知道Salesforce在其平台上构建功能时采用API-First方法。实际上,Salesforce是one of the first companies部署Web API!尽管该平台具有许多出色的内置功能,但Salesforce希望使客户能够创建他们自己平台所需的功能和自定义体验。通过提供API,Salesforce确保可以对SFDC进行自定义并连接到任何可以与Web服务交互的外部应用程序。 Salesforce的一些API(并且有 a lot )包括:

可以说Salesforce的平台已被API覆盖了,可以为无数不同用例提供了访问权限。话虽如此,让我们深入研究我们的用例。

在我们的示例用例中,我们有一个Java应用程序,可帮助企业为其销售组织生成潜在客户。该业务希望Java应用程序将合格的线索直接推向其Salesforce CRM,避免需要手动将铅数据输入Salesforce。

要整合Java和Salesforce,我们将使用Salesforce SOAP API和Web Services Connector (WSC)库,该库是包装层,可简化与Java中的API一起工作。

最初设定

我们Java开发人员环境的初始设置需要采取几个步骤。幸运的是,我们从这个Salesforce tipsheet获得了指导。尽管如此,我们将概述这里的主要步骤。

安装Java开发人员套件(JDK)

要在我们的Java应用程序中使用Salesforce API,我们将在11.0或更高版本中安装Java开发人员套件(JDK)。您可以通过访问this page并找到适合本地机器的二进制文件来做到这一点。

安装日食

接下来,您将需要Java开发IDE。虽然您有几种选择,但我们的演练步骤将与Eclipse IDE一起使用。您可以找到最新的Eclipse IDE包here。下载并在本地计算机上安装IDE。

安装WSC

由于我们将使用Salesforce SOAP API,因此我们需要安装WSC。

下载WSC预构建.jar文件

WSC的Maven repository显示了所有可用的版本:

导航到与您使用的API版本匹配的版本的页面。在我们的示例中,我们将使用56.0.0

文件下,我们单击查看全部。这将我们带到了我们需要下载的实际.jar文件的`

将以下四个文件下载到您的本地计算机:

  1. force-wsc-56.0.0-javadoc.jar
  2. force-wsc-56.0.0-sources.jar
  3. force-wsc-56.0.0-uber.jar
  4. force-wsc-56.0.0.jar

我们将使用这些文件从我们的salesforce org中生成存根文件。

为您的Salesforce org生成并下载WSDL

接下来,我们将生成一个用于生成.jar存根文件的WSDL。我们可以在此处使用预构建的.jar文件,因为WSDL特定于我们的Salesforce组织。如果我们的组织中定义了自定义对象和字段,则WSDL将反映它们,并且生成的.jar将包含它们。

我们登录我们的Salesforce开发人员组织。然后,我们导航到设置平台工具集成 api 。我们单击生成企业WSDL。

这将在您的浏览器中打开一个新选项卡,显示您的WSDL文件。将此文件保存到您的本地计算机,名称为sfdc.wsdl。将其放入下载WSC .jar文件的同一文件夹中。

生成Java存根文件

要将SOAP API与Jav​​a一起使用,我们需要生成.jar存根文件以在我们的应用程序项目中使用。我们运行以下命令来生成存根文件:

`
$ java -ClassPath Force WSC-56.0.0-UBER.JAR COM.SFORCE.WS.TOOLS.WSDLC SFDC.WSDL SFDC_STUB.JAR

[wsc] [wsdlc.main:72]从模式...
生成Java文件 [WSC] [WSDLC.MAIN:72]生成1206个Java文件。
[WSC] [WSDLC.MAIN:72]编译了1210 Java文件。
[WSC] [WSDLC.MAIN:72]生成JAR文件... sfdc_stub.jar
[WSC] [WSDLC.MAIN:72]生成的JAR文件sfdc_stub.jar
`

在Eclipse中创建Java项目

在Eclipse中,使用以下代码开始一个新的Java项目和一个新的Java类Main

`
软件包WSC;
//根据选择的WSDL,将其更改为企业或合作伙伴
导入com.sforce.soap.enterprise。;
导入com.sforce.soap.enterprise.sobject。
;

导入com.sforce.ws。*;

公共类Main {
公共静态void main(string [] args){
connectorConfig recertentials = new ConnectorConfig();
recredentials.setPassword(“ yourpassword!appenddedsecuritytoken);
recredentials.setusername(“ yoursalesforceusername@yourdomain.com”);

EnterpriseConnection connection;
try {
  connection = Connector.newConnection(credentials);
  Lead le = new Lead();
  le.setLastName("AcmeEnterprises");
  le.setCompany("JavaPush");
  le.setIndustry("Hospitality"); 
  connection.create(new Lead[]{ le });
} catch (ConnectionException e) {
  e.printStackTrace();
}

}
}
`

将.jar文件添加到项目

接下来,我们需要将生成的四个.jar文件与我们项目的构建路径连接。右键单击您的项目,然后选择构建路径配置构建路径

在出现的模态中,导航到左侧面板中的 java构建路径。单击选项卡。选择 modulepath ,然后单击添加外部罐子按钮。查找您从Maven存储库和生成的存根文件(sfdc_stub.jar)下载的四个.jar文件,然后添加它们。然后,单击应用并关闭

测试应用程序

我们都设置了我们的代码和.jar文件。现在,右键单击Eclipse中的Main.java文件。选择运行为 - > Java应用程序

运行应用程序后,我们导航到销售 LEADS 在我们的Salesforce org中,我们看到我们有了新的潜在客户!

我们的Java应用程序已通过SOAP API成功利用了我们的Salesforce org,使用WSC插入新的引线!

下一步

现在,我们已经验证了概念的初始证明,您可以开始扩展Java应用程序以执行其他操作,包括读取,更新和删除。您可以合并自己的自定义业务逻辑来创建一个为您处理Salesforce org数据的Java应用程序!

有关我们涵盖的许多核心概念的更多信息,以下是指向有用资源的链接: