8000 UriComponentsBuilder.cloneBuilder() cause sharing query parameters between builders · Issue #25423 · spring-projects/spring-framework · GitHub
[go: up one dir, main page]

Skip to content
UriComponentsBuilder.cloneBuilder() cause sharing query parameters between builders #25423
Closed
@Potat0x

Description

@Potat0x

Affects: 5.2.7.RELEASE

public static void main(String[] args) {
    UriComponentsBuilder b1 = UriComponentsBuilder.fromUriString("example.com");
    b1.queryParam("param", "x");
    UriComponentsBuilder b2 = b1.cloneBuilder();

    System.out.println("b1: " + b1.build().toUriString());
    System.out.println("b2: " + b2.build().toUriString());
    b1.queryParam("param", "y");
    System.out.println("b1: " + b1.build().toUriString());
    System.out.println("b2: " + b2.build().toUriString());
}

actual output:

b1: example.com?param=x
b2: example.com?param=x
b1: example.com?param=x&param=y
b2: example.com?param=x&param=y

expected output:

b1: example.com?param=x
b2: example.com?param=x
b1: example.com?param=x&param=y
b2: example.com?param=x

queryparams_bug

Metadata

Metadata

Assignees

Labels

in: webIssues in web modules (web, webmvc, webflux, websocket)status: backportedAn issue that has been backported to maintenance branchestype: bugA general bug

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    0