tomcat-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christopher Schultz <>
Subject Re: Jar scanning, SCI scanning, fragment scanning
Date Fri, 14 Jun 2013 16:08:14 GMT

On 6/14/13 5:38 AM, Romain Manni-Bucau wrote:
> can work this way, today that's not as easy as it could to replace tomat
> scanning(s) (tld, classes) by tomee one.
> About CDI: you basically need to pass all classes on jars with a beans.xml
> to the CDI container so @HandlesType doesn't match this need really well.

It's a pathological case, but there's nothing stopping you from doing this:


That way, you'll get everything. Then you can scan the Class objects to
your heart's content looking for whatever you need. CDI can be
implemented this way: just replace the "library" JAR scanner with an SCI
that responds as if it had scanned all the classes itself.

I have to imaging any JAR scanner would be written with a callback
interface, so just loop-over all the Classes in the Set you get and
fire-off those call-backs: you get the scanning for free already done by
Tomcat. Set a global-ish flag in the library saying that scanning has
been done and stop.

Then your fall-back scanner runs just in case SCIs aren't available
(pre-3.0 container for example -- the Servlet EG recently clarified that
even a webapp with a pre-3.0 deployment descriptor still needs to have
all its 3.0-type features fired which is a decision which seems
astoundingly foolish to me) -- check the aforementioned flag and skip
"traditional" scanning if you already got it for free.

The only thing "missing" is a "standard" scanner -- which was what I was
suggesting. If you implement a standard scanner and it's good, maybe
Tomcat will adopt it.... and wire it through SCIs because that's what
web containers do.


View raw message