-
Notifications
You must be signed in to change notification settings - Fork 377
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade Jetty to 9.x #8712
Comments
Reported by |
Reported by |
Reported by |
Reported by |
Reported by |
Reported by |
Reported by |
Reported by |
Reported by |
Reported by |
Reported by |
Reported by
|
Reported by |
Reported by
|
What is the status of this issue? |
Is there anyway that this can be pushed up in priority |
It's done and is ready to be merged: [1]. |
@davido you still need to put the jetty 9 libs in the tools repo from talking to devs on ##gwt so that the automated tests can work. |
I think you can make a pull request on the |
|
The Jetty 9.2 quick start mechanism provides almost an order of magnitude improvement in start time [1]. Moreover since Jetty 8 is horribly outdated, more and more projects that depend on GWT upgraded to current Jetty 9 and because of incompatibility between Jetty 8 and Jetty 9 have classpath collisions, that can be only resolved with very ugly hacks, including forking of part of GWT source code: [2]. Because HtmlUnit project, used for test toolchain had dependency on outdated Jetty 8 (WebSocket) we had not an upgrade path here. Luckily, HtmlUnit was recently upgraded to use Jetty 9.2.x: [3]. The following transitive dependencies were updated: * commons-codec: 1.10 * commons-lang: 3.4 * commons-logging: 1.2 * cssparser: 0.9.18 * htmlunit: 2.19 * htmlunit-core-js: 2.15 * httpclient: 4.5.1 * httpcore: 4.4.4 * httpmime: 4.5.1 * jetty: 9.2.14.v20151106 * log4j: 1.2.17 * nekohtml: 1.9.22 * slf4j-api: 1.7.12 * slf4j-log4j12: 1.7.12 * tomcat-servlet-api: 8.0.28 TEST PLAN: $ cd user && ant test.dev.htmlunit test.draft.htmlunit Note, that animation tests were disabled, because they break with htmlunit-2.19. However unchanged code works against 2.18. So that we can alternatively upgrade to older version of the library, instead of disabling the tests. See code comments for more details. [1] https://webtide.com/jetty-9-quick-start [2] https://gerrit-review.googlesource.com/59354 [3] https://sourceforge.net/p/htmlunit/bugs/1656 Bug-Link: gwtproject/gwt#8712 Change-Id: Id1d338a01f4fc72b2adf2f43b57aeddfb06cfec1
There are number of important changes in this GWT release: 1. HtmlUnit, Jetty and their dependencies upgrade: [1],[2],[3] 2. Unbundled most dependencies from GWT Maven artifacts With 1. we can remove patched WebServer fork from GWT project, that was needed to adapt to Jetty 9 version. With 2. we don't need to strip Jetty classes from gwt-dev artifact any more to avoid classpath collisions (we wouldn't get classpath collisions to start with because of 1.). However, because of 2. we need to add quite some dependencies that we got for granted in gwt-dev in early GWT releases on our own: * Apache Ant, Apache 2.0 License * Apache Tapestry, Apache 2.0 License * CERN colt, CERN own or LGPL License * Google JS Interop annotations, Apache 2.0 License * W3C CSS sac library, License W3C IPR SOFTWARE NOTICE According to the release notes: [4]. Double/Boolean are not boxed anymore That leads to the NPE when such method: void showLineEndings(boolean s); is used with null value: p.showLineEndings(in.showLineEndings); where in.showLineEndings is null. Adapt the code to accept Boolean instead. gwtjsonrpc is updated to version 1.10 which is built for GWT 2.8.0-rc2. TEST PLAN: * Verified that daemon works * Verified that SDM works [1] gwtproject/gwt#8712 [2] https://sourceforge.net/p/htmlunit/bugs/1656/ [3] https://gwt-review.googlesource.com/7857 [4] http://www.gwtproject.org/release-notes.html#Release_Notes_2_8_0_RC1 Change-Id: I3f009f3ef0cbb8bafac236fb9a81c951697a5903
There are number of important changes in this GWT release: 1. HtmlUnit, Jetty and their dependencies upgrade: [1],[2],[3] 2. Unbundled most dependencies from GWT Maven artifacts With 1. we can remove patched WebServer fork from GWT project, that was needed to adapt to Jetty 9 version. With 2. we don't need to strip Jetty classes from gwt-dev artifact any more to avoid classpath collisions (we wouldn't get classpath collisions to start with because of 1.). However, because of 2. we need to add quite some dependencies that we got for granted in gwt-dev in early GWT releases on our own: * Apache Ant, Apache 2.0 License * Apache Tapestry, Apache 2.0 License * CERN colt, CERN own or LGPL License * Google JS Interop annotations, Apache 2.0 License * W3C CSS sac library, License W3C IPR SOFTWARE NOTICE According to the release notes: [4]. Double/Boolean are not boxed anymore That leads to the NPE when such method: void showLineEndings(boolean s); is used with null value: p.showLineEndings(in.showLineEndings); where in.showLineEndings is null. Adapt the code to accept Boolean instead. gwtjsonrpc is updated to version 1.10 which is built for GWT 2.8.0-rc2. TEST PLAN: * Verified that daemon works * Verified that SDM works [1] gwtproject/gwt#8712 [2] https://sourceforge.net/p/htmlunit/bugs/1656/ [3] https://gwt-review.googlesource.com/7857 [4] http://www.gwtproject.org/release-notes.html#Release_Notes_2_8_0_RC1 Change-Id: I3f009f3ef0cbb8bafac236fb9a81c951697a5903
Originally reported on Google Code with ID 8747
Reported by
David.Ostrovsky
on 2014-06-03 10:43:17The text was updated successfully, but these errors were encountered: