48.2. 일반 Java 구문 반환
48.2.1. 개요
대부분의 경우 리소스 클래스는 표준 Java 유형, CryostatB 오브젝트 또는 애플리케이션에 엔터티 공급자가 있는 모든 오브젝트를 반환할 수 있습니다. 이러한 경우 런타임은 반환되는 개체의 Java 클래스를 사용하여 MIME 유형 정보를 결정합니다. 또한 런타임은 소비자에게 보낼 적절한 HTTP 반환 코드를 결정합니다.
48.2.2. 반환 가능한 유형
리소스 메서드는 void
또는 엔터티 작성자가 제공되는 Java 유형을 반환할 수 있습니다. 기본적으로 런타임에는 다음에 대한 공급자가 있습니다.
- Java primitives
-
Java 프리미티브의
숫자
표현 - CryostatB 오브젝트
“기본적으로 지원되는 유형” 기본적으로 지원되는 모든 반환 유형을 나열합니다. “사용자 정의 작성자” 사용자 지정 엔터티 작성기를 구현하는 방법을 설명합니다.Describes how to implement a custom entity writer.
48.2.3. MIME 유형
런타임은 먼저 리소스 메서드 및 리소스 클래스의 @Produces
주석을 확인하여 반환된 엔터티의 MIME 유형을 결정합니다. 하나를 찾으면 주석에 지정된 MIME 유형을 사용합니다. 리소스 구현에 의해 지정된 항목을 찾지 못하면 엔터티 공급자를 사용하여 적절한 MIME 유형을 결정합니다.
기본적으로 런타임은 다음과 같이 MIME 유형을 할당합니다.
-
Java 프리미티브와 해당
숫자
표현에는 MIME 유형의application/octet-stream
이 할당됩니다. -
CryostatB 오브젝트에는 MIME 유형의
application/xml
이 할당됩니다.
애플리케이션은 “사용자 정의 작성자” 에 설명된 대로 사용자 정의 엔티티 공급자를 구현하여 다른 매핑을 사용할 수 있습니다.
48.2.4. 응답 코드
리소스 메서드가 일반 Java 구성을 반환하면 리소스 메서드가 예외를 발생하지 않고 완료하면 런타임에서 응답의 상태 코드를 자동으로 설정합니다. 상태 코드는 다음과 같이 설정됩니다.
-
204
(Content 없음)-리소스 메서드의 반환 유형이무효화
됨 -
204
(No Content) - 반환된 엔티티의 값은null
입니다. -
200
(OK)- 반환 된 엔티티의 값은null
이 아닙니다
리소스 메서드 완료 전에 예외가 발생하는 경우 50장. 예외 처리 에 설명된 대로 반환 상태 코드가 설정됩니다.