JeromeDL/Exhibit

From Corrib Clan Wiki

Jump to: navigation, search

Contents

Exhibit in JeromeDL

Exhibit http://simile.mit.edu/exhibit/ is a ligthweight web publishing framework.

How Exhibit works

Exhibit is a javascript library. You link their .js file from your html web page, write your html template and supply your data in javascript json format.

Exhibit displays the data from the json files using your template and allows for quick filtering and sorting the data. No server side programming is needed.

Integration with JeromeDL

Files

  • webapp/WEB-INF/src/org/jeromedl/servlets/ExhibitJsonServlet.java
  • webapp/exhibit/*
  • webapp/WEB-INF/cache/exhibitjsoncache.js (automaticaly generated)

Display

  • webapp/exhibit/exhibit.jsp is the page which contains the Exhibit browser. It contains several divs (according to Exhibit documentation) which are filled during the browsing by the Exhibit engine. This page defines what the user will see.
  • webapp/exhibit/exhibit.css contains style definitions used in exhibit.jsp
  • webapp/exhibit/fixes.js contains labels and other fixes needed to be applied to the database json file.

Data

Exhibit needs the data in a form of a specific array in javascript.

The data file specified in webapp/exhibit/exhibit.jsp is booksdatabase.js. Such file does not exist, instead it is served by a servlet, ExhibitJsonServlet.java (you can find the mapping in web.xml).

The ExhibitJsonServlet translates the JeromeDL RDF dump to json format understandable by Exhibit using Simile Babel service http://simile.mit.edu/babel/. After the translation, the result is served whenever the booksdatabase.js file is requested.

To minimize the delay and the load of Babel service, the result is cached in WEB-INF/cache/exhibitjsoncache.js. Cache is refreshed every two hours.

Other

  • Cache refresh There are two ways to force the cache refresh. One is to supply refresh parameter when requesting /exhibit/booksdatabase.js.

The other way is to delete the file webapp/WEB-INF/cache/exhibitjsoncache.js. To refresh the cache programmaticaly, call the reloadCache() method of ExhibitJsonServlet.

Facts about JeromeDL/Exhibit — Click + to find similar pages.RDF feed
Personal tools

Corrib cluster project is supported by Enterprise Ireland under Grant No. ILP/05/203, Science Foundation Ireland under Grant No. SFI/02/CE1/I131.
Hosted at DERI, NUI Galway.