2017-12-05 7 views
0

私はデータベースに要求xmlを格納する必要があります。私はそれを行うためにヘッダー変数を使用していました。サイズキャメルヘッダー変数とプロパティのサイズ制限

exchange.getIn().setHeader("inputRequestXml", body); 

それはいくつかのファイルのために働いていたと私はいくつかのファイルのための例外の下になっていた、それがあるため、ファイルサイズのように思えます。

exchange.setProperty("inputRequestXml", body); 

の下に今、私は例外を取得していない午前のよう

413 Request entity too large 

は、だから私は、ラクダのプロパティを使用して実装を変更しました。しかし、実際のP​​ROD環境ではより大きなファイルを扱うのは怖いです。だから、私は知りたい、どのようなサイズのヘッダー変数とプロパティの の制限ですか?

答えて

2

Apache Camelには、ヘッダーとプロパティに制限はありません。他のすべてのオブジェクトと同様に、Javaヒープサイズによって制限されます。

投稿したエラーはHTTPエラーです。おそらくHTTP経由で送信していて、リモートサーバーからこのエラーが返されました。 Apache CamelはHTTPヘッダーとしてMessage#headersを変換し、サーバーで設定されたサイズ制限を超えています。

参照:プロパティは、HTTP経由でtranferredされていないため、プロパティへの切り替えMaximum on http header values?

は、働いていました。エンドポイントオプションに興味があるかもしれません。copyHeaders=falseおよびheaderFilterStrategy

4

Exchangeプロパティには制限がありません。キー/値をJVMのメモリに保存するHashMapです。

メッセージヘッダーもHashMapですが、ヘッダーはメッセージコントラクトの一部です。使用するCamelコンポーネント(トランスポート)によっては、HTTPヘッダー、SOAPヘッダー、JMSヘッダーなど、これらのヘッダーが使用されている可能性があります。これらの輸送によって引き起こされるヘッダーの制限がある場合があります。

さらに詳しい情報があります。重要なCamelの概念について説明しているCamel in Action第2版の無料チャプター1を読むことをお勧めします。

関連する問題