6.5. 스키마 정의
OpenShift Serverless Logic은 입력 스키마 정의 및 출력 스키마 정의의 두 가지 유형의 스키마 정의를 지원합니다.
6.5.1. 입력 스키마 정의 링크 복사링크가 클립보드에 복사되었습니다!
dataInputSchema
매개변수는 정의된 JSON
스키마에 대해 워크플로 데이터 입력을 검증합니다. 워크플로우 상태가 실행되기 전에 제공된 워크플로우 데이터 입력이 올바른지 확인하는 데 사용되므로 dataInputSchema
를 제공하는 것이 중요합니다.
다음과 같이 dataInputSchema
를 정의할 수 있습니다.
dataInputSchema
정의의 예
"dataInputSchema": { "schema": "URL_to_json_schema", "failOnValidationErrors": false }
"dataInputSchema": {
"schema": "URL_to_json_schema",
"failOnValidationErrors": false
}
스키마 속성은 URI로, 워크플로우 데이터 입력의 유효성을 검사하는 데 사용되는 JSON 스키마의 경로를 보유합니다. URI는 classpath URI, 파일 또는 HTTP URL일 수 있습니다. 클래스 경로 URI를 지정하는 경우 JSON 스키마 파일을 프로젝트의 resources 섹션 또는 classpath에 포함된 다른 디렉터리에 배치해야 합니다.
failOnValidationErrors
는 입력 데이터가 지정된 JSON 스키마와 일치하지 않을 때 채택된 동작을 나타내는 선택적 플래그입니다. 지정하지 않거나 true
로 설정하면 예외가 throw되고 흐름 실행이 실패합니다. false
로 설정하면 흐름이 실행되고 검증 오류가 있는 수준 WARN 로그가 출력됩니다.
6.5.2. 출력 스키마 정의 링크 복사링크가 클립보드에 복사되었습니다!
출력 스키마 정의는 워크플로우 실행 후 적용하여 출력 모델의 예상 형식이 있는지 확인합니다. Swagger 생성에도 유용합니다.
입력 스키마 정의와 유사하게 outputSchema
를 사용하여 JSON 스키마의 URL을 지정해야 합니다.
outputSchema
정의의 예
dataInputSchema
에 대해 설명된 동일한 규칙은 스키마
및 failOnValidationErrors
에 적용할 수 있습니다. 유일한 차이점은 워크플로우 실행 후 후자의 플래그가 적용된다는 것입니다.