org.apache.xmlrpc.webserver

Class ServletWebServer

public class ServletWebServer extends WebServer

This is a subclass of the {@link WebServer}, which offers a minimal servlet API. It is recommended to use this class, rather than the {@link WebServer}, because it offers you a smooth migration path to a full blown servlet engine.

Use of the {@link ServletWebServer} goes like this: First of all, create a servlet. It may be an instance of {@link XmlRpcServlet} or a subclass thereof. Note, that servlets are stateless: One servlet may be used by multiple threads (aka requests) concurrently. In other words, the servlet must not have any instance variables, other than those which are read only after the servlets initialization.

The XmlRpcServlet is by default using a property file named org/apache/xmlrpc/server/webserver/XmlRpcServlet.properties. See the {@link PropertyHandlerMapping} for details on the property file.

   final int port = 8088;

   XmlRpcServlet servlet = new XmlRpcServlet();
   ServletWebServer webServer = new ServletWebServer(servlet, port);
   webServer.start();
 
Nested Class Summary
static classServletWebServer.Exception
This exception is thrown by the request handling classes, advising the server, that it should return an error response.
Constructor Summary
ServletWebServer(HttpServlet pServlet, int pPort)
Creates a new instance, which is listening on all local IP addresses and the given port.
ServletWebServer(HttpServlet pServlet, int pPort, InetAddress pAddr)
Creates a new instance, which is listening on the given IP address and the given port.
Method Summary
protected ThreadPool.TasknewTask(WebServer pWebServer, XmlRpcStreamServer pXmlRpcServer, Socket pSocket)

Constructor Detail

ServletWebServer

public ServletWebServer(HttpServlet pServlet, int pPort)
Creates a new instance, which is listening on all local IP addresses and the given port.

Parameters: pServlet The servlet, which is handling requests. pPort The servers port number; 0 for a random port being choosen.

Throws: ServletException Initializing the servlet failed.

ServletWebServer

public ServletWebServer(HttpServlet pServlet, int pPort, InetAddress pAddr)
Creates a new instance, which is listening on the given IP address and the given port.

Parameters: pServlet The servlet, which is handling requests. pPort The servers port number; 0 for a random port being choosen. pAddr The servers IP address.

Throws: ServletException Initializing the servlet failed.

Method Detail

newTask

protected ThreadPool.Task newTask(WebServer pWebServer, XmlRpcStreamServer pXmlRpcServer, Socket pSocket)
Copyright © 2001-2007 Apache Software Foundation. All Rights Reserved.