Class ApplicationServlet

java.lang.Object
jakarta.servlet.GenericServlet
jakarta.servlet.http.HttpServlet
org.nuxeo.ecm.webengine.rest.servlet.ApplicationServlet
All Implemented Interfaces:
jakarta.servlet.Servlet, jakarta.servlet.ServletConfig, Serializable, ResourceLocator, Reloadable, ManagedServlet
Direct Known Subclasses:
WebEngineServlet

public class ApplicationServlet extends jakarta.servlet.http.HttpServlet implements ManagedServlet, Reloadable, ResourceLocator
A hot re-loadable REST servlet. This servlet is building a Jersey REST Application.

Use it as the webengine servlet in web.xml if you want hot reload, otherwise directly use the Jersey servlet: ServletContainer.

Author:
Bogdan Stefanescu
See Also:
  • Field Details

    • isDirty

      protected volatile boolean isDirty
    • bundle

      protected org.osgi.framework.Bundle bundle
    • app

      protected ApplicationHost app
    • container

      protected org.glassfish.jersey.servlet.ServletContainer container
    • resourcesPrefix

      protected String resourcesPrefix
  • Constructor Details

    • ApplicationServlet

      public ApplicationServlet()
  • Method Details

    • setDescriptor

      public void setDescriptor(ServletDescriptor sd)
      Specified by:
      setDescriptor in interface ManagedServlet
    • init

      public void init(jakarta.servlet.ServletConfig config) throws jakarta.servlet.ServletException
      Specified by:
      init in interface jakarta.servlet.Servlet
      Overrides:
      init in class jakarta.servlet.http.HttpServlet
      Throws:
      jakarta.servlet.ServletException
    • destroy

      public void destroy()
      Specified by:
      destroy in interface jakarta.servlet.Servlet
      Overrides:
      destroy in class jakarta.servlet.GenericServlet
    • reload

      public void reload()
      Specified by:
      reload in interface Reloadable
    • getRenderingEngine

      public RenderingEngine getRenderingEngine()
    • getBundle

      public org.osgi.framework.Bundle getBundle()
    • getContainer

      public org.glassfish.jersey.servlet.ServletContainer getContainer()
    • service

      public void service(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) throws jakarta.servlet.ServletException, IOException
      Overrides:
      service in class jakarta.servlet.http.HttpServlet
      Throws:
      jakarta.servlet.ServletException
      IOException
    • containerService

      protected void containerService(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) throws jakarta.servlet.ServletException, IOException
      Throws:
      jakarta.servlet.ServletException
      IOException
    • doGet

      protected void doGet(jakarta.servlet.http.HttpServletRequest req, jakarta.servlet.http.HttpServletResponse resp) throws jakarta.servlet.ServletException, IOException
      Overrides:
      doGet in class jakarta.servlet.http.HttpServlet
      Throws:
      jakarta.servlet.ServletException
      IOException
    • initRendering

      protected RenderingEngine initRendering(jakarta.servlet.ServletConfig config) throws jakarta.servlet.ServletException
      Throws:
      jakarta.servlet.ServletException
    • destroyRendering

      protected void destroyRendering()
    • initContainer

      protected void initContainer() throws jakarta.servlet.ServletException
      Throws:
      jakarta.servlet.ServletException
    • destroyContainer

      protected void destroyContainer()
    • reloadContainer

      protected void reloadContainer() throws jakarta.servlet.ServletException
      Throws:
      jakarta.servlet.ServletException
    • createServletContainer

      protected org.glassfish.jersey.servlet.ServletContainer createServletContainer(ApplicationHost app)
    • getResourceFile

      public File getResourceFile(String key)
      Description copied from interface: ResourceLocator
      Get a file resource given a key
      Specified by:
      getResourceFile in interface ResourceLocator
    • getResourceURL

      public URL getResourceURL(String key)
      Description copied from interface: ResourceLocator
      Gets an URL resource given a key
      Specified by:
      getResourceURL in interface ResourceLocator
      Parameters:
      key - the resource key
      Returns:
      the resource URL or null if no such result was found