I have created a data service in WSo2 for exposing a table. I have also created an API for this, Now I wanted to match the API with this data service.
Please help how to do this.
Have you created the API in the ESB? You can create the API in the DSS itself[1] while creating the data service[1][2]. If you want to expose the datasservice via an ESB then the service endpoint of the created dataservice is available in the dataservice dashboard page which can be directly accessed by the ESB.
[1]https://docs.wso2.com/display/DSS321/Defining+Service+Operations
[2]https://docs.wso2.com/display/DSS321/Exposing+Data+as+REST+Resources
Related
In API Manager, I pass APIs in API Manager with respective services, also after reading documentacion of API Manager version 3.0.0 (https://apim.docs.wso2.com/en/latest/GettingStarted/overview/), I know in Publisher there exists a ESB, also in my case I work with this cases I think is part of ESB:
WSO2 OAuth Mediator(JAR).
File JSON by WSO2 OAuth Mediator, with endpoints referents to API's I'm cosuming.
In publisher page I add Custom Policies in request or response.
But existing WSO2 Enterprise Integrator (EI) version 6.6.0, this component have a ESB.
My questions are:
In my case, really I work with ESB?
How to integrate API Manager with EI?
WSO2 API Manager gateway is built on top of Synapse engine which is the same engine used in WSO2 EI (ESB). Using API Manager you can do simple mediation. But if you want to do any complex mediation, then you should use EI (ESB) along with API Manager.
WSO2 Documentation is not clear on how does the publishing of new API works.
Is is the publisher that pushes new API to the gateways ?
or
Is is the gateways that pulls or call new API configurations from the Manager ?
or
It is done through the database ?
And which protocol and ports does is uses ? An API Call, thrift, binairy ?
Thanks
There are 2 things happening when you publish an API.
1) Persist API metadata in the database. Both the API Publisher and the API store pull these data from the database to display APIs.
2) Runtime artifact (i.e. Synapse file) is deployed in the gateway. This is done via a SOAP web service call. The API Publisher calls a SOAP web service exposed in the gateway for this.
Hope I answered your question.
I have all wso2 products, but I don't understand how I can use Governance Registry in conjunction with rest webservices.
For example: I published a Rest Webservice in Governance, and now I want to use the service discovery to get the endpoint for this Webservice.
It's possible to do this with wso2 products?
Thanks
With WSO2 Governance Registry, you can discover endpoint details in three different ways: As example, if you are using WSO2 ESB(integration scenarios for Governance)
Share Registry space with both ESB and G-Reg
Use G-Reg to push artifacts into ESB node
ESB pull artifact from the G-Reg
Since you have already created a Rest Service in the G-Reg side, you can retrieve Endpoint details using Governance Rest API. It has an inbuilt functionality to retrieve Endpoint associated with a given RestService instance. You can find more details from this doc.
I want to change Gateway in WSO2 API Manager to point a local WSO2 ESB instance.
My question is: Is it possible to access to WSO2 ESB from Swagger console in API Manager instance?
To Answer your question in the title, Yes it is possible to call an API created in ESB if you have created an API using the ESB endpoint within WSO2 API manager. Please find more information on how to create an API using API manager in this document [1]. Once you have created an API within API manager you can invoke this using swagger console as explained at [2].
[1] https://docs.wso2.com/display/AM1100/Create+and+Publish+an+API
[2] https://docs.wso2.com/display/AM1100/Invoke+an+API+using+the+Integrated+API+Console
Cheers,
Pubudu.
I have a service exposed in my AS at the url: http://192.168.7.160:8284/customer/XXX where XXX is the customer id like http://192.168.7.160:8284/customer/1020
I'm having some difficult to create an API in Api Manager to consume this service.
I try to set the URL Pattern to /customer with a parameter named customer with no luck.
How can I consume this AS service in the Api Manager?