code: private void init() throws RepositoryException, RepositoryConfigurationException
     {
        List<WorkspaceEntry> wsEntries = config.getWorkspaceEntries();
  
        NodeTypeDataManager typeManager = (NodeTypeDataManager)this.getComponentInstanceOfType(NodeTypeDataManager.class);
        NamespaceRegistryImpl namespaceRegistry =
           (NamespaceRegistryImpl)this.getComponentInstanceOfType(NamespaceRegistry.class);
  
        for (WorkspaceEntry ws : wsEntries)
        {
           initWorkspace(ws);
           WorkspaceContainer workspaceContainer = getWorkspaceContainer(ws.getName());
           SearchManager searchManager =
              (SearchManager)workspaceContainer.getComponentInstanceOfType(SearchManager.class);
           //         if (searchManager != null)
           //         {
           //            typeManager.addQueryHandler(searchManager.getHandler());
           //            namespaceRegistry.addQueryHandler(searchManager.getHandler());
           //         }
           //         else
           //         {
           //            log.warn("Search manager not configured for " + ws.getName());
           //         }
        }
  
        SystemSearchManagerHolder searchManager =
           (SystemSearchManagerHolder)this.getComponentInstanceOfType(SystemSearchManagerHolder.class);
        //      if (searchManager != null)
        //      {
        //         typeManager.addQueryHandler(searchManager.get().getHandler());
        //         namespaceRegistry.addQueryHandler(searchManager.get().getHandler());
        //      }
        //      else
        //      {
        //         log.warn("System search manager not configured ");
        //      }
  
     }
docs: Initialize worspaces (root node and jcr:system for system workspace).
  <p>
  Runs on container start.
  
  @throws RepositoryException
  @throws RepositoryConfigurationException