Here's the outcome of my attempts to authenticate against SalesForce using the Teiid
connector.
Please note that my credentials work fine in logging into the test system's UI,
invoking plain old web services via JAX-RPC SOAP messages, or by means of using Mule's
SalesForce connector.
In the former case (JAXRPC-SOAP), I'm invoking the Enterprise API at this URL:
https://test.salesforce.com/services/Soap/c/18.0
In the latter case (Mule + SalesForce endpoint), I'm invoking the Partner API at this
URL:
https://test.salesforce.com/services/Soap/u/14.0
In all cases, I'm using my credentials with user id and password + security token.
When attempting to use the Teiid designer, when I click "Validate Credentials",
I get the following outcomes:
1. Against the default connection URL:
https://test.salesforce.com/services/Soap/u/10.0
I get:
INVALID_LOGIN: Invalid username, password, security token; or user Locked out.
2. Against the version 14 URL (which works with Mule ESB) I get:
org.xml.sax.SAXException: Invalid element in com.sforce.soap.partner.LoginResult -
sandbox
If I have time, I'll set up a proxy where I can compare the Mule SOAP messages against
Teiid's to see how Mule is successfully authenticating against the same URL.
- Mike
________________________________
From: John Doyle <jdoyle(a)redhat.com>
To: Mike Mascari <mascarim(a)yahoo.com>
Cc: teiid-users(a)lists.jboss.org
Sent: Thu, June 10, 2010 10:22:35 AM
Subject: Re: [teiid-users] Are there newer versions of the SalesForce connector for 6.2?
Hi Mike,
The 6.2 versions of the connector and importer are built against version 15 of the API.
There were changes in version 16 of the API that make 6.2 incompatible with version later
than 15. The forthcoming release is built with version 17 of the API.
The URL that you see in the importer for version 10 is just an oversight, the value was
never updated when we moved from version 10 to 14. There is also a JIRA on the validation
issue. (
https://jira.jboss.org/browse/TEIIDDES-418) The reason you get the NPE is because
this defect allowed you to click Next if you attempted to revalidate after a failed
validation.
Not to insult you, I don't know your level of knowledge about SalesForce, but I assume
you have a salesforce test instance? The importer and the connector will by default
connect to the standard SalesForce URL if you don't supply a value in that box. I
suggest allowing the importer to connect to the default URL as a first step just to ensure
that your install is in good shape. If that succeeds, than try it with the 15 version of
the test URL, but I can't say that it will work. The SalesForce API doc for version
15 of the API still list
https://test.salesforce.com/services/Soap/u/10.0 as the sandbox
URL.
Also, ensure that you're using password+securitytoken as your password.
As far as supporting the Enterprise API, it's something that I considered when
initially implementing the SF solution for Teiid, but decided upon the Partner API. What
do you consider the advantages of the Enterprise API?
~john
----- "Mike Mascari" <mascarim(a)yahoo.com> wrote:
A few additional notes:
1. The default Teiid URL is the Partner API 10.0 URL, and the below is the Enterprise API
URL (which would be really cool if supported by Teiid), but using the Partner API URL
fails as well, including trying to interoperate with versions 10 and 14.
2. Just to ensure that the SalesForce config works with other products and earlier
Partner API versions, I used Mule ESB's SalesForce support (via its
salesforce-partner-14.0.jar) to authenticate and query the set of contact records without
issue.
- Mike
________________________________
From: Mike Mascari <mascarim(a)yahoo.com>
To: teiid-users(a)lists.jboss.org
Sent: Wed, June 9, 2010 8:45:38 PM
Subject: [teiid-users] Are there newer versions of the SalesForce connector for 6.2?
I though I might give teiid a trial run with SalesForce, so I:
1. Installed Eclipse 3.4.2 (Ganymede)
2. Downloaded teiid_designer_6.2.0.v20090922.zip
3. Followed the docs, installed the software, restarted eclipse
4. Created a new Metadata Modeling -> Model project
5. Choose Import -> Metadata Modeling -> Salesforce as Relational Source Model
6. Supplied my Username and Password
7. Clicked "Override Connection URL" and supplied the test url:
https://test.salesforce.com/services/Soap/c/18.0
(which I note is eight versions higher that the default Teiid url)
8. Click Validate Credentials and get:
No operation available for request {urn:partner.soap.sforce.com}login
9. Click OK to dismiss the dialog
10. Click Validate Credentials again (for giggles), "Next ->" button becomes
enabled
11. Click Next ->, get:
Exception gathering salesforce metadata: java.lang.NullPointerException
12. Checked the <workspace>/.metadata/.log for any stack traces, but didn't
find anything.
Any tips on how to proceed?
- Mike
_______________________________________________
teiid-users mailing list
teiid-users(a)lists.jboss.org
https://lists.jboss.org/mailman/listinfo/teiid-users