我正在尝试通过其他API在salesforce中添加销售线索。代码在Java中。我已将WSDL转换为jar文件,并在Eclipse中添加为参考,以允许在Java中访问salesforce对象。 PFB我的代码。
System.out.println("-------LEAD INSERT----------");
String url= baseUri + "/sobjects/Lead";
System.out.println("((((((("+ url);
JSONObject lead= new JSONObject();
lead.put("FirstName", "LeadCreate3");
lead.put("LastName","Test3");
lead.put("Company","ACME");
AssignmentRuleHeader_element arh=new AssignmentRuleHeader_element();
arh.setAssignmentRuleId("01Q28000000e0Ow");
System.out.println("\n JSON for lead record to be inserted:"+ lead.toString(1));
HttpClient clientObj= HttpClientBuilder.create().build();
HttpPost post= new HttpPost(url);
System.out.println("\n"+oauthHeader+ "|||||"+ prettyPrintHeader);
post.addHeader(oauthHeader);
post.addHeader(prettyPrintHeader);
我想添加assignmentruleheader和emailHeader,但是我没有获得将这些头与之关联的对象?
答案 0 :(得分:0)
这是一个非常不清楚的问题。使用SOAP API(大型XML文档)时,您可以“解析WSDL”文件。但是您声明要使用REST API吗?
也许尝试不手工制作消息,找到一个不错的预构建Java库?
对于SOAP API,文档完全包含您需要的示例Lead Lead。滚动到页面底部:https://developer.salesforce.com/docs/atlas.en-us.api.meta/api/sforce_api_objects_lead.htm
connection.setAssignmentRuleHeader('SF rule Id goes here', false);
对于REST API,它是一个真实的HTTP标头:https://developer.salesforce.com/docs/atlas.en-us.api_rest.meta/api_rest/headers_autoassign.htm
名称应为Sforce-Auto-Assign
,值应为规则的ID。至于实际的代码...将取决于您是否使用任何我想像JAX-RS一样的REST框架?我的Java时代已经过去了,但这应该可以吗? https://www.baeldung.com/java-http-request