Web Service Composition in Drupal

A master thesis written by Klaus Purer at the Vienna University of Technology, released in May 2011.


Building web applications has become a complex task and often requires interaction with other web applications, such as web services. Drupal is a free and open source content management system and framework that provides a rich platform for rapid web development. The modular and extensible nature of Drupal allows developers to customize and embrace the core functionality and to create new features. This thesis is about investigating and implementing a web service client module for Drupal that is able to consume classical WS* web services as well as RESTful web services.

Running PHP 5.3 and 5.2 in parallel with nginx

The problem: you want to upgrade your Ubuntu server, but you still need PHP 5.2 for some old web sites (i.e. Drupal 5 is not PHP 5.3 compatible).
The solution: Go with the packaged PHP 5.3 for your new sites and compile PHP 5.2 yourself for the old ones. As we use the nginx webserver with FastCGI, we can choose per site which PHP CGI binary will handle the requests.


Abandon CVS and synchronize your code from git automatically

Sick of developing a Drupal module with CVS? Want to use git but also want your code in CVS on drupal.org for development snapshots? This is an approach to get rid of using CVS completely by synchronizing a git repository automatically to CVS. Basic git knowledge required. Script is on Github. Needs some testing though.


Drupal Core update script

Update: Do not use this script anymore, drush provides a very good upgrade mechanism itself now!

Upgrading Drupal core can be a very tedious task - especially if you run a Drupal multi site installation (backup database, put site into maintenance mode, run update DB script, put site online again - repeat for every single site). We use Drush and a custom bash script to make life much more easier on our fsinf.at Drupal farm.