IntrospectionUtils.setProperty(protocolHandler, "jkHome",
System.getProperty("catalina.base"));
+ try {
+ protocolHandler.init();
+ } catch (Exception e) {
+ throw new LifecycleException
+ (sm.getString
+ ("coyoteConnector.protocolHandlerInitializationFailed", e));
+ }
+
onameProtocolHandler = register(protocolHandler,
createObjectNameKeyProperties("ProtocolHandler"));
setState(LifecycleState.STARTING);
- // Protocol handlers do not follow Lifecycle conventions.
- // protocolHandler.init() needs to wait until the connector.start()
- try {
- protocolHandler.init();
- } catch (Exception e) {
- throw new LifecycleException
- (sm.getString
- ("coyoteConnector.protocolHandlerInitializationFailed", e));
- }
-
try {
protocolHandler.start();
} catch (Exception e) {
("coyoteConnector.protocolHandlerStartFailed", e));
}
- // MapperListener doesn't follow Lifecycle conventions either
+ // MapperListener doesn't follow Lifecycle conventions
mapperListener.init();
}
setState(LifecycleState.STOPPING);
- // Protocol handlers do not follow Lifecycle conventions.
- // protocolHandler.destroy() needs to be called in connector.stop()
- try {
- protocolHandler.destroy();
- } catch (Exception e) {
- throw new LifecycleException
- (sm.getString
- ("coyoteConnector.protocolHandlerDestroyFailed", e));
- }
-
- // MapperListener doesn't follow Lifecycle conventions either
+ // MapperListener doesn't follow Lifecycle conventions
mapperListener.destroy();
}
unregister(onameMapper);
unregister(onameProtocolHandler);
+ try {
+ protocolHandler.destroy();
+ } catch (Exception e) {
+ throw new LifecycleException
+ (sm.getString
+ ("coyoteConnector.protocolHandlerDestroyFailed", e));
+ }
+
if (getService() != null) {
getService().removeConnector(this);
}
guess user passwords by brute-force. (markt)
</add>
<fix>
+ <bug>49503</bug>: Make sure connectors bind to their associated ports
+ sufficiently early to allow jsvc and the
+ org.apache.catalina.startup.EXIT_ON_INIT_FAILURE system property to
+ operate correctly. (markt)
+ </fix>
+ <fix>
<bug>49525</bug>: Ensure cookies for the ROOT context have a path of /
rather than an empty string. (markt)
</fix>