Компонент Camel Salesforce REST API salesforce: запрос не может получить записи - PullRequest
0 голосов
/ 12 июня 2019

Я хочу выполнить SOQL с помощью компонента Salesforce: запроса API Camel Salesforce для получения контактов (контактов) SObject с использованием AccountId.Но он только возвращает контакт DTO, все поля которого являются нулевыми.И я отладил исходный код компонента Camel Salesforce и обнаружил, что он получил Ответ с кодом 200.

Кстати, кто-нибудь знает, как реализовать динамический SOQL, я обнаружил, что не могу использовать $ {body} вскажем, "sObjectQuery = SELECT LastName FROM Contact WHERE AccountID = '$ {body}'"

  1. Это простой проект maven
  2. DTO: Contact, Account был созданby camel-salesforce-maven-plugin
  3. Другой компонент Camel Salesforce REST API: salesforce: upsertSObject, salesforce: getSObjectWithId, salesforce: deleteSObjectWithId и salesforce: createSObject можно запустить и вернуть правильные результаты

Маршрут:

from("direct:query")
    .to("salesforce:query?sObjectQuery=SELECT LastName FROM Contact&sObjectClass="+ Contact.class.getName())
    .process(exchange -> {
        Object body = exchange.getIn().getBody();
        System.out.println(body.getClass());
        System.out.println(body);
 });
ProducerTemplate template = camelCtx.createProducerTemplate();
Object obj = template.requestBody("direct:query", null, Object.class);

Фактический результат: class com.salesforce.test.Contact {"Reporting_States__c": null, "Specialty__c": null}

Ожидаемый результат: вернуть объект QueryRecordsContact, который содержит поля списка контактов.(QueryRecordsContact - это DTO, созданный плагином Camel Salesforce maven)

...