Live Data
Explanation
Live Data is a feature provided by the Live Data Macro extension. It displays structured data in a customizable way, and it provides APIs to define custom data sources as well as to configure the existing ones.
A Live Data instance is built in two parts, which meet in a JSON document. On the server, the "liveData" Macro or the Script Service turns its parameters and the advanced configuration written in the Macro content into a complete Live Data Configuration. In the browser, a Vue widget reads that configuration and renders the entries using the layout, the displayers and the filters it names, fetching the entries themselves over REST.
Everything the widget knows about the data comes from its source, which is looked up as a Component under the hint given in the source Macro parameter. A source answers two questions, through two stores: which entries match a query, and which properties those entries have (including whether each one can be sorted, filtered or edited). A source that implements none of the writing operations simply yields a Live Data the reader can browse but not change.
The front-end is extended the same way: layouts, displayers, filters and panels are registered by name, and picked up by the configuration that names them. All the roles, on both sides, are listed in Live Data Extension Points. The widget itself ships as a webjar, described in Live Data Webjar API, and exposes a JavaScript API on the container of each instance. When a Live Data returns the wrong entries, it can be debugged by reading its query from the logs.
FAQ
Do I have to write Java to add a Live Data source?
Yes for the source itself, which is a Java Component; the liveTable source often avoids it, since it turns any live table results page into a source.
How do I make a Live Data read-only?
By leaving save and remove out of the LiveDataEntryStore implementation: their default implementations throw UnsupportedOperationException.
Where does configuration that no Macro parameter covers go?
In the Macro content, as JSON, described in Live Data Configuration.
More
To find more about the current topic, you can search or use the table below and filter the columns to narrow your choices.