code: public synchronized void removeComponent(ComponentEvent event)
      {
          if(log.isDebugEnabled())log.debug("Component removed "+event);
          
          try
          {
              Object o=event.getComponent();
              Holder holder=(Holder)_mbeanMap.remove(o);
              if (holder!=null)
                  getMBeanServer().unregisterMBean(holder.oName);
              else if (o==_httpServer)
                  getMBeanServer().unregisterMBean(this.getObjectName());
          }
          catch(Exception e)
          {
              log.warn(LogSupport.EXCEPTION,e);
          }
      }
docs: /* ------------------------------------------------------------