Demo

From LiquidPubWiki

Jump to: navigation, search

Demo application shows a preview of how we envision our technologies will be used. The demo is not maintained at the moment, since we focus our development effort on other project tools.

The mockup/demo code is based on EXT JS. The community page contains the most up-to-date version of the mockup demo website.

In order to understand the structure please take a look at the following pdf. Media:websiteStructure.pdf

Files & File Structure

Path: https://dev.liquidpub.org/svn/liquidpub/mockup/branches/fullstatic/main/WebContent

The community page uses the following files:

  • community-communities.jsp - this is the main source file that imports all other files and defines the layout of the website
  • scripts/user-scripts/community-communities.js - the main javascript file that initializes all widgets
  • HEADER
    • common/headGeneral.jsp - a rewritten header file that only imports what is really required (please clean this up, once the YAML CSS framework is no longer needed)
    • I added several comments to the headGeneral.jsp file, about the different imports. Please take a look at it, when you need more information
    • In general, the CSS imports still need a real clean-up (most important: get rid of YAML - it overwrites Ext JS stles!).
  • WIDGETS
    • widgets/community_list.jsp - a table that uses an AJAX import to get it's data
    • widgets/community_map.jsp - Contains the Flare / Flash-based community map.
    • widgets/community_members.jsp - a table that uses an AJAX import to get it's data. This widget interacts with the community map widget (on selection of a community) via the widgetcontroller.
    • widgets/community_search.jsp - simple search box - no functionality.
    • widgets/community_widgetcontroller.jsp - a special object that handles the widget-widget communication.
    • widgets/metrics_new.jsp - a rewritten version of the ResEval metrics tool, in the form of a widget
    • widgets/ExtJS_WindowExperiments.jsp - an experimental widget using EXT JS window objects, that can be moved around and resized, like real windows. Outcommented at the moment.
  • CSS
    • css/communities.css - style sheets used in communities only
    • css/*.* - please! get rid of as many css files as possible
  • EXT JS
    • everything EXT JS related is in scripts/extjs
  • DATA
    • api/communities/community.xml - excerpt from Cristhian's REST XML reply.
    • api/communities/community2.xml - modified excerpt from Cristhian's REST XML reply.
    • api/communities/relations.xml - excerpt from Cristhian's REST XML reply. (not in use right now)
  • COMMUNITY MAP
    • CommunityMap.swf - the main flash file (the source code is in a different SVN - no need to have it on the server)
    • data/community-example.xml - a simple example file in GraphML format that the community map uses. In a later stage this should be based upon above's REST XML reply.

Getting started

Downloading project code

Project code is publicly available at our Project Repository.

Building the 'openid' application from repository

Prerequisites: you will need a working version of the Java Runtime, plus Apache Ant.

To see it running, you will also need a working installation of a J2EE Web App container (we used Apache Tomcat, but it should also run on other servers).

Also, a database account to a supported RDBMS is needed: database name, address, username and password parameters used to connect to it must be put in the appropriated place inside web.xml configuration file of your installation. The name of the JDBC driver must be supplied, and also driver's dependency libraries must be in web server's classpath: a copy of MySQL Connector is included in the project. This database instance must contain at least two tables, named users and log. Table users will encompass four fields, openid, email, givenname, surname, of which openid is also table's primary key; table log, on the other hand, will encompass two fields, openid and timestamp, with no keys. Apart from the field timestamp which is of type "TIME", all other fields are fixed length, 255 characters long varchar fields.

Build instructions:

  1. Checkout the last version of software's code from there. If you use command line svn client, enter this:
    svn co https://dev.liquidpub.org/svn/liquidpub/mockup/trunk/openid/
  2. at your prompt. Then move into the project main directory, and then invoke ant with the "make-war" target. From a command prompt, issue this:
    cd openid
    and then
    ant make-war
  3. Copy the war file from "build" directory to your Web server deployment directory (in Tomcat, it's called "webapps").
  4. Adjust your deployed app web.xml parameters to reflect your system settings. You could find it under your Web server deployment directory, in "liquidpub-mockup/WEB-INF".

(Please note that if you want to change destination name, application context or other startup parameters, your installation procedure will likely differ from the one described above).

And that's all: you should be able to access your new installation by pointing your browser to "localhost/liquidpub-mockup"; e. g., in a default Tomcat installation:

http://localhost:8080/liquidpub-mockup

This is outdated information: check back later for updated instructions.

Personal tools