org.mortbay.jetty
Class Server

java.lang.Object
  |
  +--org.mortbay.http.HttpServer
        |
        +--org.mortbay.jetty.Server
All Implemented Interfaces:
LifeCycle, java.io.Serializable
Direct Known Subclasses:
Server

public class Server
extends HttpServer

The Jetty HttpServer. This specialization of org.mortbay.http.HttpServer adds knowledge about servlets and their specialized contexts. It also included support for initialization from xml configuration files that follow the XmlConfiguration dtd. HttpContexts created by Server are of the type org.mortbay.jetty.servlet.ServletHttpContext unless otherwise specified. This class also provides a main() method which starts a server for each config file passed on the command line. If the system property JETTY_NO_SHUTDOWN_HOOK is not set to true, then a shutdown hook is thread is registered to stop these servers.

Version:
$Revision: 1.27 $
Author:
Greg Wilkins (gregw)
See Also:
XmlConfiguration, ServletHttpContext, Serialized Form

Nested Class Summary
 
Nested classes inherited from class org.mortbay.http.HttpServer
HttpServer.ComponentEvent, HttpServer.ComponentEventListener
 
Constructor Summary
Server()
          Constructor.
Server(Resource configuration)
          Constructor.
Server(java.lang.String configuration)
          Constructor.
Server(java.net.URL configuration)
          Constructor.
 
Method Summary
 WebApplicationContext addWebApplication(java.lang.String contextPathSpec, java.lang.String webApp)
          Add Web Application.
 WebApplicationContext addWebApplication(java.lang.String virtualHost, java.lang.String contextPathSpec, java.lang.String webApp)
          Add Web Application.
 WebApplicationContext addWebApplication(java.lang.String contextPathSpec, java.lang.String webApp, java.lang.String defaults, boolean extractWar)
          Deprecated. use addWebApplicaton(host,path,webapp)
 WebApplicationContext addWebApplication(java.lang.String virtualHost, java.lang.String contextPathSpec, java.lang.String webApp, java.lang.String defaults, boolean extractWar)
          Deprecated. use addWebApplicaton(host,path,webapp)
 WebApplicationContext[] addWebApplications(java.lang.String webapps)
          Add Web Applications.
 WebApplicationContext[] addWebApplications(java.lang.String host, java.lang.String webapps)
          Add Web Applications.
 WebApplicationContext[] addWebApplications(java.lang.String host, java.lang.String webapps, boolean extract)
          Add Web Applications.
 WebApplicationContext[] addWebApplications(java.lang.String host, java.lang.String webapps, java.lang.String defaults, boolean extract)
          Add Web Applications.
 void configure(java.lang.String configuration)
          Configure the server from an XML file.
 java.lang.String getConfiguration()
           
 java.lang.String getRootWebApp()
          Get the root webapp name.
static void main(java.lang.String[] arg)
          Construct server from command line arguments.
 void setRootWebApp(java.lang.String rootWebApp)
          Set the root webapp name.
 
Methods inherited from class org.mortbay.http.HttpServer
addContext, addContext, addContext, addContext, addEventListener, addHostAlias, addListener, addListener, addListener, addRealm, destroy, findHandler, getConnections, getConnectionsDurationAve, getConnectionsDurationMax, getConnectionsOpen, getConnectionsOpenMax, getConnectionsRequestsAve, getConnectionsRequestsMax, getContext, getContext, getContext, getContexts, getErrors, getHostMap, getHttpServerList, getHttpServers, getListeners, getRealm, getRequestLog, getRequests, getRequestsActive, getRequestsActiveMax, getRequestsDurationAve, getRequestsDurationMax, getRequestsPerGC, getResolveRemoteHost, getStatsOn, getStatsOnMs, getTrace, isStarted, join, removeContext, removeEventListener, removeListener, removeRealm, save, service, setAnonymous, setChunkingForced, setContexts, setListeners, setRequestLog, setRequestsPerGC, setResolveRemoteHost, setStatsOn, setTrace, start, statsReset, stop, stop
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Server

public Server()
Constructor.


Server

public Server(java.lang.String configuration)
       throws java.io.IOException
Constructor.

Parameters:
configuration - The filename or URL of the XML configuration file.

Server

public Server(Resource configuration)
       throws java.io.IOException
Constructor.

Parameters:
configuration - The filename or URL of the XML configuration file.

Server

public Server(java.net.URL configuration)
       throws java.io.IOException
Constructor.

Parameters:
configuration - The filename or URL of the XML configuration file.
Method Detail

getRootWebApp

public java.lang.String getRootWebApp()
Get the root webapp name.

Returns:
The name of the root webapp (eg. "root" for root.war).

setRootWebApp

public void setRootWebApp(java.lang.String rootWebApp)
Set the root webapp name.

Parameters:
rootWebApp - The name of the root webapp (eg. "root" for root.war).

configure

public void configure(java.lang.String configuration)
               throws java.io.IOException
