[services-geojson] NullPointerException in Feature.addXxxProperty() or getXxxProperty() methods
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 45/100
Línea de trabajo
Comienza en Feature.GsonTypeAdapter.read(), al que se llega a través de FeatureCollection.fromJson(), e inspecciona cómo un campo properties nulo llega a Feature.addStringProperty() y a los métodos add/get relacionados. Verifica que el ejemplo de JSON de FeatureCollection proporcionado ya no cause una NullPointerException cuando se añade una propiedad.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
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");
}
- Lenguaje dominante
- Java
- Estrellas
- 438
- Forks
- 117
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de mapbox/mapbox-java
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
mapbox/mapbox-java#1640 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 55/100
mapbox/mapbox-java#1635 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 15/100
mapbox/mapbox-java#1619 ·
-
Mapbox-java incompatible with gson 2.13.0 and up - call to internal GSON classes that were renamed Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 48/100
mapbox/mapbox-java#1614 · 2 comentarios · 1 reacción ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
mapbox/mapbox-java#1612 · 1 reacción ·
Todos los issues de mapbox/mapbox-java
Issues similares
-
awaiting triage bug Causes friction Hop Gui P1 P2 Transforms
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
apache/flink-agents#1152 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
jenkinsci/blueocean-plugin#5417 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
objectionary/eo-graphs#75 ·