Skip to content

Commit 9658a7e

Browse files
committed
Fixed a bug with JsonArray serialization with solr
1 parent cb6ba33 commit 9658a7e

File tree

2 files changed

+8
-6
lines changed

2 files changed

+8
-6
lines changed

src/main/java/org/computate/frFR/java/EcrireApiClasse.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2873,7 +2873,7 @@ else if(StringUtils.containsAny(classeApiMethode, i18nGlobale.getString(I18n.var
28732873
tl(11, "JsonArray bodyVals = (JsonArray)bodyVal;");
28742874
tl(11, "Object valsObj = o.", i18nGlobale.getString(I18n.var_obtenir), i18nGlobale.getString(I18n.var_PourClasse), "(f);");
28752875
tl(11, "Collection<?> vals = valsObj instanceof JsonArray ? ((JsonArray)valsObj).getList() : (Collection<?>)valsObj;");
2876-
tl(11, "if(bodyVals.size() == vals.size()) {");
2876+
tl(11, "if(vals != null && bodyVals.size() == vals.size()) {");
28772877
tl(12, "Boolean match = true;");
28782878
tl(12, "for(Object val : vals) {");
28792879
tl(13, "if(val != null) {");
@@ -2889,7 +2889,8 @@ else if(StringUtils.containsAny(classeApiMethode, i18nGlobale.getString(I18n.var
28892889
tl(12, "vals.clear();");
28902890
tl(12, "body2.put(\"set\" + StringUtils.capitalize(f), bodyVal);");
28912891
tl(11, "} else {");
2892-
tl(12, "vals.clear();");
2892+
tl(12, "if(vals != null)");
2893+
tl(13, "vals.clear();");
28932894
tl(12, "body2.put(\"set\" + StringUtils.capitalize(f), bodyVal);");
28942895
tl(11, "}");
28952896
tl(10, "} else {");
@@ -2967,7 +2968,7 @@ else if(StringUtils.containsAny(classeApiMethode, i18nGlobale.getString(I18n.var
29672968
tl(9, "JsonArray bodyVals = (JsonArray)bodyVal;");
29682969
tl(9, "Object valsObj = o.", i18nGlobale.getString(I18n.var_obtenir), i18nGlobale.getString(I18n.var_PourClasse), "(f);");
29692970
tl(9, "Collection<?> vals = valsObj instanceof JsonArray ? ((JsonArray)valsObj).getList() : (Collection<?>)valsObj;");
2970-
tl(9, "if(bodyVals.size() == vals.size()) {");
2971+
tl(9, "if(vals != null && bodyVals.size() == vals.size()) {");
29712972
tl(10, "Boolean match = true;");
29722973
tl(10, "for(Object val : vals) {");
29732974
tl(11, "if(val != null) {");
@@ -2985,7 +2986,8 @@ else if(StringUtils.containsAny(classeApiMethode, i18nGlobale.getString(I18n.var
29852986
tl(10, "body2.put(\"set\" + StringUtils.capitalize(f), bodyVal);");
29862987
// tl(10, "}");
29872988
tl(9, "} else {");
2988-
tl(10, "vals.clear();");
2989+
tl(10, "if(vals != null)");
2990+
tl(11, "vals.clear();");
29892991
tl(10, "body2.put(\"set\" + StringUtils.capitalize(f), bodyVal);");
29902992
tl(9, "}");
29912993
tl(8, "} else {");

src/main/java/org/computate/frFR/java/EcrireGenClasse.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5119,10 +5119,10 @@ else if(entiteNomSimple.toString().equals("Polygon")) {
51195119
tl(3, "doc.put(\"", entiteVar, (entiteDocValues ? "_docvalues" : (entiteStocke ? "_indexedstored" : "_indexed")), entiteSuffixeType, "\", new JsonObject().put(\"type\", \"LineString\").put(\"coordinates\", pointsArray).toString());");
51205120
}
51215121
else if(entiteNomSimple.toString().equals("JsonObject")) {
5122-
tl(3, "doc.put(\"", entiteVar, (entiteDocValues ? "_docvalues" : (entiteStocke ? "_indexedstored" : "_indexed")), entiteSuffixeType, "\", ", entiteVar, ".toString());");
5122+
tl(3, "doc.put(\"", entiteVar, (entiteDocValues ? "_docvalues" : (entiteStocke ? "_indexedstored" : "_indexed")), entiteSuffixeType, "\", ", entiteVar, ".encode());");
51235123
}
51245124
else if(entiteNomSimple.toString().equals("JsonArray")) {
5125-
tl(3, "doc.put(\"", entiteVar, (entiteDocValues ? "_docvalues" : (entiteStocke ? "_indexedstored" : "_indexed")), entiteSuffixeType, "\", ", entiteVar, ".toString());");
5125+
tl(3, "doc.put(\"", entiteVar, (entiteDocValues ? "_docvalues" : (entiteStocke ? "_indexedstored" : "_indexed")), entiteSuffixeType, "\", ", entiteVar, ".encode());");
51265126
}
51275127
else if(entiteNomSimple.toString().equals("BigDecimal")) {
51285128
tl(3, "doc.put(\"", entiteVar, (entiteDocValues ? "_docvalues" : (entiteStocke ? "_indexedstored" : "_indexed")), entiteSuffixeType, "\", ", entiteVar, ".doubleValue());");

0 commit comments

Comments
 (0)