Commit Graph

840 Commits

Author SHA1 Message Date
gregw 7a7d69a69f Happy no year
Remove modification date from copyright notice and instead just have the
project inception year.

Signed-off-by: gregw <gregw@webtide.com>
2023-02-15 15:22:32 +11:00
Jan Bartel d9b6aa02f2
Issue #8712 Deprecate ELContextCleaner (#8713) 2022-10-17 11:02:16 +11:00
Joakim Erdfelt 6a7a749966
Issue #7833 - Chunked Transfer-Encoding and HEAD response test (#8219) (#8226)
* Issue #7833 - Chunked Transfer-Encoding and HEAD response test

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-06-30 06:48:51 -05:00
Jan Bartel 3d9f34696b
Issue #7613 Override Configurations.add(Configuration) (#7631)
Signed-off-by: Jan Bartel <janb@webtide.com>
2022-02-22 10:51:46 +01:00
Simone Bordet a1439fdf60
Fixes #7524 - Missing package in JmxConfiguration
Also protectAndExpose "org.eclipse.jetty.util.annotation" to make JMX annotations loaded by the server available to web applications.
This allows the server JMX mechanism (MBeanContainer) to work on web application classes too.

Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2022-02-02 18:04:57 +01:00
Joakim Erdfelt cb127793e5
Happy New Year 2022 (#7459)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2022-01-27 10:42:30 -06:00
Joakim Erdfelt 7321d54915
Close Resources opened from java.nio.file.Files API calls (#7048) (#7050)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-10-27 05:53:10 -05:00
Simone Bordet 0412bdc3d9 Fixes #6938 - module-info.java file do not use the canonical order for the elements
Changed order of entries in module-info.java to be canonical

(cherry picked from commit 02691171d5)
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
2021-10-01 09:25:55 +02:00
Greg Wilkins aa793eeafe
Jetty 10.0.x 6497 alias checkers alt (#6681)
* Issue #6497 - Replace the Alias checkers with new implementation.

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Signed-off-by: Greg Wilkins <gregw@webtide.com>
Co-authored-by: Lachlan Roberts <lachlan@webtide.com>
2021-09-21 18:35:51 +10:00
Greg Wilkins f398da7200
Fix #6868 Fix copy constructors (#6872)
* Fix #6868 Fix copy constructors

Fixed copy constructors found by static code analysis

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2021-09-20 15:14:42 +10:00
Lachlan f10ae7c955
Merge pull request #6649 from eclipse/jetty-10.0.x-jetty-jaspi
Issue #6406 - backport of jetty-jaspi changes to jetty-10 (#6412)
2021-08-27 13:20:51 +10:00
Lachlan Roberts 4d579d682c Issue #6406 - backport jetty-jaspi changes to 10.0.x
Co-authored-by: Frode Carlsen <frode.odde.carlsen@nav.no>
Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
2021-08-27 11:30:16 +10:00
Joakim Erdfelt c5a33e27d2
Issue #5684 - Windows test overhaul (#6581)
Issue #5684 - Window's test overhaul

+ Migrate from @DisabledOnOs(WINDOWS) to assumptions on capabilities instead.
+ Fix other outstanding windows testing issues.
+ Cleanup FileBufferedResponseHandlerTest expectations on Windows.
+ PathWatcher scan interval is variable on windows
+ If unable to start testcase based on assumption,
  the stop shouldn't fail testcase
+ Increase various wait timeouts
+ Make tests less strict due to system speed issues
+ Disable Sni tests due to TLS behaviors differences in Windows
  + Windows TLSv1.3 seems to introduce this difference
  + If we restrict to TLSv1.2 this passes.
  + On Linux TLSv.13 on client side will always return a
  + javax.net.ssl.SSLHandshakeException in those test cases that expect it.
  + However, on Windows, Only the TLSv1.2 implementation will return a javax.net.ssl.SSLHandshakeException,
  + All other TLS versions on Windows will result in a
  + javax.net.ssl.SSLException: Software caused connection abort: recv failed
+ Disable ConcurrentStreamCreationTest
  + Not possible to create all of these streams.
+ Fixing DeploymentTempDirTest
  + Using unique workdir per testcase.
  + Don't expect to delete files / directories between tests
    (not supported on windows due to file locking anyway)
 + Fixing line ending difference on windows
 + InvalidPathException is a 404 Not Found
 + Cannot reuse test directory between runs due to memory mapped files that are still in use from previous run.
 + java.nio.file.FileSystemException: C:\code\jetty.project\jetty-webapp\target\tests\welcome#\index.html: The requested operation cannot be performed on a file with a user-mapped section open.

	at java.base/sun.nio.fs.WindowsException.translateToIOException(WindowsException.java:92)
	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:103)
	at java.base/sun.nio.fs.WindowsException.rethrowAsIOException(WindowsException.java:108)
	at java.base/sun.nio.fs.WindowsFileSystemProvider.newByteChannel(WindowsFileSystemProvider.java:235)
	at java.base/java.nio.file.spi.FileSystemProvider.newOutputStream(FileSystemProvider.java:478)
	at java.base/java.nio.file.Files.newOutputStream(Files.java:220)
	at org.eclipse.jetty.webapp/org.eclipse.jetty.webapp.WebAppDefaultServletTest.prepareServer(WebAppDefaultServletTest.java:84)

 + As is typical on windows, we are often unable to delete a file due to file locking issues.
 + Use a unique resource base between tests.
   This is to avoid file locking behaviors that prevent the
   resource base from being reused too quickly on windows.
 + Prevent test run if symlinks not supported
 + Allowing for Windows slosh char as well in asserts
 + SelectorUtils is File.separator dependent
 + Regex is now FS.separator independent
 + Using SelectorUtils from plexus correctly for include/exclude
 + Turning off mapped files for testing reasons.
 + Fix and re-enable RFC2616NIOHttpsTest
 + Issue #6552 - Fix test failures due to slf4j dep
 + Issue #6552 - upgrade testcontainers
 + Issue #6552 - move to assumption based docker existence
 + Issue #6552 - Fix enforcer rule violation on jna.
  Addresses the following side effect of upgrading testcontainers.

[WARNING] Rule 3: org.apache.maven.plugins.enforcer.RequireUpperBoundDeps failed with message:
Failed while enforcing RequireUpperBoundDeps. The error(s) are [
Require upper bound dependencies error for net.java.dev.jna:jna:5.6.0 paths to dependency are:
+-org.eclipse.jetty:infinispan-remote-query:10.0.7-SNAPSHOT
  +-org.testcontainers:testcontainers:1.16.0
    +-com.github.docker-java:docker-java-transport-zerodep:3.2.11
      +-net.java.dev.jna:jna:5.6.0 (managed) <-- net.java.dev.jna:jna:5.8.0

 + use annotation to disable test when docker not available and needed
 + Disabling FileSessionDistributionTests.stopRestartWebappTestSessionContentSaved on Windows
 + Using TLS basic
 + Programmatic removal of memory mapped behavior during testing
 + Fixing slf4j warning

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
Co-authored-by: Olivier Lamy <oliver.lamy@gmail.com>
2021-08-26 11:26:46 -05:00
Jan Bartel b2c420a124
Issue #6327 Ensure TempDirTest runs in envs other than CI (#6638)
* Issue #6327 Ensure TempDirTest runs in envs other than CI

Signed-off-by: Jan Bartel <janb@webtide.com>

* pass sysproperty env=ci to surefire run

Signed-off-by: Olivier Lamy <oliver.lamy@gmail.com>

Co-authored-by: Olivier Lamy <oliver.lamy@gmail.com>
2021-08-20 11:40:18 +10:00
Jan Bartel a7a2ae6f84
Issue #6586 - remove unnecessary dependencies (#6599)
* Issue #6586 Remove unnecessary dependencies

Signed-off-by: Jan Bartel <janb@webtide.com>
2021-08-17 16:58:35 +10:00
Joakim Erdfelt fdc210f382
Remove unused imports
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-07-27 08:03:00 -05:00
Joakim Erdfelt 94d1a67329
Issue #6515 - Adding Test to ensure that ClasspathPattern doesn't need prepend anymore.
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-07-16 13:37:12 -05:00
Lachlan 3c32afa05c
Issue #6473 - canonicalPath refactor & fix alias check in PathResource (Jetty-10) (#6478)
Issue #6473 - canonicalPath refactor & fix alias check in PathResource

* Reverted %-escape handling for URI query parts.
* Performing canonicalization in ServletContext.getResource(),
  and improving alias checking in ContextHandler.getResource().
* Performing canonicalization checks in Resource.addPath() to avoid
  navigation above of the root.
* Test added and fixed.
* Various cleanups.
* Improved javadoc and comments
* Compliance mode HttpURI uses UriCompliance.Violation

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Greg Wilkins <gregw@webtide.com>
2021-06-29 15:42:39 +02:00
Lachlan d233f3be02
Issue #6447 - Deprecate support for UTF16 encoding in URIs (#6457)
Deprecate support for UTF16 encoding in URIs.
Add compliance mode to allow UTF16 encodings.
Improve testing.
2021-06-23 22:58:49 +10:00
Jan Bartel 900c71902c
Issue #6327 Remove DisabledOnJre or test where appropriate (#6386)
Signed-off-by: Jan Bartel <janb@webtide.com>
2021-06-10 21:26:16 +10:00
Greg Wilkins 804630d41e
Jetty 10.0.x servletholder copy #6280 (#6281)
Copy ServletHolder class/instance properly during startWebapp (#6214)
ServletHolder.copyClassServlet() method added to correctly copy held class.
Cherry picked from 9.4

Signed-off-by: Greg Wilkins <gregw@webtide.com>
Co-authored-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-05-16 20:01:03 +10:00
Lachlan f58dbedcd0
Fixes #6263 - Review URI encoding in ConcatServlet & WelcomeFilter.
Review URI encoding in ConcatServlet & WelcomeFilter and improve testing.

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Signed-off-by: Simone Bordet <simone.bordet@gmail.com>
Co-authored-by: Simone Bordet <simone.bordet@gmail.com>
2021-05-12 17:14:43 +02:00
Lachlan 7555d0375a
Improve testing for temp directories (#6139)
* Improve testing for temp directories (#5483)

Improve testing around WebAppContext temporary directories.

Signed-off-by: Lachlan Roberts <lachlan@webtide.com>
Co-authored-by: olivier lamy <oliver.lamy@gmail.com>
2021-04-30 16:05:49 +10:00
Greg Wilkins d80c622b00
Merge pull request from GHSA-v7ff-8wcx-gmc5 (#6089)
Always normalize ambiguous URIs

Signed-off-by: Greg Wilkins <gregw@webtide.com>
2021-03-24 05:54:06 +01:00
Joakim Erdfelt e3760b8126
Fixing accidentally doubled line in license header
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-02-15 14:27:02 -06:00
Joakim Erdfelt d6ec96fe1b
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2021-02-15 14:18:08 -06:00
Joakim Erdfelt 5dd987779c
Adding `WhitespaceAfter` checkstyle rule.
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-02-15 12:48:24 -06:00
Joakim Erdfelt a8597e07fe
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2021-02-15 12:25:15 -06:00
Joakim Erdfelt 165aa1a60a
Issue #5950 - remove WebAppClassLoader logging during loadClass
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-02-08 13:02:48 -06:00
Joakim Erdfelt e81c847998
Happy New Year 2021 (Jetty 10 edition)
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-01-21 15:05:57 -06:00
Joakim Erdfelt 176e29e408
Happy New Year 2021
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2021-01-21 12:31:00 -06:00
olivier lamy 0c1f9636b3 Merge branch 'jetty-9.4.x' into jetty-10.0.x 2020-12-14 09:24:17 +10:00
Olivier Lamy 9343844f15
Jetty 9.4.x spotbug issue map iteration using entrySet(), diamond list creation (#5804)
* fix some spotbug performance map iterations

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>

* cannot use computeIfAbsent because it is a PathMap

Signed-off-by: olivier lamy <oliver.lamy@gmail.com>
2020-12-14 08:46:35 +10:00
Joakim Erdfelt f0badc5c5e
Issue #5784 - Fixing source header text: EPL-2.0 OR Apache-2.0
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-12-10 16:04:50 -06:00
Ludovic Orban aa8bd5d820 replace Trie interface and impls usage with new *Index interfaces and Builders
Signed-off-by: Ludovic Orban <lorban@bitronix.be>
2020-11-26 14:14:16 +01:00
Joakim Erdfelt 3f5fe03a32
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-11-24 13:30:03 -06:00
Joakim Erdfelt 1c7c924228
Merge branch 'jetty-9.4.x' of github.com:eclipse/jetty.project into jetty-9.4.x 2020-11-24 13:29:46 -06:00
Joakim Erdfelt 4582088d89
Reducing test disk space usage on CI
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-11-24 13:29:34 -06:00
gregw 0a70cba8ae Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x
Signed-off-by: gregw <gregw@webtide.com>
2020-11-24 18:36:24 +01:00
Greg Wilkins 9f82ca0a80
Use File.list and File.walk within a try with resource (#5718)
* Use File.list and File.walk within a try with resource

The API contract of File.list and File.walk requires them to be closed after use.

* Fix from review

Left out filter

* Fix from review

Factored out deleteFile with better debug

* Fix from review

Can delete files whilst walking

* Fix from review

Restored sweepFile
fixed minor code suggestions
2020-11-24 18:12:42 +01:00
Joakim Erdfelt fd974c474c
Fixing bad Container Include Jar pattern.
+ It was matching on jetty-util-ajax-#.jar as well.

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-11-16 09:10:23 -06:00
Joakim Erdfelt c511275580
Provide more detail in test failure on CI
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-11-16 09:10:22 -06:00
Joakim Erdfelt 9e22260377
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-11-10 12:12:39 -06:00
Greg Wilkins 1904d326fc
Fixes #5521 ResourceCollection NPE (#5527)
* Fixes #5521 ResourceCollection NPE

Fix constructor and addPath so that all resources in a RC must exist when created.

* Fixes #5521 ResourceCollection NPE

Cleanup the vestiges of non existent directories detected by resource ending in /

* Fixes #5521 ResourceCollection NPE

Revert adding paths ending in / as jar:file resource needs them

* feedback from review

improved javadoc.
2020-11-04 08:56:17 +01:00
Joakim Erdfelt 0bb5e8c4b1
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-11-03 13:51:03 -06:00
Greg Wilkins f88f09a148
SessionCookieConfig name may be null (#5557)
* SessionCookieConfig name may be null

Protect against NPE by make a null name in SessionCookieConfig deactive session cookies.

* SessionCookieConfig name may be null

Protect against NPE by make a null name in SessionCookieConfig deactive session cookies.

* SessionCookieConfig name may be null

Protect against NPE by make a null name in SessionCookieConfig deactive session cookies.

* feedback from review

added static method to convert null name to default.
2020-11-03 16:22:26 +01:00
Joakim Erdfelt 05f08fec4c
Merge remote-tracking branch 'origin/jetty-9.4.x' into jetty-10.0.x 2020-10-20 17:35:56 -05:00
Joakim Erdfelt fa6c8f7dec
Issue #5480 - Only delete non-persist temp dir if not-empty
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-20 17:19:54 -05:00
Joakim Erdfelt c7ae5b50ab
Issue #5480 - Safer temp directory management
Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-20 16:53:09 -05:00
Joakim Erdfelt 6be6fae291
Issue #5480 - NPE Check in WebInfConfiguration.deconfigure()
+ Removing Temp dir deletion in configureTempDirectory()

Signed-off-by: Joakim Erdfelt <joakim.erdfelt@gmail.com>
2020-10-20 16:30:39 -05:00