Package org.apache.axis.transport.http
Class AxisServletBase
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.http.HttpServlet
org.apache.axis.transport.http.AxisServletBase
- All Implemented Interfaces:
Serializable
,javax.servlet.Servlet
,javax.servlet.ServletConfig
- Direct Known Subclasses:
AdminServlet
,AutoRegisterServlet
,AxisServlet
public class AxisServletBase
extends javax.servlet.http.HttpServlet
Base class for servlets used in axis, has common methods
to get and save the engine to a common location, currently the
webapp's context, though some alternate persistence mechanism is always
possible. Also has a load counter shared by all servlets; tracks the
# of active http requests open to any of the subclasses.
- Author:
- Steve Loughran
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final String
name of the axis engine to use in the servlet contextprotected AxisServer
per-instance cache of the axis server -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected static void
thread safe lock counter decrementvoid
destroy()
Destroy method is called when the servlet is going away.get the engine for this servlet from cache or contextstatic AxisServer
getEngine
(javax.servlet.http.HttpServlet servlet) This is a uniform method of initializing AxisServer in a servlet context.protected static Map
getEngineEnvironment
(javax.servlet.http.HttpServlet servlet) extract information from the servlet configuration filesprotected String
what is the root dir of the applet?static int
get a count of the # of services running.protected String
Retrieve option, in order of precedence: (Managed) System property (see discovery.ManagedProperty), servlet init param, context init param.javax.servlet.ServletContext
what is the servlet contextprotected String
getWebappBase
(javax.servlet.http.HttpServletRequest request) extract the base of our webapp from an inbound requestprotected String
accessor to webinfprotected static void
thread safe lock counter incrementvoid
init()
our initialize routine; subclasses should call this if they override itboolean
probe for the system being 'production'protected void
service
(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp) subclass of service method that tracks entry count; calls the parent's implementation to have the http method cracked and delegated to the doGet, doPost method.Methods inherited from class javax.servlet.http.HttpServlet
doDelete, doGet, doHead, doOptions, doPost, doPut, doTrace, getLastModified, service
Methods inherited from class javax.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletInfo, getServletName, init, log, log
-
Field Details
-
axisServer
per-instance cache of the axis server -
ATTR_AXIS_ENGINE
name of the axis engine to use in the servlet context- See Also:
-
-
Constructor Details
-
AxisServletBase
public AxisServletBase()
-
-
Method Details
-
init
public void init() throws javax.servlet.ServletExceptionour initialize routine; subclasses should call this if they override it- Overrides:
init
in classjavax.servlet.GenericServlet
- Throws:
javax.servlet.ServletException
-
destroy
public void destroy()Destroy method is called when the servlet is going away. Pass this down to the AxisEngine to let it clean up... But don't create the engine if it hasn't already been created.- Specified by:
destroy
in interfacejavax.servlet.Servlet
- Overrides:
destroy
in classjavax.servlet.GenericServlet
-
getEngine
get the engine for this servlet from cache or context- Returns:
- Throws:
AxisFault
-
getEngine
This is a uniform method of initializing AxisServer in a servlet context.- Throws:
AxisFault
-
getEngineEnvironment
extract information from the servlet configuration files- Parameters:
servlet
-- Returns:
-
getLoadCounter
public static int getLoadCounter()get a count of the # of services running. This is only ever an approximate number in a busy system- Returns:
- The TotalServiceCount value
-
incLockCounter
protected static void incLockCounter()thread safe lock counter increment -
decLockCounter
protected static void decLockCounter()thread safe lock counter decrement -
service
protected void service(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp) throws javax.servlet.ServletException, IOException subclass of service method that tracks entry count; calls the parent's implementation to have the http method cracked and delegated to the doGet, doPost method.- Overrides:
service
in classjavax.servlet.http.HttpServlet
- Parameters:
req
- requestresp
- response- Throws:
javax.servlet.ServletException
- something went wrongIOException
- something different went wrong
-
getWebappBase
extract the base of our webapp from an inbound request- Parameters:
request
- request containing http://foobar/axis/services/something- Returns:
- some URL like http://foobar:8080/axis/
-
getServletContext
public javax.servlet.ServletContext getServletContext()what is the servlet context- Specified by:
getServletContext
in interfacejavax.servlet.ServletConfig
- Overrides:
getServletContext
in classjavax.servlet.GenericServlet
- Returns:
- get the context from the servlet config
-
getWebInfPath
accessor to webinf- Returns:
- path to WEB-INF/ in the local filesystem
-
getHomeDir
what is the root dir of the applet?- Returns:
- path of root dir
-
getOption
Retrieve option, in order of precedence: (Managed) System property (see discovery.ManagedProperty), servlet init param, context init param. Use of system properties is discouraged in production environments, as it overrides everything else. -
isDevelopment
public boolean isDevelopment()probe for the system being 'production'- Returns:
- true for a dev system.
-