JBoss is an Open Source, standard compliant, Enterprise JavaBeans Application Server implemented in 100% Pure Java. It is usable for both development and production.

JBoss is licensed under the LGPL. Which means that you are entitled to redistribute the jboss binary (the jar) free of charge without modifications. You can distribute your code under any license you wish.

JBoss 2 is designed to be an EJB v1.1 container and server. Some parts of EJB 2.0 are supported in the 2.4.x versions, for example Message Driven Beans. JBoss 3.x supports EJB v2.0 including Container Managed Persistence.

JBoss comes bundled with Jakarta Tomcat or Jetty to serve web pages, JSP pages and Servlets. JBoss can be run on different machines.

There is no requirement for root access to run JBoss as none of the default ports are below the 1024 priveledged port range. JBoss will run very effectively on a machine with 64 megabytes of RAM, and requires only a few megabytes of disk (including source code!). One of the nicest features of JBoss is its support for "hot" deployment. What this means is that deploying a Bean is a simple as copying its JAR file into the deployment directory. If this is done while the Bean is already loaded, JBoss automatically unloads it, then loads the new version. There is a built-in SQL database server for handling persistent beans, and this starts up automatically with the server.

The latest JBoss version can be downloaded from: http://labs.jboss.com

Installing JBoss 3.0.4 with Jetty


Operating system used
Windows XP Home Edition Version 5.1 SP 2

Software prerequisites
J2SE version 1.3 or higher
XDoclet version 1.1.2
Ant version 1.4.1 or higher

  1. Download and unzip jboss-3.0.4.zip
    This zip file contains Jetty 4.1 (also called JBossWeb) which is a 100% Java HTTP Server and Servlet Container.

  2. Start jboss: ..\jboss-3.0.4\bin\run.bat [-c {minimal | default | all}]

    minimal: which is the bare minimum to start JBoss 3. It contains logging, JNDI server and URL deployment scanner to find new deployments. There is no EJB container, JMS, clustering etc.

    default: which is the default server environment that is started when no server environment is specified. It contains all except clustering and RMI/IIOP service. If you do no know which configuration to use, I recommend to use default.

    all: contains all available services

    After startup, you should see:
    xxx INFO [Server] JBoss (MX Microkernel) [3.0.4 Date:200211021607] Started in xxx

  3. The configuration "out-of-the-box" does not have a web application running in the so called "root context". This means that you will get an error 404 when you try to access http://localhost:8080. This is NOT a problem with your installation. If you want to see something you must create a web application (WAR or EAR file) and deploy it.