300.2. オプション
Servlet コンポーネントは、以下に示す 9 個のオプションをサポートしています。
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
servletName (consumer) | 使用するサーブレットのデフォルト名。デフォルト名は CamelServlet です。 | CamelServlet | String |
httpRegistry (consumer) | カスタム org.apache.camel.component.servlet.HttpRegistry を使用します。 | HttpRegistry | |
attachmentMultipart Binding (consumer) | Camel エクスチェンジで multipart/form-data を添付として自動的にバインドするかどうか。オプション attachmentMultipartBinding=true と disableStreamCache=false は一緒に使用できません。AttachmentMultipartBinding を使用するには、disableStreamCache を削除します。サーブレットの使用時にこれを有効にするには、サーブレット固有の設定が必要になる場合があるため、これはデフォルトでオフになっています。 | false | boolean |
fileNameExtWhitelist (consumer) | アップロードされたファイルを受け入れるための受け入れられたファイル名拡張子のホワイトリスト。複数の拡張子は、txt、xml のようにコンマで区切ることができます。 | String | |
httpBinding (advanced) | カスタム HttpBinding を使用して、Camel メッセージと HttpClient との間のマッピングを制御します。 | HttpBinding | |
httpConfiguration (advanced) | 共有 HttpConfiguration を基本設定として使用するには、以下を行います。 | HttpConfiguration | |
allowJavaSerialized Object (advanced) | リクエストが context-type=application/x-java-serialized-object を使用する場合に Java シリアル化を許可するかどうか。これは、デフォルトでオフになっています。これを有効にすると、Java が受信データをリクエストから Java にデシリアライズし、セキュリティー上のリスクが生じる可能性があることに注意してください。 | false | boolean |
headerFilterStrategy (filter) | カスタムの org.apache.camel.spi.HeaderFilterStrategy を使用して、Camel メッセージとの間でヘッダーをフィルターします。 | HeaderFilterStrategy | |
resolveProperty Placeholders (advanced) | 起動時にコンポーネントがプロパティープレースホルダーを解決するかどうか。String タイプのプロパティーのみがプロパティープレースホルダーを使用できます。 | true | boolean |
サーブレットエンドポイントは、URI 構文を使用して設定されます。
servlet:contextPath
パスおよびクエリーパラメーターを使用します。
300.2.1. パスパラメーター (1 個のパラメーター):
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
contextPath | 必須 使用するコンテキストパス | String |
300.2.2. クエリーパラメーター(22 個のパラメーター):
名前 | 説明 | デフォルト | タイプ |
---|---|---|---|
disableStreamCache (common) | サーブレットからの生の入力ストリームがキャッシュされるかどうかを決定します (Camel はストリームをメモリー内/ファイルへのオーバーフロー、ストリームキャッシュに読み込みます)。デフォルトでは、Camel はサーブレット入力ストリームをキャッシュして複数回の読み取りをサポートし、Camel がストリームからすべてのデータを取得できるようにします。ただし、ファイルやその他の永続ストアに直接ストリーミングするなど、生のストリームにアクセスする必要がある場合は、このオプションを true に設定できます。ストリームの複数回の読み取りをサポートするためにこのオプションが false の場合、DefaultHttpBinding は要求入力ストリームをストリームキャッシュにコピーし、それをメッセージ本文に入れます。サーブレットを使用してエンドポイントをブリッジ/プロキシーする場合、メッセージペイロードを複数回読み取る必要がない場合は、このオプションを有効にしてパフォーマンスを向上させることを検討してください。http/http4 プロデューサーは、デフォルトでレスポンスボディーストリームをキャッシュします。このオプションを true に設定すると、プロデューサは応答本文ストリームをキャッシュせず、応答ストリームをそのままメッセージ本文として使用します。 | false | boolean |
headerFilterStrategy (common) | カスタムの HeaderFilterStrategy を使用して、Camel メッセージとの間でヘッダーをフィルタリングします。 | HeaderFilterStrategy | |
httpBinding (common) | カスタム HttpBinding を使用して、Camel メッセージと HttpClient との間のマッピングを制御します。 | HttpBinding | |
async (consumer) | 非同期モードで動作するようにコンシューマーを設定します | false | boolean |
bridgeErrorHandler (consumer) | コンシューマーの Camel ルーティングエラーハンドラーへのブリッジを許可します。よって、コンシューマーが受信メッセージなどの取得を試行している間に発生した例外は、メッセージとして処理され、ルーティングエラーハンドラーによって処理されます。デフォルトでは、コンシューマーは org.apache.camel.spi.ExceptionHandler を使用して例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | false | boolean |
chunked (consumer) | このオプションが false の場合、サーブレットは HTTP ストリーミングを無効にし、応答に content-length ヘッダーを設定します。 | true | boolean |
httpMethodRestrict (consumer) | GET/POST/PUT など、HttpMethod が一致する場合にのみ消費を許可するために使用されます。複数のメソッドをコンマで区切って指定できます。 | String | |
matchOnUriPrefix (consumer) | 完全に一致するものが見つからない場合に、コンシューマーが URI 接頭辞を照合してターゲットコンシューマーを見つけようとするかどうか。 | false | boolean |
responseBufferSize (consumer) | javax.servlet.ServletResponse. | Integer | |
servletName (consumer) | 使用するサーブレットの名前 | CamelServlet | String |
transferException (consumer) | 有効にすると、エクスチェンジがコンシューマー側で処理に失敗し、発生した例外が application/x-java-serialized-object コンテンツタイプとして応答でシリアライズされた場合に、例外がシリアライズされました。プロデューサー側では、例外がデシリアライズされ、HttpOperationFailedException ではなくそのまま出力されます。原因となった例外はシリアライズする必要があります。これは、デフォルトでオフになっています。これを有効にすると、Java が受信データをリクエストから Java にデシリアライズし、セキュリティー上のリスクが生じる可能性があることに注意してください。 | false | boolean |
attachmentMultipartBinding (consumer) | Camel エクスチェンジで multipart/form-data を添付として自動的にバインドするかどうか。オプション attachmentMultipartBinding=true と disableStreamCache=false は一緒に使用できません。AttachmentMultipartBinding を使用するには、disableStreamCache を削除します。サーブレットの使用時にこれを有効にするには、サーブレット固有の設定が必要になる場合があるため、これはデフォルトでオフになっています。 | false | boolean |
eagerCheckContentAvailable (consumer) | content-length ヘッダーが 0 または存在しない場合に、HTTP リクエストにコンテンツがあるかどうかを先行チェックするかどうか。これは、HTTP クライアントがストリーミングデータを送信しない場合に有効にすることができます。 | false | boolean |
exceptionHandler (consumer) | コンシューマーによるカスタム ExceptionHandler の使用を許可します。bridgeErrorHandler オプションが有効な場合は、このオプションは使用されないことに注意してください。デフォルトでは、コンシューマーは例外に対応し、WARN または ERROR レベルでログに記録され、無視されます。 | ExceptionHandler | |
exchangePattern (consumer) | コンシューマーがエクスチェンジを作成する際に交換パターンを設定します。 | ExchangePattern | |
fileNameExtWhitelist (consumer) | アップロードされたファイルを受け入れるための受け入れられたファイル名拡張子のホワイトリスト。複数の拡張子は、txt、xml のようにコンマで区切ることができます。 | String | |
optionsEnabled (consumer) | このサーブレットコンシューマーに対して HTTP OPTIONS を有効にするかどうかを指定します。デフォルトでは、OPTIONS はオフになっています。 | false | boolean |
traceEnabled (consumer) | このサーブレットコンシューマーに対して HTTP TRACE を有効にするかどうかを指定します。デフォルトでは、TRACE はオフになっています。 | false | boolean |
mapHttpMessageBody (advanced) | このオプションが true の場合、交換の IN exchange ボディは HTTP ボディにマップされます。これを false に設定すると、HTTP マッピングが回避されます。 | true | boolean |
mapHttpMessageFormUrl EncodedBody (advanced) | このオプションが true の場合、交換の IN exchange Form Encoded ボディは HTTP にマップされます。これを false に設定すると、HTTP Form Encoded ボディマッピングが回避されます。 | true | boolean |
mapHttpMessageHeaders (advanced) | このオプションが true の場合、交換の IN exchange ヘッダーは HTTP ヘッダーにマップされます。これを false に設定すると、HTTP ヘッダーのマッピングが回避されます。 | true | boolean |
synchronous (advanced) | 同期処理を厳密に使用するか、Camel が非同期処理を使用できるかどうかを設定します (サポートされている場合)。 | false | boolean |