0

Unfortunately I am unable to get Data Loader CLI (v45.0.0 running on Windows) running properly.

This is the command I am using:

process "C:\Users\erik\dataloader\custom" Account

Even when I use a very simple process-conf.xml file and make sure all defined files are present in the file system, I am getting the following output:

2019-03-19 10:58:38,141 INFO  [main] controller.Controller initLog (Controller.java:473) - Using built-in logging configuration, no log-conf.xml in C:\Users\erik\dataloader\v45.0.0\bin\configs\log-conf.xml
2019-03-19 10:58:38,158 INFO  [main] controller.Controller initLog (Controller.java:475) - The log has been initialized
2019-03-19 10:58:38,175 INFO  [main] process.ProcessConfig getBeanFactory (ProcessConfig.java:104) - Loading process configuration from config file: C:\Users\erik\dataloader\custom\process-conf.xml
2019-03-19 10:58:38,294 INFO  [main] support.AbstractApplicationContext prepareRefresh (AbstractApplicationContext.java:495) - Refreshing org.springframework.context.support.FileSystemXmlApplicationContext@6f3b5d16: startup date [Tue Mar 19 10:58:38 CET 2019]; root of context hierarchy
2019-03-19 10:58:38,362 INFO  [main] xml.XmlBeanDefinitionReader loadBeanDefinitions (XmlBeanDefinitionReader.java:315) - Loading XML bean definitions from file [C:\Users\erik\dataloader\custom\process-conf.xml]
2019-03-19 10:58:38,447 INFO  [main] support.DefaultListableBeanFactory preInstantiateSingletons (DefaultListableBeanFactory.java:557) - Pre-instantiating singletons in org.springframework.beans.factory.support.DefaultListableBeanFactory@29
25bf5b: defining beans [Account]; root of factory hierarchy
2019-03-19 10:58:38,481 ERROR [Account] controller.Controller <init> (Controller.java:125) - Exception happened in initConfig:
java.lang.NullPointerException
        at java.base/java.util.Arrays.stream(Arrays.java:5614)
        at com.salesforce.dataloader.controller.Controller.getConfigDirFromArgMap(Controller.java:133)
        at com.salesforce.dataloader.controller.Controller.<init>(Controller.java:123)
        at com.salesforce.dataloader.controller.Controller.getInstance(Controller.java:269)
        at com.salesforce.dataloader.process.ProcessRunner.run(ProcessRunner.java:117)
        at com.salesforce.dataloader.process.ProcessRunner.run(ProcessRunner.java:107)
        at com.salesforce.dataloader.process.ProcessRunner.main(ProcessRunner.java:266)
2019-03-19 10:58:38,498 FATAL [Account] process.ProcessRunner topLevelError (ProcessRunner.java:251) - Unable to run process Account
java.lang.NullPointerException
        at java.base/java.util.Arrays.stream(Arrays.java:5614)
        at com.salesforce.dataloader.controller.Controller.getConfigDirFromArgMap(Controller.java:133)
        at com.salesforce.dataloader.controller.Controller.<init>(Controller.java:123)
        at com.salesforce.dataloader.controller.Controller.getInstance(Controller.java:269)
        at com.salesforce.dataloader.process.ProcessRunner.run(ProcessRunner.java:117)
        at com.salesforce.dataloader.process.ProcessRunner.run(ProcessRunner.java:107)
        at com.salesforce.dataloader.process.ProcessRunner.main(ProcessRunner.java:266)

This is my process-conf.xml:

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="Account"
    class="com.salesforce.dataloader.process.ProcessRunner"
    singleton="false">
        <description>Export Account Data</description>
        <property name="name" value="Account"/>
        <property name="configOverrideMap">
        <map>
            <entry key="sfdc.enableLastRunOutput" value="false"/>
            <entry key="sfdc.entity" value="Account"/>
            <entry key="process.operation" value="extract"/>
            <entry key="sfdc.extractionRequestSize" value="500"/>
            <entry key="sfdc.extractionSOQL" value="SELECT Id FROM Account"/>
            <entry key="dataAccess.name" value="C:\Users\erik\dataloader\custom\extract.csv"/>
            <entry key="dataAccess.type" value="csvWrite"/>
            <entry key="dataAccess.writeUTF8" value="true" />
        </map>
        </property>
    </bean>
</beans>

According to the exception the property salesforce.config.dir might not be configured correctly but this is not the case - the directory "C:\Users\erik\dataloader\custom" is resolved correctly by process.bat and the process-conf.xml can be read.

Could you please help me with this issue?

0

You may be missing the Salesforce endpoint & your credentials. This documentation shows how to add them.

  • Hi, I had my credentials specified in config.properties. Even when I specify valid credentials within the XML as shown in the documentation - including the encrypted password, I am getting the same error. – epanzer Mar 19 at 17:48
  • Update: I can reproduce the same error every time I follow the linked tutorial without any customizations. For me this looks like a bug of the current version. – epanzer Mar 20 at 9:48
0

Salesforce devs released a fix to the issue. You can download the updated release from github or wait until 3/25 when available for download via Salesforce.

https://github.com/forcedotcom/dataloader/issues/179

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.