Integrate Apache Unomi with Salesforce, bring the Salesforce connector on unomi karaf shell to active state

41 Views Asked by At

We are working on integrating Apache Unomi with Salesforce.

We have configured Apache Unomi on Azure Linux VM instance as container.

`
CONTAINER ID   IMAGE                                                 COMMAND                      CREATED      STATUS         PORTS                                                                                                                             NAMES
fa067d6b1cce   unomi-2.4.0:nov14                                     "/__cacert_entrypoin…"    2 days ago   Up 9 minutes   0.0.0.0:8102->8102/tcp, :::8102->8102/tcp, 0.0.0.0:8181->8181/tcp, :::8181->8181/tcp, 0.0.0.0:9443->9443/tcp, :::9443->9443/tcp   unomi

cc954e574925 docker.elastic.co/elasticsearch/elasticsearch:7.4.2 "/usr/local/bin/dock…" 2 days ago Up 9 minutes 0.0.0.0:9200->9200/tcp, :::9200->9200/tcp, 9300/tcp `

The karaf shell shows the bundle list for unomi-salesforce-connector extensions as Active/Installed/Failure.

253 │ GracePeriod │  80 │ 2.4.0.sources  │ unomi-salesforce-connector-actions
254 │ Active      │  80 │ 3.2.2          │ Apache Commons Collections
255 │ Active      │  80 │ 2.4.0.sources  │ unomi-salesforce-connector-rest
256 │ Failure     │  80 │ 2.4.0.sources  │ unomi-salesforce-connector-services
257 │ Active      │  80 │ 2.4.0.sources  │ unomi-salesforce-connector-karaf-kar
258 │ Installed   │  80 │ 2.4.0          │ Apache Unomi :: Extensions :: Salesforce connector :: Service
259 │ Installed   │  80 │ 2.4.0          │ Apache Unomi :: Extensions :: Salesforce connector :: Rule Actions
260 │ Active      │  80 │ 1.9.4          │ Apache Commons BeanUtils
261 │ Failure     │  80 │ 2.4.0.sources  │ unomi-scripting
262 │ Active      │  80 │ 2.4.0.javadoc  │ unomi-scripting
263 │ Active      │  80 │ 3.3.2          │ Apache Commons Lang
264 │ Active      │  80 │ 0.0.0          │ META-INF
265 │ Active      │  80 │ 2.4.0.javadoc  │ unomi-salesforce-connector-actions
266 │ Active      │  80 │ 2.4.0.features │ unomi-salesforce-connector-karaf-kar
267 │ Active      │  80 │ 0.0.0          │ OSGI-INF
268 │ Active      │  80 │ 2.4.0.javadoc  │ unomi-salesforce-connector-services
269 │ Installed   │  80 │ 2.4.0          │ Apache Unomi :: Extensions :: Salesforce connector :: REST API
270 │ Active      │  80 │ 2.4.0.javadoc  │ unomi-salesforce-connector-rest
271 │ Active      │  80 │ 0.0.0          │ org
272 │ Installed   │  80 │ 5.0.16         │ CometD :: Java :: Client :: HTTP :: Common

` Following the below article to integrate the same and getting below error. https://github.com/apache/unomi/blob/master/manual/src/main/asciidoc/connectors/salesforce-connector.adoc

karaf@root()> feature:repo-add mvn:org.apache.unomi/unomi-salesforce-connector-karaf-kar/2.5.0-SNAPSHOT/xml/features
Adding feature url mvn:org.apache.unomi/unomi-salesforce-connector-karaf-kar/2.5.0- SNAPSHOT/xml/features
karaf@root()> feature:install unomi-salesforce-connector-karaf-kar
Error executing command: Unable to resolve root: missing requirement [root] osgi.identity;  osgi.identity=unomi-salesforce-connector-karaf-kar; type=karaf.feature; version="[2.5.0.SNAPSHOT,2.5.0.SNAPSHOT]"; filter:="(&(osgi.identity=unomi-salesforce-connector-karaf-kar)(type=karaf.feature)(version>=2.5.0.SNAPSHOT)(version<=2.5.0.SNAPSHOT))" [caused by: Unable to resolve unomi-salesforce-connector-karaf-kar/2.5.0.SNAPSHOT: missing requirement [unomi-salesforce-connector-karaf-kar/2.5.0.SNAPSHOT] osgi.identity; osgi.identity=org.apache.unomi.salesforce-connector-actions; type=osgi.bundle; version="[2.5.0.SNAPSHOT,2.5.0.SNAPSHOT]"; resolution:=mandatory [caused by: Unable to resolve org.apache.unomi.salesforce-connector-actions/2.5.0.SNAPSHOT: missing requirement [org.apache.unomi.salesforce-connector-actions/2.5.0.SNAPSHOT] osgi.wiring.package; filter:="(&(osgi.wiring.package=org.apache.unomi.api)(version>=2.5.0)(!(version>=3.0.0)))"]]
karaf@root()>

Also tried installing the missing requirements manually, but the message for missing components goes in a loop, asking for many more missing components.
 
Below is the url to test the connectivity to salesforce.
https://localhost:9443/cxs/sfdc/version
https://localhost:9443/cxs/sfdc/limits

    curl -vk https://localhost:9443/cxs/sfdc/version

    * SSL connection using TLSv1.3 / TLS_AES_256_GCM_SHA384
    * ALPN, server did not agree to a protocol
    * Server certificate:
    *  subject: C=CH; ST=Geneva; L=Geneva; O=Apache Foundation; OU=Apache Unomi; CN=Apache Unomi
    *  start date: Nov 10 13:49:17 2017 GMT
    *  expire date: Nov  8 13:49:17 2027 GMT
    *  issuer: C=CH; ST=Geneva; L=Geneva; O=Apache Foundation; OU=Apache Unomi; CN=Apache Unomi
    *  SSL certificate verify result: self-signed certificate (18), continuing anyway.
    * TLSv1.2 (OUT), TLS header, Supplemental data (23):
    > GET /cxs/sfdc/version HTTP/1.1
    > Host: localhost:9443
    > User-Agent: curl/7.81.0
    > Accept: */*
    >
    * TLSv1.2 (IN), TLS header, Supplemental data (23):
    * TLSv1.3 (IN), TLS handshake, Newsession Ticket (4):
    * TLSv1.2 (IN), TLS header, Supplemental data (23):
    * Mark bundle as not supporting multiuse < HTTP/1.1 401 Unauthorized < WWW-Authenticate: Basic realm="cxs"
    < Date: Thu, 16 Nov 2023 11:03:58 GMT
    < Content-Length: 0
    < Server: Jetty(9.4.43.v20210629)
    <
    * Connection #0 to host localhost left intact


The moment we provide the credentials, the page errors out.
Request your help in resolving the issue.


I tried manually installing the missing requirements onto deploy folder on unomi instance, but the error for missing components goes in loop asking for few more requirements.
I need help in getting the salesforce connector extension in Active state and the connectivity to Salesforce url to be successfully established.
0

There are 0 best solutions below