Class PentahoXmlaServlet

  • All Implemented Interfaces:
    Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig, mondrian.xmla.XmlaConstants

    public class PentahoXmlaServlet
    extends mondrian.xmla.impl.DynamicDatasourceXmlaServlet
    Filters out DataSource elements that are not XMLA-related.

    Background: Pentaho re-used datasources.xml for non-XMLA purposes. But since DefaultXmlaServlet requires actual XMLA datasources, this servlet extends DefaultXmlaServlet and removes the non-XMLA datasources before continuing normal DefaultXmlaServlet behavior.

    The convention here is that any DataSource elements with <ProviderType>None</ProviderType> are considered non-XMLA and are filtered out.

    Author:
    mlowery
    See Also:
    Serialized Form
    • Nested Class Summary

      • Nested classes/interfaces inherited from class mondrian.xmla.XmlaServlet

        mondrian.xmla.XmlaServlet.Phase
    • Field Summary

      • Fields inherited from class mondrian.xmla.impl.MondrianXmlaServlet

        DEFAULT_DATASOURCE_FILE, server
      • Fields inherited from class mondrian.xmla.impl.DefaultXmlaServlet

        nl
      • Fields inherited from class mondrian.xmla.XmlaServlet

        charEncoding, LOGGER, PARAM_CALLBACKS, PARAM_CHAR_ENCODING, PARAM_DATASOURCES_CONFIG, PARAM_OPTIONAL_DATASOURCE_CONFIG, xmlaHandler
      • Fields inherited from interface mondrian.xmla.XmlaConstants

        CHH_AUTHORIZATION_CODE, CHH_AUTHORIZATION_FAULT_FS, CHH_CODE, CHH_FAULT_FS, CLIENT_FAULT_FC, CONTEXT_MIME_TYPE, CONTEXT_ROLE_NAME, CONTEXT_XMLA_PASSWORD, CONTEXT_XMLA_SESSION_ID, CONTEXT_XMLA_SESSION_STATE, CONTEXT_XMLA_SESSION_STATE_BEGIN, CONTEXT_XMLA_SESSION_STATE_END, CONTEXT_XMLA_SESSION_STATE_WITHIN, CONTEXT_XMLA_USERNAME, CPOSTA_CODE, CPOSTA_FAULT_FS, CPREA_CODE, CPREA_FAULT_FS, FAULT_ACTOR, FAULT_FC_PREFIX, FAULT_FS_PREFIX, FAULT_NS_PREFIX, HSB_ACCESS_DENIED_CODE, HSB_ACCESS_DENIED_FAULT_FS, HSB_BAD_COMMAND_CODE, HSB_BAD_COMMAND_FAULT_FS, HSB_BAD_METHOD_CODE, HSB_BAD_METHOD_FAULT_FS, HSB_BAD_METHOD_NS_CODE, HSB_BAD_METHOD_NS_FAULT_FS, HSB_BAD_NON_NULLABLE_COLUMN_CODE, HSB_BAD_NON_NULLABLE_COLUMN_FAULT_FS, HSB_BAD_PROPERTIES_CODE, HSB_BAD_PROPERTIES_FAULT_FS, HSB_BAD_PROPERTIES_LIST_CODE, HSB_BAD_PROPERTIES_LIST_FAULT_FS, HSB_BAD_REQUEST_TYPE_CODE, HSB_BAD_REQUEST_TYPE_FAULT_FS, HSB_BAD_RESTRICTION_LIST_CODE, HSB_BAD_RESTRICTION_LIST_FAULT_FS, HSB_BAD_RESTRICTIONS_CODE, HSB_BAD_RESTRICTIONS_FAULT_FS, HSB_BAD_SOAP_BODY_CODE, HSB_BAD_SOAP_BODY_FAULT_FS, HSB_BAD_STATEMENT_CODE, HSB_BAD_STATEMENT_FAULT_FS, HSB_CONNECTION_DATA_SOURCE_CODE, HSB_CONNECTION_DATA_SOURCE_FAULT_FS, HSB_DISCOVER_FORMAT_CODE, HSB_DISCOVER_FORMAT_FAULT_FS, HSB_DISCOVER_UNPARSE_CODE, HSB_DISCOVER_UNPARSE_FAULT_FS, HSB_DRILL_THROUGH_FORMAT_CODE, HSB_DRILL_THROUGH_FORMAT_FAULT_FS, HSB_DRILL_THROUGH_NOT_ALLOWED_CODE, HSB_DRILL_THROUGH_NOT_ALLOWED_FAULT_FS, HSB_DRILL_THROUGH_SQL_CODE, HSB_DRILL_THROUGH_SQL_FAULT_FS, HSB_EXECUTE_QUERY_CODE, HSB_EXECUTE_QUERY_FAULT_FS, HSB_EXECUTE_UNPARSE_CODE, HSB_EXECUTE_UNPARSE_FAULT_FS, HSB_PARSE_QUERY_CODE, HSB_PARSE_QUERY_FAULT_FS, HSB_PROCESS_CODE, HSB_PROCESS_FAULT_FS, HSB_UNKNOWN_CODE, HSB_UNKNOWN_FAULT_FS, HSH_BAD_SESSION_ID_CODE, HSH_BAD_SESSION_ID_FAULT_FS, HSH_MUST_UNDERSTAND_CODE, HSH_MUST_UNDERSTAND_FAULT_FS, HSH_UNKNOWN_CODE, HSH_UNKNOWN_FAULT_FS, MONDRIAN_NAMESPACE, MSM_UNKNOWN_CODE, MSM_UNKNOWN_FAULT_FS, MUST_UNDERSTAND_FAULT_FC, NS_SOAP_ENC_1_1, NS_SOAP_ENC_1_2, NS_SOAP_ENV_1_1, NS_SOAP_ENV_1_2, NS_SOAP_SECEXT, NS_SQL, NS_XMLA, NS_XMLA_EMPTY, NS_XMLA_EX, NS_XMLA_MDDATASET, NS_XMLA_ROWSET, NS_XSD, NS_XSI, SERVER_FAULT_FC, SIE_REQUEST_STATE_CODE, SIE_REQUEST_STATE_FAULT_FS, SOAP_MUST_UNDERSTAND_ATTR, SOAP_PREFIX, UNKNOWN_ERROR_CODE, UNKNOWN_ERROR_FAULT_FS, USM_DOM_FACTORY_CODE, USM_DOM_FACTORY_FAULT_FS, USM_DOM_PARSE_CODE, USM_DOM_PARSE_FAULT_FS, USM_DOM_PARSE_IO_CODE, USM_DOM_PARSE_IO_FAULT_FS, USM_REQUEST_INPUT_CODE, USM_REQUEST_INPUT_FAULT_FS, USM_REQUEST_STATE_CODE, USM_REQUEST_STATE_FAULT_FS, USM_UNKNOWN_CODE, USM_UNKNOWN_FAULT_FS, VERSION_MISSMATCH_FAULT_FC, XMLA_BEGIN_SESSION, XMLA_END_SESSION, XMLA_SECURITY, XMLA_SESSION, XMLA_SESSION_ID
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      protected mondrian.xmla.XmlaHandler.ConnectionFactory createConnectionFactory​(javax.servlet.ServletConfig servletConfig)  
      void init​(javax.servlet.ServletConfig servletConfig)  
      protected mondrian.spi.CatalogLocator makeCatalogLocator​(javax.servlet.ServletConfig servletConfig)  
      protected mondrian.server.RepositoryContentFinder makeContentFinder​(String dataSourcesUrl)  
      protected String makeDataSourcesUrl​(javax.servlet.ServletConfig config)  
      • Methods inherited from class mondrian.xmla.impl.DynamicDatasourceXmlaServlet

        destroy
      • Methods inherited from class mondrian.xmla.impl.DefaultXmlaServlet

        generateSessionId, getDocumentBuilderFactory, handleFault, handleSoapBody, handleSoapHeader, logXmlaRequest, marshallSoapMessage, unmarshallSoapMessage
      • Methods inherited from class mondrian.xmla.XmlaServlet

        addCallback, doPost, getBooleanInitParameter, getCallbacks, getParameter, getXmlaHandler, initCallbacks, initCharEncodingHandler
      • Methods inherited from class javax.servlet.http.HttpServlet

        doDelete, doGet, doHead, doOptions, doPut, doTrace, getLastModified, service, service
      • Methods inherited from class javax.servlet.GenericServlet

        getInitParameter, getInitParameterNames, getServletConfig, getServletContext, getServletInfo, getServletName, init, log, log
    • Constructor Detail

      • PentahoXmlaServlet

        public PentahoXmlaServlet()
    • Method Detail

      • makeContentFinder

        protected mondrian.server.RepositoryContentFinder makeContentFinder​(String dataSourcesUrl)
        Overrides:
        makeContentFinder in class mondrian.xmla.impl.DynamicDatasourceXmlaServlet
      • makeCatalogLocator

        protected mondrian.spi.CatalogLocator makeCatalogLocator​(javax.servlet.ServletConfig servletConfig)
        Overrides:
        makeCatalogLocator in class mondrian.xmla.impl.MondrianXmlaServlet
      • makeDataSourcesUrl

        protected String makeDataSourcesUrl​(javax.servlet.ServletConfig config)
        Overrides:
        makeDataSourcesUrl in class mondrian.xmla.impl.MondrianXmlaServlet
      • createConnectionFactory

        protected mondrian.xmla.XmlaHandler.ConnectionFactory createConnectionFactory​(javax.servlet.ServletConfig servletConfig)
                                                                               throws javax.servlet.ServletException
        Overrides:
        createConnectionFactory in class mondrian.xmla.impl.MondrianXmlaServlet
        Throws:
        javax.servlet.ServletException
      • init

        public void init​(javax.servlet.ServletConfig servletConfig)
                  throws javax.servlet.ServletException
        Specified by:
        init in interface javax.servlet.Servlet
        Overrides:
        init in class mondrian.xmla.impl.DefaultXmlaServlet
        Throws:
        javax.servlet.ServletException