241.2. HTTP オプション
このコンポーネントは、Netty からすべてのオプションを継承します。したがって、Netty のドキュメントも参照してください。
UDP トランスポートに関連するオプションなど、この Netty HTTP コンポーネントを使用する場合、Netty の一部のオプションは適用されないことに注意してください。
Netty HTTP コンポーネントは、以下に示す 7 個のオプションをサポートしています。
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
nettyHttpBinding (advanced) | カスタム org.apache.camel.component.netty.http.NettyHttpBinding を使用して、Netty および Camel Message API との間でバインドします。 | NettyHttpBinding | |
configuration (common) | エンドポイントの作成時に NettyConfiguration を設定として使用するには。 | NettyHttpConfiguration | |
headerFilterStrategy (advanced) | カスタム org.apache.camel.spi.HeaderFilterStrategy を使用してヘッダーをフィルタリングするには。 | HeaderFilterStrategy | |
securityConfiguration (security) | 安全な Web リソースを設定するための org.apache.camel.component.netty.http.NettyHttpSecurityConfiguration を参照します。 | NettyHttpSecurity 設定 | |
useGlobalSslContext Parameters (security) | グローバル SSL コンテキストパラメーターの使用を有効にします。 | false | boolean |
maximumPoolSize (advanced) | 順序付けられたスレッドプールのコアプールサイズ (使用中の場合)。デフォルト値は 16 です。 | 16 | int |
resolveProperty Placeholders (advanced) | 起動時にコンポーネントがプロパティープレースホルダーを解決するかどうか。String タイプのプロパティーのみがプロパティープレースホルダーを使用できます。 | true | boolean |
Netty HTTP エンドポイントは、URI 構文を使用して設定されます。
netty-http:protocol:host:port/path
パスおよびクエリーパラメーターを使用します。
241.2.1. パスパラメーター (4 パラメーター)
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
protocol | 必須 使用するプロトコル (http または https) | String | |
host | 必須 localhost などのローカルホスト名、またはコンシューマーの場合は 0.0.0.0。プロデューサーを使用する場合のリモート HTTP サーバーのホスト名。 | String | |
port | ホストのポート番号。 | int | |
path | リソースパス | String |
241.2.2. クエリーパラメーター (78 個のパラメーター):
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
bridgeEndpoint (common) | オプションが true の場合、プロデューサーは Exchange.HTTP_URI ヘッダーを無視し、エンドポイントの URI をリクエストに使用します。また、throwExceptionOnFailure を false に設定して、プロデューサーがすべての障害応答を送り返すようにすることもできます。ブリッジモードで動作するコンシューマーは、gzip 圧縮と WWW URL フォームエンコーディングをスキップします (消費される Exchange に Exchange.SKIP_GZIP_ENCODING と Exchange.SKIP_WWW_FORM_URLENCODED ヘッダーを追加することで行います)。 | false | boolean |
disconnect (common) | 使用直後に Netty Channel を切断 (クローズ) するかどうか。コンシューマーとプロデューサーの両方に使用できます。 | false | boolean |
keepAlive (common) | 非アクティブのためにソケットが閉じられないようにするための設定 | true | boolean |
reuseAddress (common) | ソケットの多重化を容易にするための設定 | true | boolean |
sync (common) | エンドポイントを一方向または要求応答として設定する設定 | true | boolean |
tcpNoDelay (common) | TCP プロトコルのパフォーマンスを向上させるための設定 | true | boolean |
bridgeErrorHandler (consumer) | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、consumer は org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | boolean |
matchOnUriPrefix (consumer) | 完全に一致するものが見つからない場合に、Camel が URI 接頭辞を照合してターゲットコンシューマーを見つけようとするかどうか。 | false | boolean |
send503whenSuspended (consumer) | コンシューマーが中断されたときに HTTP ステータスコード 503 を返すかどうか。このオプションが false の場合、コンシューマーが中断されたときに Netty Acceptor がバインド解除されるため、クライアントはそれ以上接続できません。 | true | boolean |
backlog (consumer) | netty コンシューマー (サーバー) のバックログを設定できます。バックログは、OS によってはベストエフォートであることに注意してください。このオプションを 200、500、1000 などの値に設定すると、TCP スタックに受け入れキューの長さが通知されます。このオプションが設定されていない場合、バックログは OS の設定に依存します。 | int | |
bossCount (consumer) | netty が nio モードで動作する場合、Netty のデフォルトの bossCount パラメーターである 1 を使用します。ユーザーはこの操作を使用して、Netty のデフォルトの bossCount をオーバーライドできます | 1 | int |
bossPool (consumer) | 明示的な org.jboss.netty.channel.socket.nio.BossPool を Boss スレッドプールとして使用します。たとえば、スレッドプールを複数のコンシューマーと共有する場合などです。デフォルトでは、各コンシューマーには 1 つのコアスレッドを持つ独自の Boss プールがあります。 | BossPool | |
channelGroup (consumer) | 明示的な ChannelGroup を使用するには。 | ChannelGroup | |
chunkedMaxContentLength (consumer) | Netty HTTP サーバーで受信したチャンクフレームごとのコンテンツの最大長 (バイト単位) の値。 | 1048576 | int |
compression (consumer) | クライアントが HTTP ヘッダーからサポートしている場合、Netty HTTP サーバーでの圧縮に gzip/deflate の使用を許可します。 | false | boolean |
disableStreamCache (consumer) | Netty HttpRequest#getContent() からの未加工の入力ストリームがキャッシュされるかどうかを決定します (Camel はストリームを軽量メモリーベースのストリームキャッシュに読み込みます)。デフォルトでは、Camel は Netty 入力ストリームをキャッシュして複数回の読み取りをサポートし、Camel がストリームからすべてのデータを取得できるようにします。ただし、ファイルやその他の永続ストアに直接ストリーミングするなど、生のストリームにアクセスする必要がある場合は、このオプションを true に設定できます。このオプションを有効にすると、そのままでは Netty ストリームを複数回読み取ることができず、Netty raw ストリームのリーダーインデックスを手動でリセットする必要があることに注意してください。 | false | boolean |
disconnectOnNoReply (consumer) | 同期が有効になっている場合、このオプションは、返信がない場合に NettyConsumer を切断するかどうかを指定します。 | true | boolean |
exceptionHandler (consumer) | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、consumer は例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | ExceptionHandler | |
exchangePattern (consumer) | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。 | ExchangePattern | |
httpMethodRestrict (consumer) | Netty HTTP コンシューマーで HTTP メソッドを無効にします。コンマ区切りで複数指定できます。 | String | |
mapHeaders (consumer) | このオプションを有効にすると、Netty から Camel Message へのバインド中にヘッダーもマッピングされます (たとえば、ヘッダーとして Camel Message にも追加されます)。このオプションをオフにして、これを無効にすることができます。ヘッダーは、Netty HTTP リクエスト org.jboss.netty.handler.codec.http.HttpRequest インスタンスを返すメソッド getHttpRequest() を使用して、org.apache.camel.component.netty.http.NettyHttpMessage メッセージから引き続きアクセスできます。 | true | boolean |
maxChannelMemorySize (consumer) | orderedThreadPoolExecutor を使用する場合の、チャネルごとのキューに入れられたイベントの最大合計サイズ。無効にする場合は 0 を指定します。 | 10485760 | long |
maxHeaderSize (consumer) | すべてのヘッダーの最大長。各ヘッダーの長さの合計がこの値を超えると、TooLongFrameException が発生します。 | 8192 | int |
maxTotalMemorySize (consumer) | このプールのキューに入れられたイベントの最大合計サイズ (orderedThreadPoolExecutor を使用する場合)。無効にする場合は 0 を指定します。 | 209715200 | long |
nettyServerBootstrapFactory (consumer) | カスタム NettyServerBootstrapFactory を使用する場合 | NettyServerBootstrap Factory | |
nettySharedHttpServer (consumer) | 共有 Netty HTTP サーバーを使用するには。詳細は、Netty HTTP サーバーの例を参照してください。 | NettySharedHttpServer | |
noReplyLogLevel (consumer) | 同期が有効になっている場合、このオプションは NettyConsumer がログに記録するときに使用するログレベルを決定し、返信する応答がありません。 | WARN | LoggingLevel |
orderedThreadPoolExecutor (consumer) | 順序付けられたスレッドプールを使用して、イベントが同じチャネルで順番に処理されるかどうか。詳細は、org.jboss.netty.handler.execution.OrderedMemoryAwareThreadPoolExecutor の netty javadoc を参照してください。 | true | boolean |
serverClosedChannel ExceptionCaughtLogLevel (consumer) | サーバー (NettyConsumer) が java.nio.channels.ClosedChannelException をキャッチすると、このログレベルを使用してログに記録されます。これは、クローズドチャネル例外のログ記録を回避するために使用されます。これは、クライアントが突然切断され、Netty サーバーでクローズド例外のフラッドが発生する可能性があるためです。 | DEBUG | LoggingLevel |
serverExceptionCaughtLog Level (consumer) | サーバー (NettyConsumer) が例外をキャッチすると、このログレベルを使用してログに記録されます。 | WARN | LoggingLevel |
serverPipelineFactory (consumer) | カスタム ServerPipelineFactory を使用する場合。 | ServerPipelineFactory | |
traceEnabled (consumer) | この Netty HTTP コンシューマーに対して HTTP TRACE を有効にするかどうかを指定します。デフォルトでは、TRACE はオフになっています。 | false | boolean |
urlDecodeHeaders (consumer) | このオプションを有効にすると、Netty から Camel Message へのバインド中にヘッダー値が URL デコードされます (たとえば、%20 はスペース文字になります。このオプションはデフォルトの org.apache.camel.component.netty.http.NettyHttpBinding で使用されるため、カスタム org.apache.camel.component.netty.http.NettyHttpBinding を実装する場合は、このオプションに従ってヘッダーをデコードする必要があることに注意してください。 | false | boolean |
workerCount (consumer) | netty が nio モードで動作する場合、Netty のデフォルトの workerCount パラメーター (cpu_core_threads2) を使用します。ユーザーはこの操作を使用して、Netty のデフォルトの workerCount をオーバーライドできます。 | int | |
workerPool (consumer) | 明示的な org.jboss.netty.channel.socket.nio.WorkerPool をワーカースレッドプールとして使用する場合。たとえば、スレッドプールを複数のコンシューマーと共有する場合などです。デフォルトでは、各コンシューマーには、2 x CPU カウントのコアスレッドを備えた独自のワーカープールがあります。 | WorkerPool | |
connectTimeout (producer) | ソケット接続が使用可能になるまで待機する時間。値はミリ単位です。 | 10000 | long |
requestTimeout (producer) | リモートサーバーを呼び出すときに、Netty プロデューサーのタイムアウトを使用できるようにします。デフォルトでは、タイムアウトは使用されていません。値はミリ秒単位なので、たとえば 30000 は 30 秒です。requestTimeout は、Netty の ReadTimeoutHandler を使用してタイムアウトをトリガーしています。 | long | |
throwExceptionOnFailure (producer) | リモートサーバーからの応答が失敗した場合に HttpOperationFailedException を出力することを無効にするオプション。これにより、HTTP ステータスコードに関係なくすべての応答を取得できます。 | true | boolean |
clientPipelineFactory (producer) | カスタム ClientPipelineFactory を使用する場合。 | ClientPipelineFactory | |
lazyChannelCreation (producer) | Camel プロデューサーの起動時にリモートサーバーが稼働していない場合は、例外を回避するためにチャネルを遅延作成できます。 | true | boolean |
okStatusCodeRange (producer) | 正常な応答と見なされるステータスコード。値は含まれます。複数の範囲をコンマで区切って定義できます (例: 200-204,209,301-304)。各範囲は、ダッシュを含む 1 つの数字または from-to である必要があります。デフォルトの範囲は 200-299 です。 | 200-299 | String |
producerPoolEnabled (producer) | プロデューサープールが有効かどうか。重要: これをオフにしないでください。並行性と信頼できるリクエスト/レスポンスを処理するためにプーリングが必要です。 | true | boolean |
producerPoolMaxActive (producer) | 特定の時間にプールによって割り当てられる (クライアントにチェックアウトされるか、チェックアウトを待機するアイドル) オブジェクトの数に上限を設定します。無制限の場合は負の値を使用します。 | -1 | int |
producerPoolMaxIdle (producer) | プール内のアイドルインスタンス数の上限を設定します。 | 100 | int |
producerPoolMinEvictable Idle (producer) | アイドル状態のオブジェクト Evictor によるエビクションの対象となる前に、オブジェクトがプール内でアイドル状態になる最小時間 (ミリ単位の値) を設定します。 | 300000 | long |
producerPoolMinIdle (producer) | evictor スレッド (アクティブな場合) が新しいオブジェクトを生成する前に、プロデューサープールで許可されるインスタンスの最小数を設定します。 | int | |
useChannelBuffer (producer) | useChannelBuffer が true の場合、netty プロデューサーはメッセージボディーを送信前に ChannelBuffer に変換します。 | false | boolean |
useRelativePath (producer) | HTTP リクエストで相対パスを使用するかどうかを設定します。IBM Datapower などの一部のサードパーティーバックエンドシステムは、HTTP POST で絶対 URI をサポートしていないため、このオプションを true に設定すると、この問題を回避できます。 | false | boolean |
bootstrapConfiguration (advanced) | このエンドポイントを設定するためにカスタム設定された NettyServerBootstrapConfiguration を使用するには。 | NettyServerBootstrap 設定 | |
configuration (advanced) | このエンドポイントを設定するためにカスタム設定された NettyHttpConfiguration を使用するには。 | NettyHttpConfiguration | |
headerFilterStrategy (advanced) | カスタム org.apache.camel.spi.HeaderFilterStrategy を使用してヘッダーをフィルタリングするには。 | HeaderFilterStrategy | |
nettyHttpBinding (advanced) | カスタム org.apache.camel.component.netty.http.NettyHttpBinding を使用して、Netty および Camel Message API との間でバインドします。 | NettyHttpBinding | |
options (advanced) | オプションを使用して、追加の netty オプションを設定できます。接頭辞として。たとえば、netty オプション child.keepAlive=false を設定するには、option.child.keepAlive=false とします。使用可能なオプションは、Netty のドキュメントを参照してください。 | Map | |
receiveBufferSize (advanced) | インバウンド通信中に使用される TCP/UDP バッファーサイズ。サイズはバイトです。 | 65536 | long |
receiveBufferSizePredictor (advanced) | バッファーサイズプレディクターを設定します。詳細は、Jetty のドキュメントとこのメールスレッドを参照してください。 | int | |
sendBufferSize (advanced) | アウトバウンド通信中に使用される TCP/UDP バッファーサイズ。サイズはバイトです。 | 65536 | long |
synchronous (advanced) | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるかどうかを設定します (サポートされている場合)。 | false | boolean |
transferException (advanced) | 有効にすると、エクスチェンジがコンシューマー側で処理に失敗し、発生した例外が application/x-java-serialized-object コンテンツタイプとして応答でシリアライズされた場合に、例外がシリアライズされました。producer 側では、例外がデシリアライズされ、HttpOperationFailedException ではなくそのまま出力されます。原因となった例外はシリアライズする必要があります。これは、デフォルトでオフになっています。これを有効にすると、Java が受信データをリクエストから Java にデシリアライズし、セキュリティー上のリスクが生じる可能性があることに注意してください。 | false | boolean |
transferExchange (advanced) | TCP にのみ使用されます。ボディーだけでなく、ネットワーク経由でエクスチェンジを転送することができます。In body、Out body、fault body、In ヘッダー、Out ヘッダー、Fault ヘッダー、exchange プロパティー、exchange 例外フィールドが転送されます。これには、オブジェクトがシリアライズ可能である必要があります。Camel はシリアル化できないオブジェクトを除外し、WARN レベルでログに記録します。 | false | boolean |
decoder (codec) | 非推奨 単一のデコーダーを使用すること。このオプションは非推奨であり、代わりにエンコーダーを使用してください。 | ChannelHandler | |
decoders (codec) | 使用するデコーダーのリスト。コンマで区切られた値を持つ文字列を使用して、値をレジストリーで検索することができます。Camel がルックアップする必要があることを認識できるように、値の前に # を付けることを忘れないでください。 | String | |
encoder (codec) | 非推奨 単一のエンコーダーを使用する場合。このオプションは非推奨であり、代わりにエンコーダーを使用してください。 | ChannelHandler | |
encoders (codec) | 使用するエンコーダーのリスト。コンマで区切られた値を持つ文字列を使用して、値をレジストリーで検索することができます。Camel がルックアップする必要があることを認識できるように、値の前に # を付けることを忘れないでください。 | String | |
enabledProtocols (security) | SSL を使用するときに有効にするプロトコル | TLSv1,TLSv1.1,TLSv1.2 | String |
keyStoreFile (security) | 暗号化に使用されるクライアント側の証明書キーストア | File | |
keyStoreFormat (security) | ペイロードの暗号化に使用されるキーストア形式。設定されていない場合、デフォルトは JKS | JKS | String |
keyStoreResource (security) | 暗号化に使用されるクライアント側の証明書キーストア。デフォルトではクラスパスからロードされますが、classpath:、file:、または http: をプレフィックとして指定して、異なるシステムからリソースをロードすることもできます。 | String | |
needClientAuth (security) | SSL の使用時にサーバーがクライアント認証を必要とするかどうかを設定します。 | false | boolean |
パスフレーズ (security) | SSH を使用して送信されたペイロードを暗号化/復号化するために使用するパスワード設定 | String | |
securityConfiguration (security) | 安全な Web リソースを設定するための org.apache.camel.component.netty.http.NettyHttpSecurityConfiguration を参照します。 | NettyHttpSecurity 設定 | |
securityOptions (security) | マップのキーと値のペアを使用して NettyHttpSecurityConfiguration を設定する場合。 | Map | |
securityProvider (security) | ペイロードの暗号化に使用するセキュリティープロバイダー。設定されていない場合、デフォルトは SunX509 です。 | SunX509 | String |
ssl (security) | このエンドポイントに SSL 暗号化を適用するかどうかを指定する設定 | false | boolean |
sslClientCertHeaders (security) | 有効で SSL モードの場合、Netty コンシューマーは、サブジェクト名、発行者名、シリアル番号、有効な日付範囲などのクライアント証明書に関する情報を含むヘッダーで Camel メッセージを強化します。 | false | boolean |
sslContextParameters (security) | SSLContextParameters を使用してセキュリティーを設定します。 | SSLContextParameters | |
sslHandler (security) | SSL ハンドラーを返すために使用できるクラスへの参照 | SslHandler | |
trustStoreFile (security) | 暗号化に使用されるサーバー側の証明書キーストア | File | |
trustStoreResource (security) | 暗号化に使用されるサーバー側の証明書キーストア。デフォルトではクラスパスからロードされますが、classpath:、file:、または http: をプレフィックとして指定して、異なるシステムからリソースをロードすることもできます。 | String |