Skip to content

Commit 0fe9692

Browse files
committed
解决校验参数拿不到 datasource, namespace, catalog 等全局关键词取值
1 parent ddf36b5 commit 0fe9692

2 files changed

Lines changed: 24 additions & 24 deletions

File tree

APIJSONORM/src/main/java/apijson/orm/AbstractObjectParser.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -720,7 +720,7 @@ public void onPUTArrayParse(@NotNull String key, @NotNull L array) throws Except
720720
if (apijson.JSON.isBoolOrNumOrStr(target)) {
721721
throw new NullPointerException("PUT " + path + ", " + realKey + " 类型为 " + target.getClass().getSimpleName() + ","
722722
+ "不支持 Boolean, String, Number 等类型字段使用 'key+': [] 或 'key-': [] !"
723-
+ "对应字段在数据库的值必须为 L, JSONRequest 中的一种!"
723+
+ "对应字段在数据库的值必须为 JSONArray, JSONObject 中的一种!"
724724
+ "值为 JSONRequest 类型时传参必须是 'key+': [{'key': value, 'key2': value2}] 或 'key-': ['key', 'key2'] !"
725725
);
726726
}
@@ -734,7 +734,7 @@ public void onPUTArrayParse(@NotNull String key, @NotNull L array) throws Except
734734
if (isAdd == false) {
735735
throw new NullPointerException("PUT " + path + ", " + realKey + (target == null ? " 值为 null,不支持移除!"
736736
: " 类型为 " + target.getClass().getSimpleName() + ",不支持这样移除!")
737-
+ "对应字段在数据库的值必须为 L, JSONRequest 中的一种,且 key- 移除时,本身的值不能为 null!"
737+
+ "对应字段在数据库的值必须为 JSONArray, JSONObject 中的一种,且 key- 移除时,本身的值不能为 null!"
738738
+ "值为 JSONRequest 类型时传参必须是 'key+': [{'key': value, 'key2': value2}] 或 'key-': ['key', 'key2'] !"
739739
);
740740
}

APIJSONORM/src/main/java/apijson/orm/AbstractParser.java

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -527,6 +527,28 @@ public M parseResponse(M request) {
527527
return extendErrorResult(requestObject, e, requestMethod, getRequestURL(), isRoot);
528528
}
529529

530+
try {
531+
setGlobalDatabase(getString(requestObject, KEY_DATABASE));
532+
setGlobalDatasource(getString(requestObject, KEY_DATASOURCE));
533+
setGlobalNamespace(getString(requestObject, KEY_NAMESPACE));
534+
setGlobalCatalog(getString(requestObject, KEY_CATALOG));
535+
setGlobalSchema(getString(requestObject, KEY_SCHEMA));
536+
537+
setGlobalExplain(getBoolean(requestObject, KEY_EXPLAIN));
538+
setGlobalCache(getString(requestObject, KEY_CACHE));
539+
540+
requestObject.remove(KEY_DATABASE);
541+
requestObject.remove(KEY_DATASOURCE);
542+
requestObject.remove(KEY_NAMESPACE);
543+
requestObject.remove(KEY_CATALOG);
544+
requestObject.remove(KEY_SCHEMA);
545+
546+
requestObject.remove(KEY_EXPLAIN);
547+
requestObject.remove(KEY_CACHE);
548+
} catch (Exception e) {
549+
return extendErrorResult(requestObject, e, requestMethod, getRequestURL(), isRoot);
550+
}
551+
530552
verifier = createVerifier().setVisitor(getVisitor());
531553

532554
if (RequestMethod.isPublicMethod(requestMethod) == false) {
@@ -552,28 +574,6 @@ public M parseResponse(M request) {
552574
}
553575
}
554576

555-
try {
556-
setGlobalDatabase(getString(requestObject, KEY_DATABASE));
557-
setGlobalDatasource(getString(requestObject, KEY_DATASOURCE));
558-
setGlobalNamespace(getString(requestObject, KEY_NAMESPACE));
559-
setGlobalCatalog(getString(requestObject, KEY_CATALOG));
560-
setGlobalSchema(getString(requestObject, KEY_SCHEMA));
561-
562-
setGlobalExplain(getBoolean(requestObject, KEY_EXPLAIN));
563-
setGlobalCache(getString(requestObject, KEY_CACHE));
564-
565-
requestObject.remove(KEY_DATABASE);
566-
requestObject.remove(KEY_DATASOURCE);
567-
requestObject.remove(KEY_NAMESPACE);
568-
requestObject.remove(KEY_CATALOG);
569-
requestObject.remove(KEY_SCHEMA);
570-
571-
requestObject.remove(KEY_EXPLAIN);
572-
requestObject.remove(KEY_CACHE);
573-
} catch (Exception e) {
574-
return extendErrorResult(requestObject, e, requestMethod, getRequestURL(), isRoot);
575-
}
576-
577577
final String requestString = JSON.toJSONString(request);//request传进去解析后已经变了
578578

579579
queryResultMap = new HashMap<String, Object>();

0 commit comments

Comments
 (0)