SalesforceのSOAP APIをJavaから呼び出す1

■データ連携検討ポイント

  • 連携対象(HTTP/FTP/WebDAV/HTTPSやSFTP/FTPS、SOAP/RESTful/Bulk APIなど)
  • データソース(CSV/XML/JSON/Oracle、SQLServer、PostgreSQL)
  • Salesforce → 外部システム連携
  • 外部システム → Salesforce連携
  • リアルタイム連携/バッチ連携
  • データ量と実行頻度から制限に抵触する可能性

SOAP ロールバックできる
REST ロールバックできない
DataLoder Bath Bulk API

■SOAP 実装手順

①Sfdc⇒WSDL.wsdl
②Force WSCダウンロード
https://mvnrepository.com/artifact/com.force.api/force-wsc
https://github.com/forcedotcom/wsc
③ST-4.0.8.jarダウンロード
https://mvnrepository.com/artifact/org.antlr/ST4
※①②③をJavaPathに移動
④合併(enterprise.jar 生成)
java -classpath "${JAVA_HOME}lib/tools.jar:target/force-wsc-45.0.0-uber.jar" com.sforce.ws.tools.wsdlc <inputwsdlfile>  <outputjarfile>

cd C:\Program Files\Java\jdk1.7.0_80\lib
java -classpath force-wsc-44.0.0.jar;ST-4.0.8.jar;tools.jar com.sforce.ws.tools.wsdlc enterprise.wsdl enterprise.jar
※ClassPath = "C:\Program Files\Java\jdk1.7.0_80\lib\tools.jar"

java -classpath force-wsc-44.0.0.jar;ST-4.0.8.jar;tools.jar com.sforce.ws.tools.wsdlc enterprise.xml enterprise.jar

※Java8 以上はtools.jar 存在しないため、エラー発生する。

サンプルコード

import com.sforce.soap.enterprise.Connector;
import com.sforce.soap.enterprise.EnterpriseConnection;
import com.sforce.soap.enterprise.SaveResult;
import com.sforce.soap.enterprise.sobject.Account;
import com.sforce.soap.enterprise.sobject.SObject;
import com.sforce.ws.ConnectionException;
import com.sforce.ws.ConnectorConfig;

public class soap {

	public static void main(String[] args) throws ConnectionException {
		ConnectorConfig config = new ConnectorConfig();
        config.setUsername("Username"); //実際にはsandboxのログインアカウントを指定
        config.setPassword("Password"); //実際にはsandboxのログインパスワードを指定

        EnterpriseConnection connection = Connector.newConnection(config);
        Account account = new Account();
        account.setName("20181220テスト取引先");
        SaveResult[] ret = connection.create(new SObject[]{account});
        //retから情報取得したり
        System.out.println(ret);
	}
}

参照

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值