The AusWeb series of World Wide Web Research Conferences.

Building Web-based Services with Script Wrappers


Michael Sweeney, School of Computer Science, University College - University of NSW, Australian Defence Force Academy, Canberra ACT Australia; and C3 Research Centre, Fern Hill Park, Defence Science and Technology Organisation, Department of Defence, Canberra ACT Australia. mike.sweeney@dsto.defence.gov.au


Keywords

Web Services, Image processing, Python, CGI, HTTP.


Abstract

A significant number of web sites are designed to offer custom services such as content indexing, geospatial mapping, and calendar functions. Many existing command line applications could be made available as web services if an efficient method of web integration could be developed. By exploiting the flexibility of scripting languages such as Perl, Python, and TCL, existing programs can be reused in the web environment with minimal work.

This paper describes the design issues encountered when wrapping a command line application for web use. Problems such as URL argument ordering, performance, security, and error handling are identified and discussed.

An example web image processing service is presented. The image processor is sent a set of processing operations and filenames embedded in a HTTP POST URL (from a web form, HTML image reference, hyperlink, or web-aware application) and the synthesised image is returned in HTTP JPEG format. It is based on the freely available xloadimage command line application and uses a CGI based Python script to integrate with the web. The prototype has been successfully used to perform dynamic cropping and scaling functions on medium sized map images to support a simple GIS. The script is dissected and the benefits and limitations of the prototype design is presented.


[ Full Paper ] [ Presentation ] [ Proceedings ] [ AusWeb2K Home Page ]


AusWeb2K, the Sixth Australian World Wide Web Conference, Rihga Colonial Club Resort, Cairns, 12-17 June 2000 Contact: Norsearch Conference Services +61 2 66 20 3932 (from outside Australia) (02) 6620 3932 (from inside Australia) Fax (02) 6622 1954