Configure the server from an XML file.

Parameters:
configuration - The filename or URL of the XML configuration file.
java.io.IOException

getConfiguration

public java.lang.String getConfiguration()

addWebApplication

public WebApplicationContext addWebApplication(java.lang.String contextPathSpec,
                                               java.lang.String webApp)
                                        throws java.io.IOException
Add Web Application.

Parameters:
contextPathSpec - The context path spec. Which must be of the form / or /path/*
webApp - The Web application directory or WAR file.
Returns:
The WebApplicationContext
Throws:
java.io.IOException

addWebApplication

public WebApplicationContext addWebApplication(java.lang.String virtualHost,
                                               java.lang.String contextPathSpec,
                                               java.lang.String webApp)
                                        throws java.io.IOException
Add Web Application.

Parameters:
virtualHost - Virtual host name or null
contextPathSpec - The context path spec. Which must be of the form / or /path/*
webApp - The Web application directory or WAR file.
Returns:
The WebApplicationContext
Throws:
java.io.IOException

addWebApplications

public WebApplicationContext[] addWebApplications(java.lang.String webapps)
                                           throws java.io.IOException
Add Web Applications. Add auto webapplications to the server. The name of the webapp directory or war is used as the context name. If a webapp is called "root" it is added at "/".

Parameters:
webapps - Directory file name or URL to look for auto webapplication.
Throws:
java.io.IOException

addWebApplications

public WebApplicationContext[] addWebApplications(java.lang.String host,
                                                  java.lang.String webapps)
                                           throws java.io.IOException
Add Web Applications. Add auto webapplications to the server. The name of the webapp directory or war is used as the context name. If the webapp matches the rootWebApp it is added as the "/" context.

Parameters:
host - Virtual host name or null
webapps - Directory file name or URL to look for auto webapplication.
Throws:
java.io.IOException

addWebApplications

public WebApplicationContext[] addWebApplications(java.lang.String host,
                                                  java.lang.String webapps,
                                                  boolean extract)
                                           throws java.io.IOException
Add Web Applications. Add auto webapplications to the server. The name of the webapp directory or war is used as the context name. If the webapp matches the rootWebApp it is added as the "/" context.

Parameters:
host - Virtual host name or null
webapps - Directory file name or URL to look for auto webapplication.
extract - If true, extract war files
Throws:
java.io.IOException

addWebApplications

public WebApplicationContext[] addWebApplications(java.lang.String host,
                                                  java.lang.String webapps,
                                                  java.lang.String defaults,
                                                  boolean extract)
                                           throws java.io.IOException
Add Web Applications. Add auto webapplications to the server. The name of the webapp directory or war is used as the context name. If the webapp matches the rootWebApp it is added as the "/" context.

Parameters:
host - Virtual host name or null
webapps - Directory file name or URL to look for auto webapplication.
defaults - The defaults xml filename or URL which is loaded before any in the web app. Must respect the web.dtd. If null the default defaults file is used. If the empty string, then no defaults file is used.
extract - If true, extract war files
Throws:
java.io.IOException

addWebApplication

public WebApplicationContext addWebApplication(java.lang.String contextPathSpec,
                                               java.lang.String webApp,
                                               java.lang.String defaults,
                                               boolean extractWar)
                                        throws java.io.IOException
Deprecated. use addWebApplicaton(host,path,webapp)

Add Web Application.

Parameters:
contextPathSpec - The context path spec. Which must be of the form / or /path/*
webApp - The Web application directory or WAR as file or URL.
defaults - The defaults xml filename or URL which is loaded before any in the web app. Must respect the web.dtd. Normally this is passed the file $JETTY_HOME/etc/webdefault.xml
extractWar - If true, WAR files are extracted to the webapp subdirectory of the contexts temporary directory.
Returns:
The WebApplicationContext
Throws:
java.io.IOException

addWebApplication

public WebApplicationContext addWebApplication(java.lang.String virtualHost,
                                               java.lang.String contextPathSpec,
                                               java.lang.String webApp,
                                               java.lang.String defaults,
                                               boolean extractWar)
                                        throws java.io.IOException
Deprecated. use addWebApplicaton(host,path,webapp)

Add Web Application.

Parameters:
virtualHost - Virtual host name or null
contextPathSpec - The context path spec. Which must be of the form / or /path/*
webApp - The Web application directory or WAR file.
defaults - The defaults xml filename or URL which is loaded before any in the web app. Must respect the web.dtd. Normally this is passed the file $JETTY_HOME/etc/webdefault.xml
extractWar - If true, WAR files are extracted to the webapp subdirectory of the contexts temporary directory.
Returns:
The WebApplicationContext
Throws:
java.io.IOException

main

public static void main(java.lang.String[] arg)
Description copied from class: HttpServer
Construct server from command line arguments.

Parameters:
arg -


Copyright ? 2000 Mortbay Consulting Pty. Ltd. All Rights Reserved.