Wednesday, 24 October 2007
CherryPy done
The initial stab at implementing a CherryPy server is complete, along with documentation and a sample application to show how to use it. Last Wednesday was largely spent in meetings of various kinds, for a change. Today I'm cleaning up at looking at new projects.
Wednesday, 10 October 2007
Slow going with CherryPy
Gradually augmenting the interface put up by Georg Stach for his GWT/Java application which uses cherrypy as the RPC server interface to the Cool database. I've been slightly hampered by the fact that: The cherrypy server is only accessible on atlmysql04 and I get thrown out of this machine every time I stop the server. Eventually made an applescript to stop the server, log me back in, start the server and change to the development directory. I've been slow picking up the PyCool methods as well, and the vagaries of different code editors when editing python (aargh, spaces or tabs!! I need a python IDE!) are frustrating. Slow progress, but progress nonetheless: now I know can return proper xml entries for things like cool folder descriptions.
Wednesday, 3 October 2007
CherryPy et al.
Past week: Made the XSLT for Luca's XML -> hierarchical XML transformation, and this seems to work on the restructured web interface (reduces the total code to about the quarter of it's original length). Got a CherryPy server going locally and served a demo python application (this is intended as a solution for a COOL database gateway). I sort of managed to get the same thing going behind an apache server, wreaking all kinds of chaos on my httpd.conf file, but the stylesheets somehow went awry.
Today I managed to get Saverio's query tacked onto Luca's original code for the interface. The next step is to make a plot appear in the same interface.
Wednesday, 26 September 2007
Importing XML to a web page and using ID
I've been working on the web display of the online database for DCS, starting from Luca's code, and then I shall put the backend from Satoru's on it. It seems the best way (most robust) to import XML into a web page is using an Ajax method and retrieve the .xml file. However I was surprised at first to find that the 'id' attribute didn't work with 'getElementById()', until I remembered that one of the few remaining places where a DTD is preferable over a W3C schema is in defining the id attribute to be of type 'ID'. Once done, it seems to work (tiddler article in preparation).
Today I need an XSLT to go from Luca's existing Atlas.xml file format to the new menu.xml format I made, which is less wordy and separates the menu definition from the hierarchy, using xlink:href references to bind the two.
On the back burner for now: On Monday, after reviewing a few web apps in Atlas which access Cool, it became apparent that everyone is doing their own ugly thing to get the COOL environment set up before accessing the database...better would be to have a centralized service. I'll accept the received wisdom that SOAP is too wordy, and now I've downloaded and locally installed CherryPy to expose the python interface to COOL via URLs.
Metadata: Atlas has it, but it seems that we have a homegrown solution; why aren't they using RDF?
Wednesday, 19 September 2007
IFrame vs Div in WebDisplay
I spent the last couple of days trying to work out how to use the XSLT I made for displaying a JiveXML file for a web interface. I thought I would have to load the document, get the transform from the server and then manually instantiate the XSLT processor in javascript. This turns out not to be the case; because the JiveXML is associated with a stylesheet, I need only load it into an IFrame window directly from the server. In any case, changing the content of an IFrame programmatically turns out to be difficult.
It seems that Javascript cannot, however, access a local file directly from within itself: it needs to send it to the server, which then echoes it back to the web page. I gave a talk on the web display, which seemed to go very well (if people have not seen XSLT before, its effect can seem pretty amazing). A tiddlyWiki update is in preparation...
In the mean time, Richard Hawkings has asked for some help on the databases, which is exactly what I want to do. I need to familiarise myself with PyCool and look at the AtlCool console, too (todays work).
Wednesday, 12 September 2007
DCS Viewer Interface
I've been involved in the Database documentation review, so have a meeting this afternoon from 15:00. In the mean time, I've also been looking at Luca's code. I think that the problem is very difficult: How to generally define a navigational interface for all subsystems. We've started with an XML definition file, but I think it needs revamping. All of this has been committed in CVS now, so this should at least make versioning easier.
Wednesday, 5 September 2007
Testing
Have to test a number of fixes:
latest cabling in 13.0.X
both InDetPrepRawDataFormation and SiClusterizationTool in 13.0.30. Unfortunately, I can only test the compilation on this last one... I still need a good routine way to test clusterization...
Compiled/tested the cabling: ok, requested tag approval
Compiled InDetPrepRawDataFormation and SiClusterizationTool (dont have a unit test: have to figure out how to introduce one). ok, requested tag approval.
Diagnosed DB problem of Auke-Pieter Colijn, updated a simple DB query program (Ajax style) for him, here.
Subscribe to:
Posts (Atom)