我最近升级到 ODI 5.5.1 和 Java 1.7。由于这样做,我无法使用 tSalesforceOutputBulkExec 对 Salesforce 执行批量处理。尝试运行作业时,我始终收到以下异常消息。
Starting job TestBulk at 10:50 13/08/2014.
[statistics] connecting to socket on port 3438
[statistics] connected
Exception in thread "main" java.lang.IllegalAccessError: tried to access method com.sforce.async.BatchRequest.loadBatchInfo(Ljava/io/InputStream;)Lcom/sforce/async/BatchInfo; from class com.sforce.async.BulkConnection
at com.sforce.async.BulkConnection.createBatchFromStreamImpl(BulkConnection.java:154)
at com.sforce.async.BulkConnection.createBatchFromStream(BulkConnection.java:131)
at org.talend.salesforceBulk.SalesforceBulkAPI.createBatch(SalesforceBulkAPI.java:369)
at org.talend.salesforceBulk.SalesforceBulkAPI.createBatchesFromCSVFile(SalesforceBulkAPI.java:355)
at org.talend.salesforceBulk.SalesforceBulkAPI.executeBulk(SalesforceBulkAPI.java:122)
at prototyping.testbulk_0_1.TestBulk.tSalesforceInput_1Process(TestBulk.java:2180)
at prototyping.testbulk_0_1.TestBulk.runJobInTOS(TestBulk.java:2522)
at prototyping.testbulk_0_1.TestBulk.main(TestBulk.java:2368)
[statistics] disconnected
Job TestBulk ended at 10:50 13/08/2014. [exit code=1]
异常似乎发生在作为 talend 构建的一部分提供的 wsc.jar 中,但它来自 salesforce 提供并托管在https://code.google.com/p/sfdc-wsc/downloads/上的开源包列表
我不确定我看到的问题是在 wsc jar 中还是在我的设置中。有没有其他人看到或解决过这个问题?我应该替换 wsc.jar 文件吗?如果是,这是替换 OS_DI-Win32-r118616-V5.5.1\plugins\org.talend.designer.components.localprovider_5.5.1.r118616\components\tSalesforceBulkExec\wsc 的正确 jar。罐