code: @Override
      public boolean contextListenerStart() {
  		boolean ok = super.contextListenerStart();
  		//the web listeners couldn't be started so we don't even try to load the sip ones
  		if(!ok) {
  			return ok;
  		}
  
  		if (logger.isDebugEnabled())
              logger.debug("Configuring sip listeners");
  
          // Instantiate the required listeners
          ClassLoader loader = getLoader().getClassLoader();
          ok = sipListeners.loadListeners(findSipApplicationListeners(), loader);
          if(!ok) {
  			return ok;
  		}
  
          List<ServletContextListener> servletContextListeners = sipListeners.getServletContextListeners();
          if (servletContextListeners != null) {
              ServletContextEvent event =
                  new ServletContextEvent(getServletContext());
              for (ServletContextListener servletContextListener : servletContextListeners) {
                  if (servletContextListener == null)
                      continue;
  
                  try {
                      fireContainerEvent("beforeContextInitialized", servletContextListener);
                      servletContextListener.contextInitialized(event);
                      fireContainerEvent("afterContextInitialized", servletContextListener);
                  } catch (Throwable t) {
                      fireContainerEvent("afterContextInitialized", servletContextListener);
  //                    getLogger().error
  //                        (sm.getString("standardContext.listenerStart",
  //                        		servletContextListener.getClass().getName()), t);
                      getLogger().error
                      	(MESSAGES.errorSendingContextInitializedEvent(servletContextListener.getClass().getName()), t);
                      ok = false;
                  }
  
                  // TODO Annotation processing
              }
          }
  
          return (ok);
  
      }
docs: AS7 invokes this before listenerStart()