Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

[services-geojson] NullPointerException in Feature.addXxxProperty() or getXxxProperty() methods

Aperta
#1,527 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
45/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
java
Ambito
backend

Direzione di ricerca

Inizia da Feature.GsonTypeAdapter.read(), che viene raggiunto tramite FeatureCollection.fromJson(), e analizza come un campo properties nullo raggiunge Feature.addStringProperty() e i relativi metodi add/get. Verifica che l’esempio JSON di FeatureCollection fornito non causi più una NullPointerException quando viene aggiunta una proprietà.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

All methods like addStringProperty(), addNumberProperty(), getStringProperty()… don’t guard against a null properties field.

The “guard” is at a higher level, as using Feature static factory methods ensure that the properties field is never null.
However Feature.GsonTypeAdapter.read() directly calls the Feature constructor which doesn’t prevent a null properties field. So for example, if someone calls FeatureCollection.fromJson() which contains a feature that has a null properties field, it will be decoded by the GsonAdapter and then calling addStringProperty() on this feature will crash.

Small code sample to demonstrate that

public void addPropertyCrash() {
    final String json = "{" +
            "\"type\": \"FeatureCollection\"," +
            "\"features\": [" +
                "{" +
                    "\"type\": \"Feature\"," +
                    "\"properties\": null," +
                    "\"geometry\": null" +
                "}" +
            "]" +
            "}";

    FeatureCollection actual = FeatureCollection.fromJson(json);
    actual.features().get(0).addStringProperty("key", "value");
}
Lingua principale
Java
Stelle
438
Fork
117
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di mapbox/mapbox-java

Tutte le issue di mapbox/mapbox-java

Issue simili

Altre issue su Java

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.