无法创建骆驼 salesforce 端点
Unable to create camel salesforce endpoint
我正在尝试使用 Apache Camel salesforce 组件连接到 salesforce。
这是我尝试开始的一条非常简单的路线:
@Override
public void configure() throws Exception {
from("salesforce:event/Case__e")
.to("mock:end");
}
当我尝试启动它时,我收到一个明显的错误提示我没有指定客户端 ID:
Caused by: java.lang.IllegalArgumentException: clientId must be specified
at org.apache.camel.util.ObjectHelper.notNull(ObjectHelper.java:149) ~[camel-util-3.16.0.jar:3.16.0]
at org.apache.camel.component.salesforce.SalesforceLoginConfig.validate(SalesforceLoginConfig.java:238) ~[camel-salesforce-3.16.0.jar:3.16.0]
根据 Camel 文档,这非常有意义,因为必须指定 clentId 参数。为了解决这个问题,我指定了一个 clientId
如下:
@Override
public void configure() throws Exception {
from("salesforce:event/Case__e?clientId=xyz")
.to("mock:end");
}
这次尝试启动路线时,我收到一个相当奇怪的错误,抱怨 clientId
是一个未知参数:
Failed to resolve endpoint: salesforce://event/Case__e?clientId=xyz due to: There are 1 parameters that couldn't be set on the endpoint.
Check the uri if the parameters are spelt correctly and that they are properties of the endpoint.
Unknown parameters=[{clientId=xyz}]
不确定我做错了什么以及我应该如何解决这个问题。
提前感谢您的意见。
您的问题与 clientId
is a component option 这一事实有关,因此当您尝试将其配置为无法工作的查询参数/端点选项时,必须在组件级别对其进行配置。
根据您使用的运行时,配置组件的方式可能会改变,但思路保持不变。
例如,假设您使用 application.properties
配置您的应用程序,您的 salesforce 组件的配置将如下所示:
在application.properties
# Salesforce credentials
camel.component.salesforce.login-config.client-id=<Your Client ID>
camel.component.salesforce.login-config.client-secret=<Your Client Secret>
camel.component.salesforce.login-config.refresh-token=<Your Refresh Token>
...
这是一个销售人员示例https://github.com/apache/camel-examples/blob/main/examples/salesforce-consumer/
我正在尝试使用 Apache Camel salesforce 组件连接到 salesforce。
这是我尝试开始的一条非常简单的路线:
@Override
public void configure() throws Exception {
from("salesforce:event/Case__e")
.to("mock:end");
}
当我尝试启动它时,我收到一个明显的错误提示我没有指定客户端 ID:
Caused by: java.lang.IllegalArgumentException: clientId must be specified
at org.apache.camel.util.ObjectHelper.notNull(ObjectHelper.java:149) ~[camel-util-3.16.0.jar:3.16.0]
at org.apache.camel.component.salesforce.SalesforceLoginConfig.validate(SalesforceLoginConfig.java:238) ~[camel-salesforce-3.16.0.jar:3.16.0]
根据 Camel 文档,这非常有意义,因为必须指定 clentId 参数。为了解决这个问题,我指定了一个 clientId
如下:
@Override
public void configure() throws Exception {
from("salesforce:event/Case__e?clientId=xyz")
.to("mock:end");
}
这次尝试启动路线时,我收到一个相当奇怪的错误,抱怨 clientId
是一个未知参数:
Failed to resolve endpoint: salesforce://event/Case__e?clientId=xyz due to: There are 1 parameters that couldn't be set on the endpoint.
Check the uri if the parameters are spelt correctly and that they are properties of the endpoint.
Unknown parameters=[{clientId=xyz}]
不确定我做错了什么以及我应该如何解决这个问题。
提前感谢您的意见。
您的问题与 clientId
is a component option 这一事实有关,因此当您尝试将其配置为无法工作的查询参数/端点选项时,必须在组件级别对其进行配置。
根据您使用的运行时,配置组件的方式可能会改变,但思路保持不变。
例如,假设您使用 application.properties
配置您的应用程序,您的 salesforce 组件的配置将如下所示:
在application.properties
# Salesforce credentials
camel.component.salesforce.login-config.client-id=<Your Client ID>
camel.component.salesforce.login-config.client-secret=<Your Client Secret>
camel.component.salesforce.login-config.refresh-token=<Your Refresh Token>
...
这是一个销售人员示例https://github.com/apache/camel-examples/blob/main/examples/salesforce-consumer/