My next project was working with JSDO (JavaScript Data Objects), a way of interacting with data that has many advantages, including for example support for Mobile applications. To begin the project, I started with code and ideas from David’s JSDO and AngularJS web app. Because of this, I did not write most of the code for setting up JSDO. Instead, I used the JSDO objects provided by his code at his ServiceURI and CatalogURI. You can view the final project on GitHub at https://github.com/progress/jsdo-node, where most of my work was done in the JSDO-Tester component.

To start working with the JSDO object, I first needed to make sure that the JSDO objects were set up correctly. Conveniently, David’s code had a simple test method that would open a new JSDO data session and print out some data. With JSDO, this only involved logging in to the ServiceURI, adding the catalog, and calling the fill method. The JSDO fill method would get information from the catalog, which in his case would be returned to the user.

By calling this test method from AngularJS with an http GET request, it was possible to get the JSDO data in a format that AngularJS could easily work with. In other words, through JSDO, I was able to easily send data from MongoDB all the way to AngularJS on a NodeJS server as illustrated (the MongoDB to NodeJS part was handled by David’s code).


Once the data was at the AngularJS level, it could easily be displayed. I decided to just show it in table form using Jade. (David had used a slightly different method, using Serverify, to display his results, but the end result is similar to mine.) You can view the final AngularJS app at http://jsdo-node-angular-22603.onmodulus.net/.


If you are interested in more projects showing what you can do using JSDO, you can see a couple mobile web apps at http://oemobiledemo.progress.com/jsdo/example005/Screen1.html and http://oemobiledemo.progress.com/jsdo/example003/MyPhoneApp.html.


4 thoughts on “JSDO

  1. I’m starting a project with Maqetta and Progress and I looking the bet way to interface the UI with the data and JSDO could be an option, I’m pretty loose now trying to get the best way to do this.

    Any thought about this?.


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s