You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by Mark Thomas <ma...@apache.org> on 2013/11/01 13:54:19 UTC

Tomcat 8 plans

Now 8.0.0-RC5 is out and the WebSocket implementation seems to be fairly
stable, I plan to start work on the next stage of the resources
refactoring which will focus on the class loader.

The rough outline of what I plan to do is:
- Add methods that only return class loader resources (i.e. anything in
  WEB-INF/classes or in a JAR in /WEB-INF/lib) to the WebResourceRoot
  interface
- Add an option to track InputStreams obtained from a WebResource that
  haven't been closed.
- Refactor the web application class loader to use these methods which
  should:
  - reduce the need to use caching in the web application class loader
  - simplify the resource look up code in the class loader
  - remove the need for the anti JAR locking option
  - remove the need to extract JARs into the work directory when the
    WAR is not unpacked

I hope to have this work completed early next week and plan to produce a
new RC as soon as it is done.

In other news, Commons Pool 2 is close to a release so Tomcat 8 will be
updated to use that release as soon as it becomes available.

The remaining issues I'd like to resolve before dropping the RC status
for Tomcat 8 are:
- based the build on a release of Commons DBCP 2
- complete the TLD refactoring

Mark

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org


Re: Tomcat 8 plans

Posted by Mark Thomas <ma...@apache.org>.
On 01/11/2013 12:54, Mark Thomas wrote:
> Now 8.0.0-RC5 is out and the WebSocket implementation seems to be fairly
> stable, I plan to start work on the next stage of the resources
> refactoring which will focus on the class loader.
> 
> The rough outline of what I plan to do is:
> - Add methods that only return class loader resources (i.e. anything in
>   WEB-INF/classes or in a JAR in /WEB-INF/lib) to the WebResourceRoot
>   interface
> - Add an option to track InputStreams obtained from a WebResource that
>   haven't been closed.
> - Refactor the web application class loader to use these methods which
>   should:
>   - reduce the need to use caching in the web application class loader
>   - simplify the resource look up code in the class loader
>   - remove the need for the anti JAR locking option
>   - remove the need to extract JARs into the work directory when the
>     WAR is not unpacked
> 
> I hope to have this work completed early next week and plan to produce a
> new RC as soon as it is done.

I have this in a working state so I am going to commit to give folks a
chance to test and/or comment. I've been using git so apologies in
advance for the 30 or so commit messages that are about to arrive on the
dev list. Overall, I have dropped more lines than I have added. The web
application class loader is a lot cleaner.

My testing to date has consisted of using the examples web app in WAR
form with unpack WARs disabled. Everything appears to work without
having to create temporary copies of anything anywhere.

I haven't tested security (I need to check I haven't broken support for
signed JARs) and I haven't tested performance. I plan to test
performance using Jira by looking at Jira start times.

The unclosed InputStream tracking works (it complained during
development when I wasn't cleaning up properly). It will be interesting
to see what reports that generates with a real-world application.

Mark


> In other news, Commons Pool 2 is close to a release so Tomcat 8 will be
> updated to use that release as soon as it becomes available.
>
> The remaining issues I'd like to resolve before dropping the RC status
> for Tomcat 8 are:
> - based the build on a release of Commons DBCP 2
> - complete the TLD refactoring
> 
> Mark
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
> For additional commands, e-mail: dev-help@tomcat.apache.org
> 


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org