스키마 수정
schema.json 을 수정한 후 필요한 작업
schema.json 를 수정하는 것은 java 클래스에 포함되는 영역이 아니므로 서비스를 재시작 할 필요가 없다. 반대로 재시작을 해도 적용이 되지 않을 수 있다(설정에 따라 재시작시 전체 리로드를 할 수 있기도 하다).
따라서 서비스 무중단으로 필요한 스키마를 변경하고, 변경된 영역만 해당
LoadSchema
initdata 를 수동으로 불러올 때
POST {{protocol}}://{{hostname}}:{{port}}/helper/loadSchema?filePath=/{rootPath}
ReloadSchema
schema 파일 생성/수정 후 다시 불러올 때
POST {{protocol}}://{{hostname}}:{{port}}/helper/reloadSchema?filePath=/Users/I-ON/git/oct-api/src/main/resources/schema/zinoct/brandShop/brandMngSchema.json
ReloadSchema 를 해도 삭제한 노드/요소/api 가 계속 존재하는 경우
ReloadSchema 는 json에 작성된 내용을 읽어 생성 및 기존 정보 수정 역할을 한다. 따라서 스키마의 요소를 그냥 제거해서 없애거나 해도 cache에는 그대로 남아있기 때문에 기존 내용과 충돌이 발생할 수 있다. 이 경우엔 아래 두 방법 중 하나를 시도한다.
앞에 "_event": "delete", 를 붙인 후 ReloadSchema 를 실행 - node, propertyTypes, event
{ "_event": "delete", "typeId": "foComponent", "componentId": "board",
POST {{protocol}}://{{hostname}}:{{port}}/node/{typeId}/delete.json - node