Class BaseXDocReportServlet

java.lang.Object
jakarta.servlet.GenericServlet
jakarta.servlet.http.HttpServlet
fr.opensagres.xdocreport.document.web.BaseXDocReportServlet
All Implemented Interfaces:
XDocBaseServletConstants, jakarta.servlet.Servlet, jakarta.servlet.ServletConfig, Serializable
Direct Known Subclasses:
AbstractProcessXDocReportServlet, UploadXDocReportServlet

public abstract class BaseXDocReportServlet extends jakarta.servlet.http.HttpServlet implements XDocBaseServletConstants
Base class for XDoc Report servlet.
See Also:
  • Constructor Details

    • BaseXDocReportServlet

      public BaseXDocReportServlet()
  • Method Details

    • 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.GenericServlet
      Throws:
      jakarta.servlet.ServletException
    • doGet

      public void doGet(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) throws jakarta.servlet.ServletException, IOException
      Handles HTTP GET requests by calling #doRequest().
      Overrides:
      doGet in class jakarta.servlet.http.HttpServlet
      Throws:
      jakarta.servlet.ServletException
      IOException
    • doPost

      public void doPost(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) throws jakarta.servlet.ServletException, IOException
      Handles HTTP POST requests by calling #doRequest().
      Overrides:
      doPost in class jakarta.servlet.http.HttpServlet
      Throws:
      jakarta.servlet.ServletException
      IOException
    • getDispatchParameter

      protected String getDispatchParameter(jakarta.servlet.http.HttpServletRequest request)
      Returns dispatch parameter value.
      Parameters:
      request -
      Returns:
    • getReportId

      protected String getReportId(jakarta.servlet.http.HttpServletRequest request)
      Returns the id of the report.
      Parameters:
      request -
      Returns:
    • getProcessState

      protected ProcessState getProcessState(jakarta.servlet.http.HttpServletRequest request)
      Returns process state (original|preprocessed|generated).
      Parameters:
      request -
      Returns:
    • getEntryName

      protected String getEntryName(jakarta.servlet.http.HttpServletRequest request)
      Returns the entry name of the report.
      Parameters:
      request -
      Returns:
    • getTemplateEngineKind

      protected String getTemplateEngineKind(String reportId, jakarta.servlet.http.HttpServletRequest request)
    • getTemplateEngineKind

      protected String getTemplateEngineKind(jakarta.servlet.http.HttpServletRequest request)
    • getTemplateEngineId

      protected String getTemplateEngineId(jakarta.servlet.http.HttpServletRequest request)
      Returns the template engine id from request.
      Parameters:
      request -
      Returns:
    • getTemplateEngine

      protected fr.opensagres.xdocreport.template.ITemplateEngine getTemplateEngine(String reportId, jakarta.servlet.http.HttpServletRequest request)
      Returns the template engine to use for the report. By default, it search if there is template id from request and otherwise returns the default template engine.
      Parameters:
      reportId -
      request -
      Returns:
    • getTemplateEngine

      protected fr.opensagres.xdocreport.template.ITemplateEngine getTemplateEngine(IXDocReport report, jakarta.servlet.http.HttpServletRequest request)
    • getTemplateEngine

      protected fr.opensagres.xdocreport.template.ITemplateEngine getTemplateEngine(jakarta.servlet.http.HttpServletRequest request)
      Returns the template engine from request and otherwise returns the default template engine.
      Parameters:
      request -
      Returns:
    • getRegistry

      protected XDocReportRegistry getRegistry(jakarta.servlet.http.HttpServletRequest request)
      Returns the XDocReport registry which load and cache document. By default the registry is a singleton. If you wish manage registry per HTTP session, override this method, create an instance per session and returns the registry instance linked to the HTTP session.
      Parameters:
      request -
      Returns:
    • getRegistryFromHTTPSession

      protected XDocReportRegistry getRegistryFromHTTPSession(jakarta.servlet.http.HttpServletRequest request)
      Returns registry from HTTP session.
      Parameters:
      request -
      Returns:
    • clearRegistryFromHTTPSession

      protected void clearRegistryFromHTTPSession(jakarta.servlet.http.HttpServletRequest request)
      Clear registry from HTTP session.
      Parameters:
      request -
    • disableHTTPResponCache

      protected void disableHTTPResponCache(jakarta.servlet.http.HttpServletResponse response)
      Disable cache HTTP hearder.
      Parameters:
      response -
    • prepareHTTPResponse

      protected void prepareHTTPResponse(String reportId, fr.opensagres.xdocreport.converter.MimeMapping mimeMapping, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)
    • prepareHTTPResponse

      protected void prepareHTTPResponse(String reportId, String entryName, jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response)
    • isDisableHTTPResponCache

      protected boolean isDisableHTTPResponCache()
    • isGenerateContentDisposition

      protected boolean isGenerateContentDisposition(String reportId, fr.opensagres.xdocreport.converter.MimeMapping mimeMapping, jakarta.servlet.http.HttpServletRequest request)
    • getContentDisposition

      protected String getContentDisposition(String reportId, fr.opensagres.xdocreport.converter.MimeMapping mimeMapping, jakarta.servlet.http.HttpServletRequest request)
    • getContentDisposition

      protected String getContentDisposition(String fileName)
    • processRequest

      protected abstract void processRequest(jakarta.servlet.http.HttpServletRequest request, jakarta.servlet.http.HttpServletResponse response) throws jakarta.servlet.ServletException, IOException
      Handles all requests (by default).
      Parameters:
      request - HttpServletRequest object containing client request
      response - HttpServletResponse object for the response
      Throws:
      jakarta.servlet.ServletException
      IOException