![]() |
VOOZH | about |
Servoy is a rapid application development and deployment platform. When paired with the CData JDBC Driver for Elasticsearch, users can build Elasticsearch-connected apps that work with live Elasticsearch data. This article describes how to connect to Elasticsearch from Servoy and build a simple web app to display and search Elasticsearch data.
With built-in optimized data processing, the CData JDBC Driver offers unmatched performance for interacting with live Elasticsearch data. When you issue complex SQL queries to Elasticsearch, the driver pushes supported SQL operations, like filters and aggregations, directly to Elasticsearch and utilizes the embedded SQL engine to process unsupported operations client-side (often SQL functions and JOIN operations). Its built-in dynamic metadata querying lets you work with Elasticsearch data using native data types.
Accessing and integrating live data from Elasticsearch has never been easier with CData. Customers rely on CData connectivity to:
Users frequently integrate Elasticsearch data with analytics tools such as Crystal Reports, Power BI, and Excel, and leverage our tools to enable a single, federated access layer to all of their data sources, including Elasticsearch.
For more information on CData's Elasticsearch solutions, check out our Knowledge Base article: CData Elasticsearch Driver Features & Differentiators.
To build Elasticsearch-connected apps, you need to first create a data provider in Servoy Developer using the CData JDBC Driver for Elasticsearch.
Set the URL, for example: jdbc:elasticsearch:Server=127.0.0.1;Port=9200;User=admin;Password=123456;
For assistance in constructing the JDBC URL, use the connection string designer built into the Elasticsearch JDBC Driver. Either double-click the JAR file or execute the jar file from the command-line.
java -jar cdata.jdbc.elasticsearch.jar
Fill in the connection properties and copy the connection string to the clipboard.
Set the Server and Port connection properties to connect. To authenticate, set the User and Password properties, PKI (public key infrastructure) properties, or both. To use PKI, set the SSLClientCert, SSLClientCertType, SSLClientCertSubject, and SSLClientCertPassword properties.
The data provider uses X-Pack Security for TLS/SSL and authentication. To connect over TLS/SSL, prefix the Server value with 'https://'. Note: TLS/SSL and client authentication must be enabled on X-Pack to use PKI.
Once the data provider is connected, X-Pack will then perform user authentication and grant role permissions based on the realms you have configured.
๐ Using the built-in connection string designer to generate a JDBC URL (Salesforce is shown.)Once you have configured the connection to Elasticsearch in the Servoy Developer resources, you are ready to build apps with access to live Elasticsearch data.
Right-click "Forms" and select "Create new form."
Drag a column component onto the Data Grid and set the "dataprovider" property for each column component to a column from the Elasticsearch "table" (e.g., OrderName from the Orders table).
Continue adding columns as desired.
Note that the "svySearch" extension is required to add search functionality (included by default when you create a new solution). If you did not add the extension when you created the solution or you are modifying an existing solution, you can add the search module by right-clicking Modules (in the solution) and selecting "Add Module." Select "svySearch" and click "OK."
var searchText = '';
var search = scopes.svySearch.createSimpleSearch(foundset).setSearchText(searchText); search.setSearchAllColumns(); search.loadRecords(foundset);
Save the form and JavaScript file, then click Run -> Launch NGClient to start the web app.
๐ A simple web app.Download a free, 30-day trial of the CData JDBC Driver for Elasticsearch and start building Elasticsearch-connected apps with Servoy. Reach out to our Support Team if you have any questions.
Download a free trial of the Elasticsearch Driver to get started:
Download NowLearn more:
๐ Elasticsearch IconRapidly create and deploy powerful Java applications that integrate with Elasticsearch.