Skip to content

Commit 3ccb046

Browse files
committed
fix(appsec/jetty): disable multipart test on Jetty 9.0.x and bump test version to 10.0.10
- jetty-server-9.0 and jetty-server-9.0.4: set testBodyMultipart() = false. jetty-appsec-8.1.3 covers [8.1.3, 9.2.0.RC0) which includes Jetty 9.0.x; its extractContentParameters() calls ParameterCollector.put(String, String) which does not exist in Jetty 9.0.x, causing HTTP 500 on multipart requests. - jetty-server-10.0: bump test dependency from 10.0.0 to 10.0.10. jetty-appsec-9.4 requires _multiParts: Lorg/eclipse/jetty/server/MultiParts; but that type was only introduced in 10.0.10 (previously MultiPartFormInputStream), so the muzzle check fails for Jetty 10.0.0-10.0.9, leaving tests uninstrumented. - Revert accidental modification of agent-jmxfetch/integrations-core submodule back to its master pointer.
1 parent f8163c2 commit 3ccb046

4 files changed

Lines changed: 14 additions & 6 deletions

File tree

Submodule integrations-core updated 7572 files

dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-10.0/build.gradle

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,9 +48,11 @@ dependencies {
4848
}
4949
testImplementation project(':dd-java-agent:instrumentation:jetty:jetty-util-9.4.31')
5050

51-
testImplementation group: 'org.eclipse.jetty', name: 'jetty-server', version: '10.0.0'
52-
testImplementation group: 'org.eclipse.jetty', name: 'jetty-servlet', version: '10.0.0'
53-
testImplementation group: 'org.eclipse.jetty.websocket', name: 'websocket-javax-server', version: '10.0.0'
51+
// Use 10.0.10+ so jetty-appsec-9.4 applies: _multiParts changed from MultiPartFormInputStream
52+
// to MultiParts in 10.0.10 (jetty-appsec-9.4's muzzle requires the MultiParts type).
53+
testImplementation group: 'org.eclipse.jetty', name: 'jetty-server', version: '10.0.10'
54+
testImplementation group: 'org.eclipse.jetty', name: 'jetty-servlet', version: '10.0.10'
55+
testImplementation group: 'org.eclipse.jetty.websocket', name: 'websocket-javax-server', version: '10.0.10'
5456
testImplementation project(':dd-java-agent:appsec:appsec-test-fixtures')
5557
testImplementation testFixtures(project(":dd-java-agent:instrumentation:jetty:jetty-server:jetty-server-9.0"))
5658
testImplementation testFixtures(project(':dd-java-agent:instrumentation:servlet:javax-servlet:javax-servlet-3.0'))

dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0.4/src/test/groovy/datadog/trace/instrumentation/jetty9/Jetty9Test.groovy

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,10 @@ abstract class Jetty9Test extends HttpServerTest<Server> {
8282

8383
@Override
8484
boolean testBodyMultipart() {
85-
true
85+
// jetty-appsec-8.1.3 covers [8.1.3, 9.2.0.RC0) which includes Jetty 9.0.x.
86+
// Its extractContentParameters() advice calls ParameterCollector.put(String, String)
87+
// which does not exist in Jetty 9.0.x → HTTP 500 on multipart requests.
88+
false
8689
}
8790

8891
@Override

dd-java-agent/instrumentation/jetty/jetty-server/jetty-server-9.0/src/test/groovy/datadog/trace/instrumentation/jetty9/Jetty9Test.groovy

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -81,7 +81,10 @@ abstract class Jetty9Test extends HttpServerTest<Server> {
8181

8282
@Override
8383
boolean testBodyMultipart() {
84-
true
84+
// jetty-appsec-8.1.3 covers [8.1.3, 9.2.0.RC0) which includes Jetty 9.0.x.
85+
// Its extractContentParameters() advice calls ParameterCollector.put(String, String)
86+
// which does not exist in Jetty 9.0.x → HTTP 500 on multipart requests.
87+
false
8588
}
8689

8790
@Override

0 commit comments

Comments
 (0)