jenkinsci / jenkinsci/java-client-api
Bug: build.details() throws MismatchedInputException: Cannot deserialize instance of `com.offbytwo.jenkins.model.BuildChangeSet` out of START_ARRAY token
- Vorherrschende Sprache
- Java
- Sterne
- 913
- Forks
- 466
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
I'm using jenkins-client 0.3.8 and build.details() fails for the Jenkins server v1.652. The reason is: the JSON that is returned contains:
`"changeSet": []`
but the BuildWithDetails class expects not an array/list but an object:
`private BuildChangeSet changeSet;`
I tested build.details() successfully with Jenkins server 2.127 & 2.121.2. The reason is that the JSON looks different (i.e. it contains an object as expected in BuildWithDetails class):
```
"changeSet": {
"_class": "hudson.scm.EmptyChangeLogSet",
"items": [],
"kind": null
}
```
I know there are similar issues (#177, #143, #141, #138) but they are all closed although the problem seems to be still around ... IMHO there needs to be a different handling of the serialization depending on the server version.
Beitragsleitfaden
Rechercherichtung
Inspect BuildWithDetails and its changeSet field, along with BuildChangeSet, then reproduce build.details() against Jenkins 1.652 and compare the returned JSON with the object form from Jenkins 2.127 or 2.121.2. Done means the client handles both the empty-array and object representations without throwing MismatchedInputException.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- api
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100