Package org.jolokia.server.core.http
Class AgentServlet
java.lang.Object
jakarta.servlet.GenericServlet
jakarta.servlet.http.HttpServlet
org.jolokia.server.core.http.AgentServlet
- All Implemented Interfaces:
jakarta.servlet.Servlet,jakarta.servlet.ServletConfig,Serializable
- Direct Known Subclasses:
OsgiAgentServlet
public class AgentServlet
extends jakarta.servlet.http.HttpServlet
Agent servlet which connects to a local JMX MBeanServer for
JMX operations.
It uses a REST based approach which translates a GET Url into a request. See the reference documentation for a detailed description of this servlet's features.
- Since:
- Apr 18, 2009
- Author:
- roland@jolokia.org
- See Also:
-
Constructor Summary
ConstructorsConstructorDescriptionNo argument constructor, used e.g.AgentServlet(Restrictor pRestrictor) Constructor taking a restrictor to use -
Method Summary
Modifier and TypeMethodDescriptionprotected ConfigurationcreateConfig(jakarta.servlet.ServletConfig pServletConfig) Examines servlet config and servlet context for configuration parameters.protected LogHandlercreateLogHandler(jakarta.servlet.ServletConfig pServletConfig, Configuration pConfig) Create a log handler using this servlet's logging facility for logging.protected RestrictorcreateRestrictor(Configuration pConfig, LogHandler pLogHandler) Create a restrictor to use.voiddestroy()protected voiddoGet(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) protected voiddoOptions(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) OPTION requests are treated as CORS preflight requestsprotected voiddoPost(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) protected ServerDetectorLookupHook for allowing a custome detector lookupvoidinit(jakarta.servlet.ServletConfig pServletConfig) Initialize the backend systems by creating aJolokiaServiceManagerA subclass can tune this step by overridingcreateLogHandler(jakarta.servlet.ServletConfig, org.jolokia.server.core.config.Configuration),createRestrictor(org.jolokia.server.core.config.Configuration, org.jolokia.server.core.service.api.LogHandler)andcreateConfig(jakarta.servlet.ServletConfig)protected voidinitServices(jakarta.servlet.ServletConfig pServletConfig, JolokiaServiceManager pServiceManager) Initialize services and register service factoriesMethods inherited from class jakarta.servlet.http.HttpServlet
doDelete, doHead, doPut, doTrace, getLastModified, service, serviceMethods inherited from class jakarta.servlet.GenericServlet
getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
-
Constructor Details
-
AgentServlet
public AgentServlet()No argument constructor, used e.g. by a servlet descriptor when creating the servlet out of web.xml -
AgentServlet
Constructor taking a restrictor to use- Parameters:
pRestrictor- restrictor to use ornullif the restrictor should be created in the default way by doing a lookup and use the standard restrictors.
-
-
Method Details
-
init
public void init(jakarta.servlet.ServletConfig pServletConfig) throws jakarta.servlet.ServletException Initialize the backend systems by creating aJolokiaServiceManagerA subclass can tune this step by overridingcreateLogHandler(jakarta.servlet.ServletConfig, org.jolokia.server.core.config.Configuration),createRestrictor(org.jolokia.server.core.config.Configuration, org.jolokia.server.core.service.api.LogHandler)andcreateConfig(jakarta.servlet.ServletConfig)- Specified by:
initin interfacejakarta.servlet.Servlet- Overrides:
initin classjakarta.servlet.GenericServlet- Parameters:
pServletConfig- servlet configuration- Throws:
jakarta.servlet.ServletException
-
destroy
public void destroy()- Specified by:
destroyin interfacejakarta.servlet.Servlet- Overrides:
destroyin classjakarta.servlet.GenericServlet
-
initServices
protected void initServices(jakarta.servlet.ServletConfig pServletConfig, JolokiaServiceManager pServiceManager) Initialize services and register service factories- Parameters:
pServletConfig- servlet configurationpServiceManager- service manager to which to add services
-
getServerDetectorLookup
Hook for allowing a custome detector lookup- Returns:
- detector lookup class to use in addition to the standard classpath scanning or null if this is not needed
-
createConfig
Examines servlet config and servlet context for configuration parameters. Configuration from the servlet context overrides servlet parameters defined in web.xml. This method can be subclassed in order to provide an own mechanism for providing a configuration.- Parameters:
pServletConfig- servlet configuration- Returns:
- generated configuration
-
createLogHandler
protected LogHandler createLogHandler(jakarta.servlet.ServletConfig pServletConfig, Configuration pConfig) Create a log handler using this servlet's logging facility for logging. This method can be overridden to provide a custom log handler.- Parameters:
pServletConfig- servlet configpConfig- jolokia config- Returns:
- a default log handler
-
createRestrictor
Create a restrictor to use. By default, this method returns the restrictor given in the constructor or does a lookup for a policy fule, but thie can be overridden in order to fine tune the creation.- Returns:
- the restrictor to use
-
doGet
protected void doGet(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) throws IOException - Overrides:
doGetin classjakarta.servlet.http.HttpServlet- Throws:
IOException
-
doPost
protected void doPost(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) throws IOException - Overrides:
doPostin classjakarta.servlet.http.HttpServlet- Throws:
IOException
-
doOptions
protected void doOptions(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) OPTION requests are treated as CORS preflight requests- Overrides:
doOptionsin classjakarta.servlet.http.HttpServlet- Parameters:
req- the original requestresp- the response the answer are written to
-