NOTE: These software packages need not all be installed on Day 1 of
the course. You will be instructed when to download and install them as
part of your weekly assignments. Proper installation and usage of these
tools will be part of the input into your final grade.
Java SE JDK
A copy of the full Java Platform, Standard Edition (Java SE) Java Development Kit (JDK)
needs to be available on the machines where you'll be working. The JDK will let you
compile and debug Java new applications in addition to being able to run them. The JRE
provides just the Java runtimes which only allow running of existing apps.
Indeed you may already have a copy of the JDK installed. If so, please check that it is at
least version 1.5.0_14 or newer, with v1.6 strongly preferred. To do this check you should access a
command-line window on your system (e.g., a DOS console on Windows, or an xterm on
Linux). At the command prompt ('$' for Linux in this example) you should be
able to check this using:
$javac -version
javac 1.6.0_17
This shows that the Java compiler is installed and it has a version # >= 1.5.0_14. If it
is not there or it needs to be upgraded, then first try to install the NetBeans IDE (see
the next section for details) before downloading and installing a separate copy of the
JDK. On Windows and Mac OS X the NetBeans installation should also install the proper JDK,
if it's not already there. However, on Linux it will complain if the the JDK is not
installed and stop the NetBeans installation until you have the JDK available.
Should you still need to install the Java SE JDK, download a copy of the latest version
from the Sun Java site using the URL:
http://java.sun.com/javase/downloads.
From here you can download either a Windows or a
Linux version. Installation support for these platforms can be found on-line at
http://java.sun.com/javase/6/webnotes/install. If
you need help installing Java on Mac OS X, please speak with the teacher.
Java Documentation
On-line documentation for Java 1.6 can be accessed using:
NetBeans IDE
The primary development environment for this course will be the latest stable NetBeans
IDE release, which like Java, now comes from Sun. Versions exist for
Linux, Windows, and Mac OS X and can be downloaded from the URL:
http://netbeans.org/downloads/index.html. Once
you're there, choose the platform corresponding to your system and
download the installation package. In our case we will choose the
NetBeans "Java" Download Bundle (make sure it contains "Java Web and
EE" under supported technologies) which includes all the Web
components we'll need such as the Apache Tomcat Servlet container.
Tomcat will be critical to us as
one of the server-side components for exploring many Web application
concepts and techniques like Java Servlets and Java Server Pages
(JSP's).
Once downloaded, execute the appropriate NetBeans installation application now
found in your download directory from the command-line or by double-clicking on it in
the appropriate file manager window ('X.X' will be the NetBeans version # you downloaded):
- netbeans-X.X-ml-java-linux.sh (Linux)
- netbeans-X.X-ml-java-windows.exe (Windows)
- netbeans-X.X-ml-java-macosx.dmg (Mac OS X)
When the NetBeans installation begins, make sure to click on the 'Customize' button and be certain that Apache
Tomcat has also been selected as a server for installation alongside the Sun
Glassfish EE Server (which we most likely won't be using much of this semester). You should wind up with a
functioning NetBeans environment and a working Tomcat Servlet Container that you will
be able to use for your Java Servlet and JSP exercises later on.
You can skip the registration step at the end of the
installation, if you choose. If for any reason NetBeans won't install because Java can't
be found, then go back to the previous Java JDK section and follow the instructions for
downloading and installing the Java JDK. Then try reinstalling NetBeans. On-line
installation help for NetBeans can be found at
here.
Before proceeding you should watch the introductory video demonstrating
the use of the NetBeans Java editor
here.
To test that NetBeans is installed correctly on your system, follow the directions found in the
NetBeans IDE Quick Start
Guide to create the
HelloWorldApp test application in the
helloworldapp Java package. Make sure that the application runs
successfully before continuing on with NetBeans. Ask for help from the professor or class teaching assistant, if
you are experiencing problems.
IMPORTANT NOTE: As opposed to the Quick Start Guide example above, in the future you
should always explicitly specify the 'Project Location' as an existing directory of your
own choosing whenever you create a NetBeans project. This directory will
hold your own personal project files (those you will be submitting as part of your
weekly assignments and final Term Project).
MySQL Community Server
To explore the use of databases in building Web applications we'll need a SQL DBMS to hold
our tables and data. NetBeans integrates well with the free MySQL Community Server 5.1
using the Java JDBC connector and so that's what we'll be installing. First download a
copy of the appropriate installation tool for your system using the URL:
http://dev.mysql.com/downloads/mysql/5.1.html.
When asked for a MySQL user ID to register with, you can
simply skip this step (look for the "No thanks, just take me to the
downloads!" link on the page). For our teaching environment under
NetBeans, it's probably simplest to use the
"mysql-essential-...-win32.msi" version of the MySQL installer, though the full
"mysql-...-win32.msi" version will also work for most Windows laptop
systems. Install the MySQL server from your download directory using
this installer.
If you need assistance, a full set of detailed instructions
for installing MySQL on a Windows system can be found
here.
On-line help with your MySQL installation is available at
this
URL. The entire MySQL Reference manual can also be viewed on-line
using the page located
here.
Web Browser
While there are a number of popular browsers in use worldwide—most notably Internet
Explorer which still commands about 80% of the marketplace—the primary one we'll be
using for our course is Mozilla Firefox. The main reason for this choice is that is runs
well on all three platforms students might be using and it has several
add-ons
that are particularly handy for Web developers. These special-purpose tools plug in to the
Firefox browser using a standard API mechanism.
NOTE: In practice, whenever you develop Web-enabled applications, you must be very mindful of
all the browsers that your applications might run on since they can look and act quite
differently no matter how much the browser creators swear that their tool adheres to
standards. In fact there are web tools like
http://browsershots.org which can display your web-accessible
page as it would be seen by around 75 different browser-OS combinations.
Mozilla Firefox
To download the latest Firefox (v3 is preferred, though if you already have v2 installed that should also be OK),
go to
http://www.firefox.com, download the version
for your platform and follow the installation instructions. When Firefox is up and running
browse to the Firefox Add-ons page at
https://addons.mozilla.org/en-US/firefox
and install the following add-ons:
Web Developer
Contains many, many useful tools for examination, debugging and validation of web pages
Live HTTP Headers
Nice viewer for HTTP transactions in real-time
Firebug
Javascript and Ajax coding aid
Installing these adds-on is as simple as clicking on the
'Add to Firefox' next to
their descriptions. Later on we'll be using these add-ons to examine Web page internals in
more detail and to help us debug our own applications.
FireFTP (Optional)
One additional tool for uploading and downloading files using the FTP protocol
could also be very useful to us. It's called
FireFTP and can be
integrated into Firefox as well.
Screengrab! (Optional)
Screengrab allows you to create a .PNG image from whatever is in your
browser window. This should be useful for documenting your Term
Project as well as for capturing some weekly assignments to turn in.