You are currently browsing the monthly archive for January, 2008.
The initial thought was to make all of our modifications within the velocity templates. This appeared to be a horrible pain, rebuilding on every minor change.
After that we came up with the idea of just making HTML files within a seperate folder in Tomcat for the pages that contain new functionality like the iGoogle like portal page. This all worked fine and a lot quicker.
Because of that, we started building all pages in just HTML (also site views, my workspace, …). This again seemed a lot quicker to make changes and kept simplifying the things we were doing. In the end we had a completely separate version of Sakai in /flat, that can run perfectly happy next to /portal. This also meant that we reduced an entire Sakai instance into just 7 HTML pages. If we hadn’t wanted all the extra functionality from our designs, we could do it in only 4 HTML pages.
Having this kind of environment allows quicker changes without rebuilds, a possibility of a dev environment and a lot more accessible code for developers because we got rid of the Velocity templates.
SData or SakaiData (the name is loosely based of GData) is just a normal webapplication (https://source.sakaiproject.org/contrib/tfd/trunk/sdata/) which will be used to feed out data about Sakai to the client side of the project. SData is like a REST based webservice that will return specific data according to the URL you have asked for. In this way, we can keep a clear distinction between data services and implementation. In the longer term, we want to build up a good set of services that return useful information that can be used/combined in any kind of tool/widget/… Data can be fed out as XML or JSON (We’ve got both implementations), but in our development we are only using the JSON ones, because of the speed and ease of use.
Some examples of SData are:
* Message of the Day: if you do a GET request to /sdata/motd you’ll get back :
{"items":[{"motdBody":"<p>This is the message of the day!<\/p>\r\n\r\n
<p>Dit is de boodschap van de dag!<\/p>","motdUrl":"http://celestine.c
aret.local:8080/access/announcement/msg/!site/motd/c1416055-1b9c-4ba2-
8d3a-442c585203da"}]}
* List of my Courses and Projects: if you do a GET request to /sdata/mcp you’ll get back :
{"items":[{"iconUrl":null,"title":"Administration Workspace","owner":
"Sakai Administrator","members":1,"description":"Administration Works
pace","creationDate":"04-12-2007","url":"http://moonstone.caret.local
:8080/portal/site/~admin","siteType":null,"id":"~admin"},{"iconUrl":n
ull,"title":"Administration Workspace","owner":"Sakai Administrator",
"members":1,"description":"Administration Workspace","creationDate":"
04-12-2007","url":"http://moonstone.caret.local:8080/portal/site/!adm
in","siteType":null,"id":"!admin"},{"iconUrl":null,"title":"AnncTest"
,"owner":"Sakai Administrator","members":1,"description":"AnncTest","
creationDate":"29-02-2008","url":"http://moonstone.caret.local:8080/p
ortal/site/AnncTest","siteType":null,"id":"AnncTest"},{"iconUrl":null
,"title":"filemanager","owner":"Sakai Administrator","members":3,"des
cription":"filemanager","creationDate":"06-03-2008","url":"http://moo
nstone.caret.local:8080/portal/site/filemanager","siteType":null,"id"
:"filemanager"},{"iconUrl":null,"title":"mercury site","owner":"Sakai
Administrator","members":3,"description":null,"creationDate":"04-12-
2007","url":"http://moonstone.caret.local:8080/portal/site/mercury","
siteType":null,"id":"mercury"}]}
You can find more documentation about this on our Sakai Confluence page :
http://bugs.sakaiproject.org/confluence/display/MYSAK/Home


Recent Comments