| 
                         这段注释翻译就是,这个接口是提供给组件声明周期管理的,并且提供了声明周期流转图。这里我们只需要知道正常流程即可: 
- New--->Init()---->Start()---->Stop()--->Destory() 
 
  
从生命周期探索连接器 
根据上面的生命周期说明,我们可以知道连接器(Connector)就是按照如此的声明周期管理的,所以我们找到了线索,所以连接器肯定会先初始化然后再启动。我们查看其initInternal()方法可以知道连接器初始化做了什么事情,源码如下: 
- @Override 
 -  protected void initInternal() throws LifecycleException { 
 -  super.initInternal(); 
 -  if (protocolHandler == null) { 
 -  throw new LifecycleException( 
 -  sm.getString("coyoteConnector.protocolHandlerInstantiationFailed")); 
 -  } 
 -  // Initialize adapter 
 -  adapter = new CoyoteAdapter(this); 
 -  protocolHandler.setAdapter(adapter); 
 -  if (service != null) { 
 -  protocolHandler.setUtilityExecutor(service.getServer().getUtilityExecutor()); 
 -  } 
 -  // Make sure parseBodyMethodsSet has a default 
 -  if (null == parseBodyMethodsSet) { 
 -  setParseBodyMethods(getParseBodyMethods()); 
 -  } 
 -  if (protocolHandler.isAprRequired() && !AprLifecycleListener.isInstanceCreated()) { 
 -  throw new LifecycleException(sm.getString("coyoteConnector.protocolHandlerNoAprListener", 
 -  getProtocolHandlerClassName())); 
 -  } 
 -  if (protocolHandler.isAprRequired() && !AprLifecycleListener.isAprAvailable()) { 
 -  throw new LifecycleException(sm.getString("coyoteConnector.protocolHandlerNoAprLibrary", 
 -  getProtocolHandlerClassName())); 
 -  } 
 -  if (AprLifecycleListener.isAprAvailable() && AprLifecycleListener.getUseOpenSSL() && 
 -  protocolHandler instanceof AbstractHttp11JsseProtocol) { 
 -  AbstractHttp11JsseProtocol<?> jsseProtocolHandler = 
 -  (AbstractHttp11JsseProtocol<?>) protocolHandler; 
 -  if (jsseProtocolHandler.isSSLEnabled() && 
 -  jsseProtocolHandler.getSslImplementationName() == null) { 
 -  // OpenSSL is compatible with the JSSE configuration, so use it if APR is available 
 -  jsseProtocolHandler.setSslImplementationName(OpenSSLImplementation.class.getName()); 
 -  } 
 -  } 
 -  try { 
 -  protocolHandler.init(); 
 -  } catch (Exception e) { 
 -  throw new LifecycleException( 
 -  sm.getString("coyoteConnector.protocolHandlerInitializationFailed"), e); 
 -  } 
 -  } 
 - } 
 
                          (编辑:52站长网) 
【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! 
                     |