[teiid-issues] [JBoss JIRA] (TEIID-4356) Add asort of connection test for "connection definitions" of resource adapters

Marco Ardito (JIRA) issues at jboss.org
Sat Jul 30 12:04:00 EDT 2016


    [ https://issues.jboss.org/browse/TEIID-4356?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13273190#comment-13273190 ] 

Marco Ardito edited comment on TEIID-4356 at 7/30/16 12:03 PM:
---------------------------------------------------------------

Sorry, I didn't meant that this is something broken in Teiid, I just submitted an idea to make things simpler, or more evident, when possible.
 
I know that a standard jdbc rdbms connection is much simpler to test (it's more or less always the same method), but that is the point, imho: I can test that kind of connection easily in many other ways (even connecting directly with squirrel, using the same jdbc driver for the rdbms). 

Other connection types (files/network protocols, specific connectors), which have no "test" button in Wildfly/Teiid, how can they be tested? Of course they could be very different from each other... In the linked thread, I tried to use php or soapui, but that didn't help either. Both connected, while Teiid didn't.

As Steven said above, at least some better error reporting when connection fails could help. In my case the remote server response was missing a rfc required field: Teiid was doing the right thing as for the rfc, but... that was invisible to me, I only got "server error"on the client, and many strange (to me) cfx errors in the server.log.

Probably Ramesh examined the code and spotted there what was happening? I would have tried to add CXF logging but Ramesh was faster to find the cause of the issue, and made a patch.

Maybe (eg) in that case Teiid could log a line like "access token received, but the remote server response is missing the required field token_type, so we can't use that -. see rfc xxx). That would also help a lot. 

Or, at least suggest in the docs how to get more details if connection doesn't seem to work... that kind of thing.


was (Author: m.ardito):
Sorry, I didn't meant that this is something broken in Teiid, I just submitted an idea to make things simpler, or more evident, when possible.
 
I know that a standard jdbc rdbms connection is much simpler to test (it's more or less always the same method), but that is the point, imho: I can test that kind of connection easily in many other ways (even connecting directly with squirrel, using the same jdbc driver for the rdbms). 

Other connection types (files/network protocols, specific connectors), which have no "test" button in Wildfly/Teiid, how can they be tested? Of course they could be very different from each other... In the linked thread, I tried to use php or soapui, but that didn't help either. Both connected, while Teiid didn't.

As Steven said above, at least some better error reporting when connection fails could help. In my case the remote server response was missing a rfc required field: Teiid was doing the right thing as for the rfc, but... that was invisible to me, I only got "server error"on the client, and many strange (to me)bcfx errors in the server.log.

Probably Ramesh examined the code and spotted there what was happening? I would have tried to add CXF logging but Ramesh was faster to find the cause of the issue, and made a patch.

Maybe (eg) in that case Teiid could log a line like "access token received, but the remote server response is missing the required field token_type, so we can't use that -. see rfc xxx). That would also help a lot. 

Or, at least suggest in the docs how to get more details if connection doesn't seem to work... that kind of thing.

> Add asort of connection test for "connection definitions" of resource adapters
> ------------------------------------------------------------------------------
>
>                 Key: TEIID-4356
>                 URL: https://issues.jboss.org/browse/TEIID-4356
>             Project: Teiid
>          Issue Type: Feature Request
>          Components: Misc. Connectors
>            Reporter: Marco Ardito
>            Assignee: Steven Hawkins
>            Priority: Minor
>
> Could a sort of "connection test" be implemented to verify if a "connection definition" specified for a resource adapter (eg: file, google, etc) is working, and can "connect" to the resource it's supposedly pointing to? 
> Data sources(jdbc) already have this kind of test, and it is quite useful to test if there's any error in their connection definition. 
> With resource adapters, one must define connection definitions, but it is not possible to test them, independently from later requests/queries (eg: reading data from .csv or .xls files, or oauth web services): one has to build all the chain and really try to get data from the source, using the vdb, hoping everything is correctly defined... 
> Recently I am struggling with a custom rest oauth2 RA, and I need to define
> - security domain (with client id/secret, tokens, auth uri)
> - RA using that domain
> - a connection definition for the RA accessing the remote data source
> - a VDB using the connection definition 
> - a client using the VDB to try get data in sql form
> any step could be wrong, but only the last allows to check if the whole chain is working, or not. 
> For any error or failure, regular users (like me) can't do anything else than double check everything... a "test connection" button, for the connection definition, would do wonders to simplify setup debug...
> Marco



--
This message was sent by Atlassian JIRA
(v6.4.11#64026)


More information about the teiid-issues mailing list