12.3.2. 구성 사용
12.3.2.1. 네임스페이스
HTTP 공급자 끝점을 구성하는 데 사용되는 요소는 네임스페이스 http://cxf.apache.org/transports/http/configuration 에 정의되어 있습니다. 일반적으로 접두사 http-conf
를 사용합니다. HTTP 구성 요소를 사용하려면 예 12.9. “HTTP 공급자 구성 네임스페이스” 에 표시된 줄을 끝점 구성 파일의 빈 요소에 추가해야 합니다. 또한 구성 요소의 네임스페이스를
xsi:schemaLocation
속성에 추가해야 합니다.
예 12.9. HTTP 공급자 구성 네임스페이스
<beans ... xmlns:http-conf="http://cxf.apache.org/transports/http/configuration" ... xsi:schemaLocation="... http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd ...">
12.3.2.2. Undertow 런타임 또는 Netty 런타임
http-conf
네임스페이스의 요소를 사용하여 Undertow 런타임 또는 Netty 런타임을 구성할 수 있습니다.
12.3.2.3. 대상 요소
http-conf:destination
요소와 해당 하위 항목을 사용하여 HTTP 서비스 공급자 끝점을 구성합니다. http-conf:destination
요소는 엔드포인트에 해당하는 WSDL 포트
요소를 지정하는 단일 속성인 name
을 사용합니다. name
속성의 값은 portQName'.http-destination' 형식을 사용합니다. 예 12.10. “HTTP-conf:destination
Element” 는 끝점의 대상 네임스페이스가 http://widgets.widgetvendor.net인 경우 WSDL 조각 < port binding="widgetSOAPBinding" name="widgetSOAPPort
>에 의해 지정된 엔드포인트에 대한 구성을 추가하는 데 사용되는 http-conf:destination
요소를 표시합니다.
예 12.10. HTTP-conf:destination
Element
... <http-conf:destination name="{http://widgets/widgetvendor.net}widgetSOAPPort.http-destination"> ... </http-conf:destination> ...
http-conf:destination
요소에는 구성 정보를 지정하는 여러 하위 요소가 있습니다. 자세한 내용은 표 12.4. “HTTP 서비스 공급자 끝점을 구성하는 데 사용되는 요소” 에 설명되어 있습니다.
요소 | 설명 |
---|---|
HTTP 연결 속성을 지정합니다. “서버 요소” 을 참조하십시오. | |
HTTP 요청을 처리하기 위한 컨텍스트 일치 전략을 구성하는 매개변수를 지정합니다. | |
이 대상에서 처리하는 HTTP 요청의 매개변수 순서가 고정되는지 여부를 지정합니다. |
12.3.2.4. 서버 요소
http-conf:server
요소는 서비스 공급자 끝점의 HTTP 연결 속성을 구성하는 데 사용됩니다. 표 12.5. “HTTP 서비스 공급자 구성 속성” 에 설명된 해당 속성은 연결의 속성을 지정합니다.
속성 | 설명 |
---|---|
연결 시간이 초과되기 전에 서비스 공급자가 요청을 수신하려고 하는 시간(밀리초)을 설정합니다. 기본값은
| |
요청 수신 시 오류가 발생할 때 예외가 throw되는지 여부를 지정합니다.Specifies whether exceptions are to be thrown when an error is encountered on receiving a request. 기본값은 | |
소비자에게 응답을 보내는 데 오류가 발생할 때 예외가 throw되는지 여부를 지정합니다.Specifies whether exceptions are to be thrown when an error is encountered on sending a response to a consumer. 기본값은 | |
응답이 전송된 후에도 서비스 공급자가 연결 요청을 열린 상태로 유지할지 여부를 지정합니다. 기본값은 | |
클라이언트 요청에 지정된 URL이 요청된 리소스에 더 이상 적합하지 않은 경우 클라이언트 요청을 리디렉션해야 하는 URL을 지정합니다. 이 경우 서버 응답의 첫 번째 줄에 상태 코드가 자동으로 설정되지 않으면 상태 코드가 302로 설정되고 상태 설명이 Object Moved로 설정됩니다. 값은 HTTP RedirectURL 속성 값으로 사용됩니다. | |
서비스 공급자의 응답을 소비자로 구성된 체인과 관련된 캐시에 의해 준수해야 하는 동작에 대한 지시문을 지정합니다. 12.3.4절. “서비스 공급자 캐시 제어 지침” 을 참조하십시오. | |
응답에 전송되는 리소스가 있는 URL을 설정합니다. | |
응답으로 전송되는 정보의 미디어 유형을 지정합니다. 미디어 유형은 다목적 인터넷 메일 확장 (MIME) 유형을 사용하여 지정됩니다. 값은 HTTP ContentType 위치 값으로 사용됩니다. | |
서비스 공급자가 전송하는 정보에 적용된 추가 콘텐츠 인코딩을 지정합니다. 콘텐츠 인코딩 레이블은 IANA(Internet Assigned Numbers Authority)에 의해 규제됩니다. 가능한 콘텐츠 인코딩 값에는 zip, gzip, compress, deflate, identity가 포함됩니다. 이 값은 HTTP ContentEncoding 속성 값으로 사용됩니다. 콘텐츠 인코딩의 주된 사용은 zip 또는 gzip과 같은 일부 인코딩 메커니즘을 사용하여 문서를 압축하도록 허용하는 것입니다. Apache CXF는 콘텐츠 코딩에 대한 유효성 검사를 수행하지 않습니다. 지정된 콘텐츠 코딩이 애플리케이션 수준에서 지원되도록 해야 합니다. | |
응답을 보내는 서버의 유형을 지정합니다. 값은 |
12.3.2.5. 예제
예 12.11. “HTTP 서비스 공급자 끝점 구성” keep-alive 요청을 준수하고 모든 통신 오류를 방지하는 HTTP 서비스 공급자 끝점의 구성을 보여줍니다.
예 12.11. HTTP 서비스 공급자 끝점 구성
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:http-conf="http://cxf.apache.org/transports/http/configuration" xsi:schemaLocation="http://cxf.apache.org/transports/http/configuration http://cxf.apache.org/schemas/configuration/http-conf.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <http-conf:destination name="{http://apache.org/hello_world_soap_http}SoapPort.http-destination"> <http-conf:server SuppressClientSendErrors="true" SuppressClientReceiveErrors="true" HonorKeepAlive="true" /> </http-conf:destination> </beans>