Information for students doing projects

This page is intended to help you decide at an early stage how you are going to implement you project in relation to what software and services are available on the school's system. You should think about these issues and plan how you are going to do your demo well in advance, especially if your project is going to use things that we do not have installed e.g. MySQL etc.

It is very difficult to help you if you have done your project entirely on your home machine and then come to us a week before demonstrationg saying "I need X, Y and Z" installed (usually things we've never heard of) in order to demonstrate my project. We will most likely tell you that you will simply have to bring in your computer from home.

Even if you do intend to use your own computer and bring it in there may still be issues related to networking that you need to consider in good time.

If are unsure about any issues relating to the School's system, please contact us in good time (i.e. at the feasibility study stage of your project) via the IT service Desk https://universityofbirmingham.service-now.com/ and we will be able to advise you.


Programming Environment

Java Extensions

  • Installed extensions are listed here.
  • Some extensions are installed by default such as Java3D and need no additional configuration before you use them. The rest should have a setup script, on Linux type "setup java/" then hit CTRL-D rather than return and you should get a list of possible completions. On Windows run the appropriate .bat file in J:\setup.
  • Several extensions including XML, JavaMail, JNDI, Servlets/JSP, JAF, JMS come bundled with Java 2 Enterprise Edition and it is recommended that you use that by typing "setup java/J2EE" on unix; they should be enabled by default on Windows.
  • If you need any extensions that are not already available on the system, make a request via the IT Service Desk.

Java Documentation

  • The Java licensing prohibits us from publishing Java documentation on the internet. However, you can access our copy of the documentation from outside the school by setting up a secure-shell tunnel to our proxy server (see below).

Networking

The computers in the school are behind a firewall which creates some issues for making connections between our machines and computers outside the school.

Outgoing connections

  • For outgoing HTTP connections you must use the proxy server webcache port 3128. There are instructions how to configure java to use the proxy server for http connections.

Incoming connections

  • Incoming connections from outside the school are only allowed via http to http://www.cs.bham.ac.uk or http://studentweb.cs.bham.ac.uk or via telnet, ftp or ssh.
  • You cannot connect directly to any other services including database servers from outside the school. You must either go via a web page employing some server-side technology such as Servlets/JSP or PHP or ...
  • ... alternatively, you can set up a secure-shell tunnel to tunnel a connection from the remote machine to the desired port on one of our machines. (Windows 7 / Vista users may need to use the putty ssh client).

Servers

We run a number of servers that are available for student project use.

Web server

  • The web server http://wwwteach.cs.bham.ac.uk is available for student projects. Anything that you put in ~/public_html will be visible under http://wwwteach/~<your username>/.
  • The server runs Apache with PHP enabled. You can also host Servlet/JSP pages on this server.
  • We have an IIS/ASP.NET server for student projects.

Database server

Servlets and JSP

  • New Tomcat howto to come...
  • You can run Servlet/JSP pages on the wwwteach web server, please contact us via the IT Service Desk if you would like to do this.