[
https://issues.jboss.org/browse/TEIID-4374?page=com.atlassian.jira.plugin...
]
Ramesh Reddy commented on TEIID-4374:
-------------------------------------
are you saying I should create a wrapper that includes the parameters
and the body? What are the semantics for this?
No, with simple parameters Teiid will do necessary conversions to call the Swagger
service. As a user you need focus on the executing with SQL interface exposed. Only in the
case where BODY parameter is projected as CLOB, then you would need to build the target
input document according to the Swagger schema defined then pass through the SQL
interface.
How would you distinguish between path and query parameters?
You don't, Teiid is providing a abstraction layer to swagger service in
relational database terms, in this case as a stored procedure.
Is it then the responsibility of your code (the Swagger translator)
Yes, it is swagger translator which converts to final form.
the Teiid OData interface code to unwrap this?
OData interface
is built on top of the SQL interface exposed by Teiid. If the procedure is exposed as
"Action", then it is ALWAYS a POST call. Then you need to follow the metadata of
the OData interface to execute that call. With the POST the only way to send parameters is
in BODY. But do not confuse this with Swagger service definition, you need to follow the
OData metadata here. If this is exposed as "Function" then it is GET call.
Procedure missing for an OData metadata request to a Swagger VDB
----------------------------------------------------------------
Key: TEIID-4374
URL:
https://issues.jboss.org/browse/TEIID-4374
Project: Teiid
Issue Type: Bug
Components: Misc. Connectors
Affects Versions: 9.0, 9.0.1, 9.0.2
Environment: Windows 10 Pro x64
Java 8
Reporter: Van Dillon
Assignee: Ramesh Reddy
Labels: Beta1
Fix For: 9.1
Attachments: resource-adapter-rhq.xml, rhq-metadata.xml, rhq-vdb.xml,
swagger.json
When a REST PUT path defined in Swagger has a path parameter and a body it does not
appear in OData metadata.
See the attached swagger.json for an example. The operation 'executeOperation'
does not appear in OData metadata.
The code that determines if a procedure is allowed is in:
org.teiid.olingo.service.ODataSchemaBuilder.allowedProcedure()
The comment seems to indicate that as long as there is only a single LOB, multiple
'in' parameters are allowed. But the actual code does not allow any other
'in' parameters if there is a LOB parameter.
--
This message was sent by Atlassian JIRA
(v6.4.11#64026)