Opened 3 years ago

Closed 3 years ago

Last modified 22 months ago

#1935 closed defect (fixed)

Tomcat 7/8

Reported by: zzz Owned by: zzz
Priority: minor Milestone: 0.9.30
Component: apps/jetty Version: 0.9.28
Keywords: Cc:
Parent Tickets: #1512, #1818, #1870, #1902 Sensitive: no

Description

6 is EOL and JSP compiler doesn't work in Java 9.
8 is only in xenial+ (same story with Jetty 9), so 7 might be a better target. 8 has both 8.0.x and 8.5.x, only 8.0.x is in ubuntu.

But jetty 8 isn't in stretch right now so we're getting into a tight spot trying to support wheezy/precise through current distros. But even trusty/jessie could be a problem. See also http://zzz.i2p/topics/2216

Summary from link below:

Servlet Spec 	JSP Spec 	EL Spec 	WebSocket Spec 	JASPIC Spec 	Apache Tomcat Version 	Latest Released Version 	Supported Java Versions

3.1 	2.3 	3.0 	1.1 	1.1 	8.5.x 	8.5.11 	7 and later
3.1 	2.3 	3.0 	1.1 	N/A 	8.0.x (superseded) 	8.0.39 (superseded) 	7 and later
3.0 	2.2 	2.2 	1.1 	N/A 	7.0.x 	7.0.73 	6 and later
(7 and later for WebSocket)
2.5 	2.1 	2.1 	N/A 	N/A 	6.0.x 	6.0.48 	5 and later

http://tomcat.apache.org/whichversion.html

Libservlet and EL versions as well as JSTL affects things, esp. susidns and bote plugin.

Not clear if we can do this independently of Jetty 9 #1512 or must be the same time.

May require update to every jsp file.

Subtickets

Change History (4)

comment:1 Changed 3 years ago by zzz

Component: apps/consoleapps/jetty
Status: newaccepted

Jetty 9.2.x bundles servlet 3.1, JSP 2.3, EL 3.0, and JSTL 1.2. So this looks like Tomcat 8.x. It appears to include almost everything we need, so we don't need to bundle separate Tomcat jars like we do now for Jetty 8.

However, the Jetty 9 Debian packages do NOT include the jsp / Tomcat stuff. So we'll need to have a separate dependency on libtomcat8-java and possibly others (for EL/JSTL/API).

So some preliminary decisions: This should be coincident with the Jetty 9 change, we'll use all the Jetty files for standalone builds, and use Tomcat 8.0.x for package builds.

I have standalone builds working in the i2p.i2p.zzz.jetty9 branch, untested. No mods yet for package builds.

comment:2 Changed 3 years ago by zzz

Milestone: 0.9.320.9.30

This is pretty much done. Jetty 9.2.21 bundles Tomcat 8.0.33; Ubuntu Yakkety has Tomcat 8.0.37 in their libtomcat8-java. I have both working standard and package builds working in my jetty9 branch. Verified that it fixes the issues in parent tickets #1818 and #1870. Target will be either 0.9.30 or 31, to be decided at next week's meeting.

comment:3 Changed 3 years ago by zzz

Resolution: fixed
Status: acceptedclosed

In 0.9.29-4

comment:4 Changed 22 months ago by zzz

FYI changed in fc0f0b0f887f0286c87af12a08ad96524ee52d03 0.9.32-8:

Tomcat 8.5.23
Prior to Jetty 9, we used the Tomcat 6 distribution.
As of Jetty 9, we used Tomcat 8.0.33 that was included in the Jetty 9 distribution,
but that is old and doesn't get updated.
Now use the latest Tomcat 8 distribution, and pick the same packages
as Jetty 9 did in their distribution.

Note: See TracTickets for help on using tickets.