David Jencks wrote:
i've worked on this some more and come up with a patch that I feel more or less comfortable showing to tomcat :-) at https://issues.apache.org/jira/browse/GERONIMO-3010 or directly https://issues.apache.org/jira/secure/attachment/12355053/GERONIMO-3010-3a.patch

Thanks.

I'm happy to open a bugzilla entry and attach the patch to it as well, but I also need to keep the patch tracked in geronimo until there's more resolution as to its fate.

This patch features:

-- xml override of annotations. There's even a manual test via a new EnvEntryExample servlet which is present but not entirely integrated into the examples webapp.

-- postCreate and preDestroy annotated methods are looked for on all superclasses per spec.

-- Improved interface name of InstanceManager rather than LifecycleProvider, thanks David Blevins

Ok.

-- Jasper does not use any Catalina classes, and catalina only uses a jasper class if it creates its own InstanceManager: if you supply an InstanceManager yourself there is no classes dependency of catalina on jasper (although it appears that startup creates a JspServlet in a default web app???). This removes the need for sharing org.apache.AnnotationProcessor between catalina and jasper.

Submitting this in the patch makes me look at it and consider it, but I much prefer keeping a shared interface between Catalina and Jasper (because otherwise it's pretty obvious one of them becomes dependent on the other; and predictably, the main instance manager extends org.apache.jasper.instanceManagement.InstanceManager).

Other smaller problems:
- InstanceManagerFactory in Jasper is a bit too convoluted as far as I am concerned - I still don't know if I agree with removing the security checks out of Catalina, merging checks between filters and servlets, etc - Class hierarchy for InstanceManager -> meh (although I suppose it perfectly fits your needs, though ...)

-- jasper loads classes more directly, tomcat uses care in figuring out if security precautions are needed and which classloader should be used.

Some more improvements are possible, for example the jasper generated classes are loaded twice. I'd rather make sure that the current state doesn't break a lot of the tck before making a lot more changes.

To be honest, this whole stuff may be 6.next material. We'll see.

Rémy

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to