Skip to content

Commit 6e86b5e

Browse files
committed
fix: model create EnumOptions valid
1 parent 57f9a50 commit 6e86b5e

File tree

1 file changed

+11
-3
lines changed

1 file changed

+11
-3
lines changed

base/src/main/java/com/tinyengine/it/dynamic/service/DynamicModelService.java

Lines changed: 11 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -462,9 +462,17 @@ private String generateColumnDefinition(ParametersDto field,String type) {
462462

463463
private String getEnumOptions(String optionStr) {
464464
List<String> options= new ArrayList<>();
465-
JSONArray jsonlist = JSON.parseArray(optionStr);
466-
for (int i = 0; i < jsonlist.size(); i++) {
467-
String value = jsonlist.getJSONObject(i).getString("value");
465+
if(optionStr == null || optionStr.trim().isEmpty()){
466+
throw new IllegalArgumentException("Enum options cannot be null or empty");
467+
}
468+
JSONArray jsonList;
469+
try {
470+
jsonList = JSON.parseArray(optionStr);
471+
} catch (Exception e) {
472+
throw new IllegalArgumentException("Invalid enum options format, expected JSON array string", e);
473+
}
474+
for (int i = 0; i < jsonList.size(); i++) {
475+
String value = jsonList.getJSONObject(i).getString("value");
468476
options.add(value);
469477
}
470478

0 commit comments

Comments
 (0)