JSDO with webspeed environment - Forum - OpenEdge Development - Progress Community
 Forum

JSDO with webspeed environment

  • We have a web application written in webspeed. There are services that generate json responses. I have had some success with populating grids, but I am not quite sure why or if these services need to be converted in order to utilize the JSDO for integration into the kendo UI components.

    I have reviewed the whitepaper and it makes sense, but I am still unclear on what exactly a JSDO will provide that I cannot already do using the existing services. Can someone clarify? Thanks in advance.

  • Hello,

    OpenEdge provides several options to access business logic on the server and the OpenEdge database:

    • WebSpeed
    • WebSpeed WebHandler
    • REST
    • Progress Data Object

    The Progress Data Object approach allows you to annotate Business Entities to define CRUD, Submit and Invoke operations. Internally, it uses the REST transport. You can also use a WebSpeed WebHandler as a proxy to access existing Business Entities or dynamically access the database. (See sample code https://community.progress.com/community_groups/mobile/m/documents/2677.)

    You can use Kendo UI DataSource to access data served through any of these options.

    The JSDO is the easiest way to access the OpenEdge backend from a JavaScript client. Web or Mobile.

    The JSDO uses the Progress Data Object service. It provides access to an API to perform CRUD, Submit and Invoke operations.

    With the JSDO, you perform the operations using high level APIs (for example: fill()/read(), saveChanges() or invoke()), you do not need to refer URIs or do special handling of the JSON payload. The generated catalog file defines the mapping of the operations to the URIs. You only need a URI when establishing the session.

    Here are some advantages of the JSDO:

    • Code is independent of URIs.
    • Programming model to perform CRUD operations locally.
    • Support for the JSON before-image format used by OpenEdge to handle concurrency and detection of conflicts.
    • Open source. Hosted on GitHub.
    • The JSDOSession supports anonymous, BASIC and FROM based authentication.
    • You can also use the JSDO with Rollbase as the backend.
    • Support for Submit where multiple operations of different types are sent to the server in a single request so that the server can handle it as a transaction.

    You can use the integration between the JSDO and the Kendo UI DataSource to make the access to the server even easier.

    For example, you can set serverPaging, serverFiltering, and serverSorting to true in the Kendo UI DataSource so that the corresponding query options are processed on the server.

    The integration also allows you to use the Views support in Telerik Platform for OpenEdge to easily build mobile apps that access the OpenEdge backend.

    Please notice that the updated version of the whitepaper is the one that describes the integration:

    https://community.progress.com/community_groups/openedge_development/m/documents/2135

    Here is a link to some examples of using the JSDO with Kendo UI (use the web inspector to look at the JavaScript code):

    http://oemobiledemo.progress.com/static/index.html

    You might also find useful the following links related to the JSDO:

    I hope this information answers your questions.

    Edsel