12.2.2. 구성 사용
12.2.2.1. 네임스페이스
HTTP 소비자 끝점을 구성하는 데 사용되는 요소는 네임스페이스 http://cxf.apache.org/transports/http/configuration 에 정의되어 있습니다. 일반적으로 접두사 http-conf
를 사용합니다. HTTP 구성 요소를 사용하려면 예 12.4. “HTTP Consumer 구성 네임스페이스” 에 표시된 줄을 끝점 구성 파일의 빈 요소에 추가해야 합니다. 또한 구성 요소의 네임스페이스를
xsi:schemaLocation
속성에 추가해야 합니다.
예 12.4. HTTP Consumer 구성 네임스페이스
<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.2.2.2. Undertow 런타임 또는 Netty 런타임
http-conf
네임스페이스의 요소를 사용하여 Undertow 런타임 또는 Netty 런타임을 구성할 수 있습니다.
12.2.2.3. 구성 요소
http-conf:conduit
요소와 해당 하위 항목을 사용하여 HTTP 소비자 끝점을 구성합니다. http-conf:conduit
요소는 엔드포인트에 해당하는 WSDL 포트
요소를 지정하는 단일 속성인 name
을 사용합니다. name
속성의 값은 portQName'.http-conduit' 형식을 사용합니다. 예 12.5. “HTTP-conf:conduit
Element” 는 끝점의 대상 네임스페이스가 http://widgets.widgetvendor.net인 경우의 WSDL 조각 < port binding="widgetSOAPBinding" name="widgetSOAPPort
>에 의해 지정된 엔드포인트에 대한 구성을 추가하는 데 사용되는 http-conf:conduit
요소를 표시합니다.
예 12.5. HTTP-conf:conduit
Element
... <http-conf:conduit name="{http://widgets/widgetvendor.net}widgetSOAPPort.http-conduit"> ... </http-conf:conduit> ...
http-conf:conduit
요소에는 구성 정보를 지정하는 하위 요소가 있습니다. 자세한 내용은 표 12.1. “HTTP Consumer Endpoint를 구성하는 데 사용되는 요소” 에 설명되어 있습니다.
요소 | 설명 |
---|---|
| 시간 초과, 유지 요청, 콘텐츠 유형 등과 같은 HTTP 연결 속성을 지정합니다.Specifies the HTTP connection properties such as timeouts, keep-alive requests, content types, etc. “클라이언트 요소” 을 참조하십시오. |
끝점에서 선점하여 사용하는 기본 인증 방법을 구성하기 위한 매개변수를 지정합니다. 가장 선호되는 방법은 | |
발신 HTTP 프록시 서버에 대한 기본 인증을 구성하는 매개변수를 지정합니다. | |
SSL/TLS를 구성하는 데 사용되는 매개변수를 지정합니다. | |
끝점에서 사용하는 기본 인증 정보를 제공하는 오브젝트의 빈 참조 또는 클래스 이름을 선점적으로 또는 401 HTTP 챌린지에 대한 응답으로 지정합니다. | |
정보를 전송하기 전에 HTTP(S) |
12.2.2.4. 클라이언트 요소
http-conf:client
요소는 소비자 엔드포인트의 HTTP 연결의 비보안 속성을 구성하는 데 사용됩니다. 표 12.2. “HTTP 소비자 구성 속성” 에 설명된 해당 속성은 연결의 속성을 지정합니다.
속성 | 설명 |
---|---|
시간이 초과되기 전에 소비자가 연결을 설정하려고 시도하는 시간(밀리초)을 지정합니다. 기본값은
| |
시간이 초과되기 전에 소비자가 응답을 대기할 시간(밀리초)을 지정합니다. 기본값은
| |
소비자가 발급한 서버를 자동으로 따르는지 여부를 지정합니다. 기본값은 | |
소비자가 리디렉션을 충족하기 위해 요청을 다시 전송할 최대 횟수를 지정합니다. 기본값은 | |
사용자가 청크를 사용하여 요청을 보낼지 여부를 지정합니다. 기본값은 사용자가 요청을 보낼 때 청크를 사용하도록 지정하는 다음 중 하나라도 해당하는 경우 청크를 사용할 수 없습니다.
두 경우 모두 | |
소비자가 처리할 준비가 된 미디어 유형을 지정합니다. 이 값은 HTTP | |
소비자가 응답을 받기 위해 선호하는 언어(예: 미국 영어)를 지정합니다. 이 값은 HTTP 언어 태그는 International Organization for Standards(ISO)에 의해 규제되며 일반적으로 ISO-639 표준에 따라 결정된 언어 코드와 하이픈으로 구분된 ISO-3166 표준에 따라 국가 코드를 결합하여 구성됩니다. 예를 들어 en-US는 미국어를 나타냅니다. | |
소비자가 처리할 준비가 된 콘텐츠 인코딩을 지정합니다. 콘텐츠 인코딩 레이블은 IANA(Internet Assigned Numbers Authority)에 의해 규제됩니다. 이 값은 HTTP | |
메시지의 본문에 전송되는 데이터의 미디어 유형을 지정합니다.Specifies the media type of the data being sent in the body of a message. 미디어 유형은 다목적 인터넷 메일 확장 (MIME) 유형을 사용하여 지정됩니다. 값은 HTTP
웹 서비스의 경우 이 값을 | |
요청이 호출되는 리소스의 인터넷 호스트 및 포트 번호를 지정합니다. 이 값은 HTTP 이 속성은 일반적으로 필요하지 않습니다. 이는 특정 DNS 시나리오 또는 애플리케이션 설계에만 필요합니다. 예를 들어, 동일한 인터넷 프로토콜(IP) 주소에 매핑되는 가상 서버의 경우 클라이언트가 클러스터를 선호하는 호스트를 나타냅니다. | |
각 요청/응답 대화 상자 이후 특정 연결을 열린 상태로 유지할지 여부를 지정합니다.Specifies whether a particular connection is to be kept open or closed after each request/response dialog. 두 가지 유효한 값이 있습니다.
| |
소비자의 서비스 공급자 요청을 포함하는 체인과 관련된 캐시에 의해 준수해야 하는 동작에 대한 지시문을 지정합니다.Specifies directives about the behavior that must be adhered to by caches involved in the chain consisting a request from a consumer to a service provider. 12.2.4절. “소비자 캐시 제어 지침” 을 참조하십시오. | |
모든 요청과 함께 보낼 정적 쿠키를 지정합니다. | |
요청이 시작되는 브라우저에 대한 정보를 지정합니다. 월드 와이드 웹 컨소시엄 (W3C)의 HTTP 사양에서 이것을 user-agent 라고도 합니다. 일부 서버는 요청을 전송하는 클라이언트에 따라 최적화됩니다. | |
소비자가 특정 서비스에 대한 요청을 수행하도록 지시하는 리소스의 URL을 지정합니다. 값은 HTTP 이 HTTP 속성은 요청이 URL을 입력하는 대신 하이퍼링크를 클릭하는 브라우저 사용자의 결과인 경우에 사용됩니다. 이를 통해 서버는 이전 작업 흐름에 따라 처리를 최적화하고, 로깅, 최적화된 캐싱, 사용되지 않는 링크 추적 등의 목적으로 리소스에 백 링크 목록을 생성할 수 있습니다. 그러나 일반적으로 웹 서비스 애플리케이션에서는 사용되지 않습니다.
| |
별도의 공급자를 통해 응답을 받기 위한 분리된 엔드포인트의 URL을 지정합니다.Specifies the URL of a decoupled endpoint for the received of responses over a separate providerconsumer connection. 분리된 엔드포인트 사용에 대한 자세한 내용은 12.6절. “분리된 모드에서 HTTP 전송 사용” 에서 참조하십시오. 분리된 끝점에 대해 WS-Addressing을 사용하도록 소비자 끝점과 서비스 공급자 끝점을 모두 구성해야 합니다. | |
라우팅되는 요청을 통과하는 프록시 서버의 URL을 지정합니다. | |
라우팅되는 요청을 통한 프록시 서버의 포트 번호를 지정합니다. | |
요청을 라우팅하는 데 사용되는 프록시 서버의 유형을 지정합니다. 유효한 값은 다음과 같습니다.
|
12.2.2.5. 예제
예 12.6. “HTTP Consumer Endpoint 구성” 는 호출당 한 번만 요청을 다시 전송하며 청크 스트림을 사용할 수 없는 요청 간에 공급자에 대한 연결을 열어 두고자 하는 HTTP 소비자 끝점의 구성을 보여줍니다.
예 12.6. HTTP Consumer Endpoint 구성
<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:conduit name="{http://apache.org/hello_world_soap_http}SoapPort.http-conduit"> <http-conf:client Connection="Keep-Alive" MaxRetransmits="1" AllowChunking="false" /> </http-conf:conduit> </beans>
12.2.2.6. 더 알아보기
HTTP 구성에 대한 자세한 내용은 16장. 구성 요소 에서 참조하십시오.