[JBoss JIRA] (TEIID-4876) Salesforce connector not working properly in 9.2.2 release
by Jeff Davis (JIRA)
Jeff Davis created TEIID-4876:
---------------------------------
Summary: Salesforce connector not working properly in 9.2.2 release
Key: TEIID-4876
URL: https://issues.jboss.org/browse/TEIID-4876
Project: Teiid
Issue Type: Bug
Components: Salesforce Connector
Affects Versions: 9.2.2
Environment: MacOS{{monospaced text}}
Reporter: Jeff Davis
Assignee: Steven Hawkins
The Salesforce connector does not appear to work in the 9.2.2 release (using resource adpater salesforce-34). Here's the relevant entry in the standalone-teiid.xml file:
{{<resource-adapter id="sf34">
<module slot="main" id="org.jboss.teiid.resource-adapter.salesforce-34"/>
<transaction-support>NoTransaction</transaction-support>
<connection-definitions>
<connection-definition class-name="org.teiid.resource.adapter.salesforce.SalesForceManagedConnectionFactory" jndi-name="java:/sfDS" enabled="true" use-java-context="true" pool-name="teiid-sf-ds">
<config-property name="URL">
https://www.salesforce.com/services/Soap/u/34.0
</config-property>
<config-property name="password">
[[not shown]]
</config-property>
<config-property name="username">
lightning(a)zazarie.com
</config-property>
</connection-definition>
</connection-definitions>
</resource-adapter>}}
And here is my dynamic VDB xml (SFDCVdb-vdb.xml):
{{<vdb name="SFDCVdb" version="1">
<description/>
<property name="validationDateTime" value="Fri Apr 21 14:41:27 MDT 2017"/>
<property name="validationVersion" value="9.2.2"/>
<model name="SFSourceModel">
<source connection-jndi-name="java:/sfDS" name="SFSourceModel"
translator-name="salesforce-34"/>
<metadata type="DDL"><![CDATA[
CREATE FOREIGN TABLE Account (
Id string(18) NOT NULL DEFAULT 'Generated upon creation' OPTIONS(NAMEINSOURCE 'Id', NATIVE_TYPE 'id', "teiid_sf:Defaulted on Create" 'TRUE'),
IsDeleted boolean OPTIONS(NAMEINSOURCE 'IsDeleted', NATIVE_TYPE 'boolean', "teiid_sf:Defaulted on Create" 'TRUE'),
MasterRecordId string(18) OPTIONS(NAMEINSOURCE 'MasterRecordId', NATIVE_TYPE 'id'),
Name string(255) OPTIONS(NAMEINSOURCE 'Name', NATIVE_TYPE 'string'),
Type string(40) OPTIONS(NAMEINSOURCE 'Type', NATIVE_TYPE 'picklist', "teiid_sf:Picklist Values" 'Prospect,Customer - Direct,Customer - Channel,Channel Partner / Reseller,Installation Partner,Technology Partner,Other'),
ParentId string(18) OPTIONS(NAMEINSOURCE 'ParentId', NATIVE_TYPE 'id'),
BillingStreet string(255) OPTIONS(NAMEINSOURCE 'BillingStreet', NATIVE_TYPE 'textarea', SEARCHABLE 'UNSEARCHABLE'),
BillingCity string(40) OPTIONS(NAMEINSOURCE 'BillingCity', NATIVE_TYPE 'string'),
BillingState string(80) OPTIONS(NAMEINSOURCE 'BillingState', NATIVE_TYPE 'string'),
BillingPostalCode string(20) OPTIONS(NAMEINSOURCE 'BillingPostalCode', NATIVE_TYPE 'string'),
BillingCountry string(80) OPTIONS(NAMEINSOURCE 'BillingCountry', NATIVE_TYPE 'string'),
ShippingStreet string(255) OPTIONS(NAMEINSOURCE 'ShippingStreet', NATIVE_TYPE 'textarea', SEARCHABLE 'UNSEARCHABLE'),
ShippingCity string(40) OPTIONS(NAMEINSOURCE 'ShippingCity', NATIVE_TYPE 'string'),
ShippingState string(80) OPTIONS(NAMEINSOURCE 'ShippingState', NATIVE_TYPE 'string'),
ShippingPostalCode string(20) OPTIONS(NAMEINSOURCE 'ShippingPostalCode', NATIVE_TYPE 'string'),
ShippingCountry string(80) OPTIONS(NAMEINSOURCE 'ShippingCountry', NATIVE_TYPE 'string'),
Phone string(40) OPTIONS(NAMEINSOURCE 'Phone', NATIVE_TYPE 'phone'),
Fax string(40) OPTIONS(NAMEINSOURCE 'Fax', NATIVE_TYPE 'phone'),
AccountNumber string(40) OPTIONS(NAMEINSOURCE 'AccountNumber', NATIVE_TYPE 'string'),
Website string(255) OPTIONS(NAMEINSOURCE 'Website', NATIVE_TYPE 'url'),
Sic string(20) OPTIONS(NAMEINSOURCE 'Sic', NATIVE_TYPE 'string'),
Industry string(40) OPTIONS(NAMEINSOURCE 'Industry', NATIVE_TYPE 'picklist', "teiid_sf:Picklist Values" 'Agriculture,Apparel,Banking,Biotechnology,Chemicals,Communications,Construction,Consulting,Education,Electronics,Energy,Engineering,Entertainment,Environmental,Finance,Food & Beverage,Government,Healthcare,Hospitality,Insurance,Machinery,Manufacturing,Media,Not For Profit,Recreation,Retail,Shipping,Technology,Telecommunications,Transportation,Utilities,Other'),
AnnualRevenue double OPTIONS(NAMEINSOURCE 'AnnualRevenue', NATIVE_TYPE 'currency', CURRENCY 'TRUE'),
NumberOfEmployees integer OPTIONS(NAMEINSOURCE 'NumberOfEmployees', NATIVE_TYPE 'int'),
Ownership string(40) OPTIONS(NAMEINSOURCE 'Ownership', NATIVE_TYPE 'picklist', "teiid_sf:Picklist Values" 'Public,Private,Subsidiary,Other'),
TickerSymbol string(20) OPTIONS(NAMEINSOURCE 'TickerSymbol', NATIVE_TYPE 'string'),
Description string(32000) OPTIONS(NAMEINSOURCE 'Description', NATIVE_TYPE 'textarea', SEARCHABLE 'UNSEARCHABLE'),
Rating string(40) OPTIONS(NAMEINSOURCE 'Rating', NATIVE_TYPE 'picklist', "teiid_sf:Picklist Values" 'Hot,Warm,Cold'),
Site string(80) OPTIONS(NAMEINSOURCE 'Site', NATIVE_TYPE 'string'),
OwnerId string(18) OPTIONS(NAMEINSOURCE 'OwnerId', NATIVE_TYPE 'id', "teiid_sf:Defaulted on Create" 'TRUE'),
LastActivityDate date OPTIONS(NAMEINSOURCE 'LastActivityDate', NATIVE_TYPE 'date'),
Jigsaw string(20) OPTIONS(NAMEINSOURCE 'Jigsaw', NATIVE_TYPE 'string'),
pnccanvaspck__CustomerPriority__c string(255) OPTIONS(NAMEINSOURCE 'pnccanvaspck__CustomerPriority__c', NATIVE_TYPE 'picklist', "teiid_sf:Picklist Values" 'High,Low,Medium', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__SLA__c string(255) OPTIONS(NAMEINSOURCE 'pnccanvaspck__SLA__c', NATIVE_TYPE 'picklist', "teiid_sf:Picklist Values" 'Gold,Silver,Platinum,Bronze', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__Active__c string(255) OPTIONS(NAMEINSOURCE 'pnccanvaspck__Active__c', NATIVE_TYPE 'picklist', "teiid_sf:Picklist Values" 'No,Yes', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__NumberofLocations__c double OPTIONS(NAMEINSOURCE 'pnccanvaspck__NumberofLocations__c', NATIVE_TYPE 'double', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__UpsellOpportunity__c string(255) OPTIONS(NAMEINSOURCE 'pnccanvaspck__UpsellOpportunity__c', NATIVE_TYPE 'picklist', "teiid_sf:Picklist Values" 'Maybe,No,Yes', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__SLASerialNumber__c string(10) OPTIONS(NAMEINSOURCE 'pnccanvaspck__SLASerialNumber__c', NATIVE_TYPE 'string', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__SLAExpirationDate__c date OPTIONS(NAMEINSOURCE 'pnccanvaspck__SLAExpirationDate__c', NATIVE_TYPE 'date', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__Business_Hours__c string(100) OPTIONS(NAMEINSOURCE 'pnccanvaspck__Business_Hours__c', NATIVE_TYPE 'string', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__Location__Latitude__s double OPTIONS(NAMEINSOURCE 'pnccanvaspck__Location__Latitude__s', NATIVE_TYPE 'double', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__Location__Longitude__s double OPTIONS(NAMEINSOURCE 'pnccanvaspck__Location__Longitude__s', NATIVE_TYPE 'double', "teiid_sf:Custom" 'TRUE'),
pnccanvaspck__Time_Zone__c string(10) OPTIONS(NAMEINSOURCE 'pnccanvaspck__Time_Zone__c', NATIVE_TYPE 'string', "teiid_sf:Custom" 'TRUE'),
CONSTRAINT Id_PK PRIMARY KEY(Id),
CONSTRAINT FK_Account_ParentId FOREIGN KEY(ParentId) REFERENCES Account(Id)
) OPTIONS(NAMEINSOURCE 'Account', UPDATABLE 'TRUE', "teiid_sf:Supports Search" 'TRUE', "teiid_sf:Supports Replicate" 'TRUE', "teiid_sf:Supports Merge" 'TRUE', "teiid_sf:Supports Create" 'TRUE', "teiid_sf:Supports Delete" 'TRUE', "teiid_sf:Supports Query" 'TRUE', "teiid_sf:Supports Retrieve" 'TRUE')
]]></metadata>
</model>
<model name="SFViewModel" type="VIRTUAL">
<property name="imports" value="SFSourceModel"/>
<metadata type="DDL"><![CDATA[
CREATE VIEW Account (
Name string(255)
) OPTIONS(UPDATABLE 'TRUE')
AS
SELECT
SFSourceModel.Account.Name
FROM
SFSourceModel.Account;
]]></metadata>
</model>
</vdb>}}
I tried this same exact configuration in the 8.13.7 release and it worked.
Steven remarked the following:
"It looks like the change to build using the feature-packs broke the dependencies for the salesforce-34 resource adapter."
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 8 months
[JBoss JIRA] (TEIID-4867) Loosen up OData4 URL validation or parsing
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-4867?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-4867:
-------------------------------------
[~dsteigne] Yes, it will take some work, I will have something soon.
> Loosen up OData4 URL validation or parsing
> ------------------------------------------
>
> Key: TEIID-4867
> URL: https://issues.jboss.org/browse/TEIID-4867
> Project: Teiid
> Issue Type: Bug
> Components: OData
> Affects Versions: 8.12.8.6_3
> Environment: JDV 6.3.2
> Windows 7
> Reporter: Steve Tran
> Assignee: Steven Hawkins
>
> I'm accessing my JDV table via OData4 through Salesforce's UI builder. The salesforce engine itself is creating the OData calls, and whenever a $filter is needed with multiple columns, it looks like salesforce pads the column name with a space in front and behind. That'll make the URL look like ...$filter={color:red}%20{color}ColumnA{color:red}%20{color}eq%20123%20and{color:red}%20{color}ColumnB{color:red}%20{color}eq...
> The first space right after the $filter= throws off the JDV engine as it thinks it's a malformed URL - which I guess it is. The thing is when I tested it via the OData2 interface, it accepted it just fine. I'm not sure if the OData4 specifications explicitly state in terms of the URL, so it could be anybody's bug. Perhaps we could make JDV a little more forgiving and trim the spaces after un-URL-encoding the URI.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 8 months
[JBoss JIRA] (TEIID-4867) Loosen up OData4 URL validation or parsing
by Debbie Steigner (JIRA)
[ https://issues.jboss.org/browse/TEIID-4867?page=com.atlassian.jira.plugin... ]
Debbie Steigner commented on TEIID-4867:
----------------------------------------
[~rareddy] Customer is requesting that we do something to lax the URL, is there anything we can do without Olingo changing?
> Loosen up OData4 URL validation or parsing
> ------------------------------------------
>
> Key: TEIID-4867
> URL: https://issues.jboss.org/browse/TEIID-4867
> Project: Teiid
> Issue Type: Bug
> Components: OData
> Affects Versions: 8.12.8.6_3
> Environment: JDV 6.3.2
> Windows 7
> Reporter: Steve Tran
> Assignee: Steven Hawkins
>
> I'm accessing my JDV table via OData4 through Salesforce's UI builder. The salesforce engine itself is creating the OData calls, and whenever a $filter is needed with multiple columns, it looks like salesforce pads the column name with a space in front and behind. That'll make the URL look like ...$filter={color:red}%20{color}ColumnA{color:red}%20{color}eq%20123%20and{color:red}%20{color}ColumnB{color:red}%20{color}eq...
> The first space right after the $filter= throws off the JDV engine as it thinks it's a malformed URL - which I guess it is. The thing is when I tested it via the OData2 interface, it accepted it just fine. I'm not sure if the OData4 specifications explicitly state in terms of the URL, so it could be anybody's bug. Perhaps we could make JDV a little more forgiving and trim the spaces after un-URL-encoding the URI.
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 8 months
[JBoss JIRA] (TEIID-4824) Add unique id as a configuration property in the Google Resource adapter
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-4824?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-4824.
-----------------------------------
Resolution: Done
pulled back to 6.4 as well. Also added TEIID-4434
> Add unique id as a configuration property in the Google Resource adapter
> ------------------------------------------------------------------------
>
> Key: TEIID-4824
> URL: https://issues.jboss.org/browse/TEIID-4824
> Project: Teiid
> Issue Type: Enhancement
> Components: Misc. Connectors
> Affects Versions: 8.12.8.6_3
> Reporter: Debbie Steigner
> Assignee: Steven Hawkins
> Fix For: 9.3, 8.12.x-6.4
>
>
> Currently, only the google spreadsheet name can be used in the Google Resource adapter instead of the unique id of the document. If there is more than one document with same name in multiple folders the wrong file may be picked up by the resource adapter. Is it possible to use unique document ID instead of spreadsheet name for google data source
--
This message was sent by Atlassian JIRA
(v7.2.3#72005)
8 years, 8 months