Le mer. 10 févr. 2021 à 16:37, Rémy Maucherat <r...@apache.org> a écrit :

> On Tue, Feb 9, 2021 at 10:12 PM Mark Thomas <ma...@apache.org> wrote:
>
> > Hi all,
> >
> > I've been looking at the options to integrate the Java EE to Jakarta EE
> > migration functionality into Tomcat 10.
> >
> > There are essentially two ways to do this: deployment time and runtime.
> >
> > The simplest solution to implement is probably a separate webapps-legacy
> > directory (or some other name) where WARs and DIRs added to that
> > directory get converted to Jakarta EE with the new version being placed
> > in the webapps directory. There are complexities (such as handling an
> > updates of the legacy WAR) but they should be manageable.
> >
> > A more complex version of the deploy time solution has the legacy web
> > application placed in webapps, identified as a legacy webapp and then
> > replaced with the new version (several ways to do this). The hard part
> > here is the identification of the webapp as a Java EE app. The only
> > reliable way to do this is class scanning and that is slow.
> >
> > The runtime approach converts classes and static resources as they are
> > loaded. The classes are relatively easy to handle. A
> > ClassFileTransformer can be added to the WebappClassLoader to do this.
> > The static files are more of a problem. The good news is that the
> > WebResources refactoring means static file access all goes through the
> > same code but the filtering required essentially means we'd need to load
> > static files into memory - regardless of size, convert them, and then
> > update the cache with the converted version. That is likely to have a
> > performance impact.
> >
> > Because of the performance impacts of handling static resources, the
> > runtime approach also needs a way to identify applications that need
> > conversion. I don't see a reliable, performant way to do that. Which, I
> > think, leaves us with the simple deployment time approach and something
> > (filename, special directory, something else) to mark an app as needing
> > conversion.
> >
> > A final point, which probably should have been first, is is there a
> > demand for this feature? Early indications from the users list and $work
> > is that there is (going to be) a demand for this feature.
> >
> > Thoughts?
> >
>
> Overall it seems more people would like it now, for various reasons.
> However, there's zero consensus on how since everyone came up with a
> different idea.
>
> I'd like to note the tool is the appropriate solution for most cases, so we
> cover that already. The main problem with the tool is the perceived effort
> from users.
>
> After reading everything, I'd say it's worth adding a second integrated
> option, and think I'm now swaying towards the runtime option. The main
> problem would be the detection of legacy webapps. We could simply mandate
> using an explicit new attribute on the Context element (and done !) so
> nobody pays any needless costs.
>

s/attribute/listener/ ? the context listener can install the class file
transformer + webresource filter wrapper programmatically and is a one
liner for end user. Wdyt?


>
> Rémy
>
>
> >
> > Mark
> >
> > ---------------------------------------------------------------------
> > To unsubscribe, e-mail: dev-unsubscr...@tomcat.apache.org
> > For additional commands, e-mail: dev-h...@tomcat.apache.org
> >
> >
>

Reply via email to