Java: We have produced a Java package on SourceForge which demonstrates how to submit jobs to the pipeline, or to an individual predictor. It uses Sun’s JAX-WS Metro web services toolkit, along with JAXB databinding (XML<->Java mapping). Additional modes of access are in the works, for example raw XML messaging which might be more suitable for larger messages.
There is a binary JAR distribution of the current version (1.3.0) available here. For further instructions, open it up with a zip file viewer (e.g. file-roller on Linux or WinZip on Windows) and see the README file in the root directory.
The source code is also available via Subversion in the form of a Maven project. To check out the latest version of the project, type (all on one line):
svn co https://funcnet.svn.sf.net/svnroot/funcnet/trunk/example-clients
Then change to the newly created example-clients directory and type
mvn package
There is a README file included which contains more information. This package also contains, for convenience, clients for the OLS and QuickGO services at the EBI, which our web interface uses to retrieve human proteins by GO term.
We have also provided the source code for the web interface itself:
svn co https://funcnet.svn.sf.net/svnroot/funcnet/trunk/gwt-client
This depends on the example-clients project, so make sure you compile that and install it in your local Maven repository with
mvn install
before trying to build this one.
We recommend that you download the source code and modify it to your own requirements, as the functionality supplied out-of-the-box is slightly limited, but it can of course be used in your scripts if it is sufficient for your needs.
Perl: There is a Perl module on CPAN which allows you to easily send queries to FuncNet, via XML::Compile.
To install it automatically, type:
perl -MCPAN -e 'install WebService::FuncNet'
You may need root access to do this, as some of the dependencies default to needing root access. If you need help with this process, particularly if you don’t have root on your machine or you are using ActivePerl on Windows, have a look at this tutorial.
There is also another Perl module which allows you to issue queries directly to any of the prediction services.
To install it, type:
perl -MCPAN -e 'install WebService::FuncNet::Predictor'
Bear in mind the warnings about root access given above.
We have also provided a simple example Perl script for demonstration purposes, which does not use the dedicated FuncNet modules.
Note: XML::Compile uses the libxml2 library, which is written in C. You may need to install this yourself if it isn’t present on your system already, including the sources (since XML::Compile requires access to libxml2’s header files). It can be downloaded from here — but you will probably find it easier to install via your system’s package management tool.
For example, in Ubuntu you can use apt-get like so:
sudo apt-get install libxml2 libxml2-dev
PHP: Heinz Stockinger presented a workshop on writing SOAP clients and servers in PHP which used FuncNet as one of the worked examples. The slides for that workshop are available in PowerPoint and PDF format.
Services
Please contact us if you would like the source code to any of our server-side components, particularly if you are interested in contributing a prediction service to FuncNet. We are happy to share it but there are no official distributions as such.