-
1. Re: SQL Query for Webservice
shawkins Jul 11, 2010 12:36 PM (in response to beginnerram)Hi Ramya,
invoke is necessary, but the parameters are flexible based upon you're needs. In the first example we're invoking rest so more endpoint information is needed to specify the query parameters. In the second example we're calling a different endpoint altogether than the one in the configuration. Typically if you just calling a soap service, you won't need to specify the endpoint as part of the procedure call.
With these dynamic vdb examples, you don't currently have the ability to further specify views and procedures to encapsulate the invoke procedures. That feature will be availble in Teiid 8. With non-dynamic vdbs, you can use Teiid Designer to add as many view and procedures as necessary to get your data in the form that you want.
As for having things look like a database automatically, I assume you mean querying tables instead of a procedure that returns XML. In Teiid Designer 7.1 they should get to retargeting XML-Relational import logic to generate the relational views and underlying invoke procedure calls for you given a WSDL. In general, except for rpc style calls with simple parameter types, generating the relational form of XML schemas - both input and output documents, is not simple and is best suited for a wizard. For 7.0 though that will have to be a manual exercise.
Importer logic for text files also doesn't exist in Designer 7.0, and I'm not sure if it will be part of 7.1.
Steve
-
2. Re: SQL Query for Webservice
beginnerram Jul 16, 2010 6:35 AM (in response to shawkins)Thanks Steven .. I am now trying to create VDB for webservice from Teiid designer 6.2 (in Galelio). I am using import Webservice as relational DB and then generate the DB for it. It perfectly works for Dpcument Literal webservice but for RPC encoded webservice i face some issues.
The soap request generated using teiid is
<?xml version="1.0" ?><S:Envelope xmlns:S="http://schemas.xmlsoap.org/soap/envelope/">
<S:Body>
<tns:testOp xmlns:tns="http://test.tcs.com" xmlns:mmn0="http://test.tcs.com">
<CheckinInput xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xsi:type="xsd:string">dd</CheckinInput>
</tns:testOp></S:Body></S:Envelope>But the expected request by the server is
<?xml version="1.0" encoding="UTF-8" ?>
<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<SOAP-ENV:Body>
<ns0:testOp SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/" xmlns:ns0="http://test.tcs.com">
<CheckinInput xsi:type="xsd:string">ljkl</CheckinInput>
</ns0:testOp>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>
The error i get is xmlns:xsd is not defined.. U could note the namespace for xsd is not generated in the soap request. Please let me know what sholud be done