I am new to salesforce, hence this long post. I wanted to create a java app to do CRUD on salesforce. I have followed the rest api tutorial, and created app for fetching data from salesforce using REST(not bulk).
Now, for updating(records only), creating(custom objects), inserting(records) and deleting(records, and objects), I was looking into BULK api tutorial. I have some queries which I was not able to find documentation for:
- Can we not use soap and completely use rest to login. As per tutorial for bulk api, the code walkthrough has created connection using SOAP, and I tried using rest, but I am unable to create bulkConnnection on the same.
- What is the need of enterprise wsdl file. If I dont have enterprise wsdl file, can I still use bulk api for all the operations which it offers.
- In order to create tables(custom objects) and delete them, is it possible to do so using rest and not use meta api? Looking at it, it seems that meta api as well requires enterprise wsdl file.
- Is it possible to not create csv file for every job that is submitted, and instead have it loaded from java memory. I will be having row wise data in a List<list> java format, is it possible not to cause additional I/O by creating a temp csv file, and just push it to BULK writer. I was looking at
com.sforce.async.ContentType
and it only offers XML, JSON, CSV and zip support. - For
com.sforce.async.ContentType.JSON
do I need to provide a Json file to write similar to a csv?
Thanks
PS. I will have to do it solely using java, and no SF app.