https://issues.apache.org/bugzilla/show_bug.cgi?id=51637
--- Comment #3 from Mark Thomas <ma...@apache.org> 2011-08-09 12:46:25 UTC --- In short, yes. The longer version is that prior to Tomcat 7 the Lifecycle interface was loosely defined, largely optional and inconsistently implemented with large quantities of almost but not quite duplicate code. The code wasn't unmaintainable but it was a lot harder to maintain than it should have been. The inconsistencies in things like component start/stop and JMX registration of components was also causing problems. As part of the wider code clean-up for Tomcat 7 the Lifecycle interface was more tightly defined - particularly the permitted state transitions - and made non-optional for most internal components. Most (all?) of those components all extend LifecycleMBeanBase which ensures that MBean registration and de-registration happens at the correct point. It also ensures that components that extend correctly implement Lifecycle both in terms of the allowed state transitions and the firing of associated events. A side effect of this is that custom code that extends these components must override different methods. API changes are going to happen between major versions. They aren't made for the sake of it but neither are they avoided. It may be as simple as overriding a different method but you may find that other changes are required as well. It depends on exactly what the custom component is doing. As an aside, initialisation should be happening in init() not start() which probably means overriding initInternal(). -- Configure bugmail: https://issues.apache.org/bugzilla/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- You are the assignee for the bug. --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org For additional commands, e-mail: dev-h...@tomcat.apache.org