Author: buildbot
Date: Thu Nov 12 14:20:28 2015
New Revision: 972207
Log:
Production update by buildbot for camel
Modified:
websites/production/camel/content/book-component-appendix.html
websites/production/camel/content/book-in-one-page.html
websites/production/camel/content/cache/main.pageCache
websites/production/camel/content/http.html
websites/production/camel/content/http4.html
websites/production/camel/content/jetty.html
Modified: websites/production/camel/content/book-component-appendix.html
==============================================================================
--- websites/production/camel/content/book-component-appendix.html (original)
+++ websites/production/camel/content/book-component-appendix.html Thu Nov 12
14:20:28 2015
@@ -1075,11 +1075,11 @@ template.send("direct:alias-verify&
]]></script>
</div></div><p></p><h3 id="BookComponentAppendix-SeeAlso.8">See Also</h3>
<ul><li><a shape="rect" href="configuring-camel.html">Configuring
Camel</a></li><li><a shape="rect"
href="component.html">Component</a></li><li><a shape="rect"
href="endpoint.html">Endpoint</a></li><li><a shape="rect"
href="getting-started.html">Getting Started</a></li></ul><ul><li><a
shape="rect" href="crypto.html">Crypto</a> Crypto is also available as a <a
shape="rect" href="data-format.html">Data Format</a></li></ul> <h2
id="BookComponentAppendix-CXFComponent">CXF Component</h2><div
class="confluence-information-macro confluence-information-macro-note"><span
class="aui-icon aui-icon-small aui-iconfont-warning
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>When using CXF as a consumer, the
<a shape="rect" href="cxf-bean-component.html">CXF Bean Component</a> allows
you to factor out how message payloads are received from their processing as a
RESTful or SOAP web service. This has the potential of using a multitude of
transports to cons
ume web services. The bean component's configuration is also simpler and
provides the fastest method to implement web services using Camel and
CXF.</p></div></div><div class="confluence-information-macro
confluence-information-macro-tip"><span class="aui-icon aui-icon-small
aui-iconfont-approve confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>When using CXF in streaming modes
(see DataFormat option), then also read about <a shape="rect"
href="stream-caching.html">Stream caching</a>.</p></div></div><p>The
<strong>cxf:</strong> component provides integration with <a shape="rect"
href="http://cxf.apache.org">Apache CXF</a> for connecting to JAX-WS services
hosted in CXF.</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1447284115778 {padding: 0px;}
-div.rbtoc1447284115778 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1447284115778 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1447337865437 {padding: 0px;}
+div.rbtoc1447337865437 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1447337865437 li {margin-left: 0px;padding-left: 0px;}
-/*]]>*/</style></p><div class="toc-macro rbtoc1447284115778">
+/*]]>*/</style></p><div class="toc-macro rbtoc1447337865437">
<ul class="toc-indentation"><li><a shape="rect"
href="#BookComponentAppendix-CXFComponent">CXF Component</a>
<ul class="toc-indentation"><li><a shape="rect"
href="#BookComponentAppendix-URIformat">URI format</a></li><li><a shape="rect"
href="#BookComponentAppendix-Options">Options</a>
<ul class="toc-indentation"><li><a shape="rect"
href="#BookComponentAppendix-Thedescriptionsofthedataformats">The descriptions
of the dataformats</a>
@@ -4327,7 +4327,7 @@ from("direct:start")
<to uri="http://www.google.com"/>
<to uri="mock:results"/>
]]></script>
-</div></div></td></tr></tbody></table></div><h3
id="BookComponentAppendix-HttpEndpointOptions">HttpEndpoint Options</h3><div
class="confluenceTableSmall"><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>throwExceptionOnFailure</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Option to disable throwing the
<code>HttpOperationFailedException</code> in case of failed responses from the
remote server. This allows you to get all responses regardless of the HTTP
status code.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>bridgeEndpoint</code></p></td><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>If the option is true , HttpProducer will
ignore the Exchange.HTTP_URI header, and use the endpoint's URI for request.
You may also set the * throwExceptionOnFailure* to be false to let the
HttpProducer send all the fault response back. <br clear="none"
class="atl-forced-newline"> <strong>Camel 2.3:</strong> If the option is true,
HttpProducer and CamelServlet will skip the gzip processing if the
content-encoding is "gzip".</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>disableStreamCache</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>DefaultHttpBinding will copy the request
input stream into a stream cache and put it into message body if this option is
false to support read it twice, otherwise DefaultHttpBinding will set the
request input stream direct in
to the message body.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpBindingRef</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Deprecated and will be removed in
Camel 3.0:</strong> Reference to a
<code>org.apache.camel.component.http.HttpBinding</code> in the <a shape="rect"
href="registry.html">Registry</a>. Use the <code>httpBinding</code> option
instead.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpBinding</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.3:</strong> Reference to a
<code>org.apache.camel.component.http.HttpBinding</code> in the <a shape="rect"
href="registry.html">Registry</a>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClientConfigurerRef</code></p><
/td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Deprecated and will be removed in Camel
3.0:</strong> Reference to a
<code>org.apache.camel.component.http.HttpClientConfigurer</code> in the <a
shape="rect" href="registry.html">Registry</a>. Use the
<code>httpClientConfigurer</code> option instead.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClientConfigurer</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.3:</strong>
Reference to a
<code>org.apache.camel.component.http.HttpClientConfigurer</code> in the <a
shape="rect" href="registry.html">Registry</a>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClient.XXX</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="
1" rowspan="1" class="confluenceTd"><p>Setting options on the <a shape="rect"
class="external-link"
href="http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/params/HttpClientParams.html">HttpClientParams</a>.
For instance <code>httpClient.soTimeout=5000</code> will set the
<code>SO_TIMEOUT</code> to 5 seconds.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>clientConnectionManager</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.http.conn.ClientConnectionManager</code>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>transferException</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.6:</strong> If enabled and
an <a shape="rect" href="exchange.html">Exchange</a> failed p
rocessing on the consumer side, and if the caused <code>Exception</code> was
send back serialized in the response as a
<code>application/x-java-serialized-object</code> content type (for example
using <a shape="rect" href="jetty.html">Jetty</a> or <a shape="rect"
href="servlet.html">SERVLET</a> Camel components). On the producer side the
exception will be deserialized and thrown as is, instead of the
<code>HttpOperationFailedException</code>. The caused exception is required to
be serialized.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>headerFilterStrategy</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
Reference to a instance of
<code>org.apache.camel.spi.HeaderFilterStrategy</code> in the <a shape="rect"
href="registry.html">Registry</a>. It will be used to apply the custom
headerFilterStrategy on the new create HttpEndpoint.<
/p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>urlRewrite</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
<strong>Producer only</strong> Refers to a custom
<code>org.apache.camel.component.http.UrlRewrite</code> which allows you to
rewrite urls when you bridge/proxy endpoints. See more details at <a
shape="rect" href="urlrewrite.html">UrlRewrite</a> and <a shape="rect"
href="how-to-use-camel-as-a-http-proxy-between-a-client-and-server.html">How to
use Camel as a HTTP proxy between a client and server</a>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><code>eagerCheckContentAvailable</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><code>false</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><strong>Camel
2.15.3/2.16:</strong> <strong>Consumer only</strong>  Whether to eager
check wheth
er the HTTP requests has content if the content-length header is 0 or not
present.  This can be turned on in case HTTP clients do not send streamed
data.</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><code>copyHeaders</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>true</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>Camel 2.16:</strong>  If this option is true
then IN exchange headers will be copied to OUT exchange headers according to
copy strategy. Setting this to false, allows to only include the headers from
the HTTP response (not propagating IN headers).</td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><code>okStatusCodeRange</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><code>200-299</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.16:</strong> The
status codes which is considered a success response. The values are inclusive.
The range must be defined as from-
to with the dash included.</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><code>ignoreResponseBody</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><code>false</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><strong>Camel 2.16:</strong> If this option is
true, The http producer won't read response body and cache the input
stream.</td></tr></tbody></table></div></div><h3
id="BookComponentAppendix-AuthenticationandProxy">Authentication and
Proxy</h3><p>The following authentication options can also be set on the
HttpEndpoint:</p><div class="confluenceTableSmall"><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>authMethod</code></p></td><td
colspan="1" rowspan
="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Authentication method, either as
<code>Basic</code>, <code>Digest</code> or
<code>NTLM</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>authMethodPriority</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Priority of authentication methods. Is a
list separated with comma. For example: <code>Basic,Digest</code> to exclude
<code>NTLM</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>authUsername</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Username for
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>authPassword</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><co
de>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Password for authentication</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>authDomain</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Domain for NTML
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>authHost</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Optional host for NTML
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyHost</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The proxy host name</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyPort</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The proxy port number</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthMethod</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Authentication method for proxy, either as
<code>Basic</code>, <code>Digest</code> or
<code>NTLM</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthUsername</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Username for proxy
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthPassword</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Password
for proxy authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthDomain</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Domain for proxy NTML
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthHost</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Optional host for proxy NTML
authentication</p></td></tr></tbody></table></div></div><p>When using
authentication you <strong>must</strong> provide the choice of method for the
<code>authMethod</code> or <code>authProxyMethod</code> options.<br
clear="none"> You can configure the proxy and authentication details on either
the <code>HttpComponent</code> or the <code>HttpEndoint</code>. Values provided
on the <code>HttpEndpoint</code> will take precedence over <c
ode>HttpComponent</code>. Its most likely best to configure this on the
<code>HttpComponent</code> which allows you to do this once.</p><p>The <a
shape="rect" href="http.html">HTTP</a> component uses convention over
configuration which means that if you have not explicit set a
<code>authMethodPriority</code> then it will fallback and use the select(ed)
<code>authMethod</code> as priority as well. So if you use
<code>authMethod.Basic</code> then the <code>auhtMethodPriority</code> will be
<code>Basic</code> only.</p><p>Note: camel-http is based on HttpClient v3.x and
as such has only <a shape="rect" class="external-link"
href="http://hc.apache.org/httpclient-3.x/authentication.html#NTLM">limited
support</a> for what is known as NTLMv1, the early version of the NTLM
protocol. It does not support NTLMv2 at all. Camel-http4 has support for
NTLMv2.</p><h3 id="BookComponentAppendix-HttpComponentOptions">HttpComponent
Options</h3><div class="confluenceTableSmall"><div class="table-wrap"><t
able class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>httpBinding</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.camel.component.http.HttpBinding</code>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClientConfigurer</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.camel.component.http.HttpClientConfigurer</code>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpConnectionManager</code></p></td><td colspan=
"1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.commons.httpclient.HttpConnectionManager</code>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpConfiguration</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.camel.component.http.HttpConfiguration</code></p></td></tr></tbody></table></div></div><p><code>HttpConfiguration</code>
contains all the options listed in the table above under the section
<em>HttpConfiguration - Setting Authentication and Proxy</em>.</p><h3
id="BookComponentAppendix-MessageHeaders.6">Message Headers</h3><div
class="confluenceTableSmall"><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1" class="co
nfluenceTh"><p>Type</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>Exchange.HTTP_URI</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>URI to call. Will override
existing URI set directly on the endpoint.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_METHOD</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>HTTP Method / Verb to use
(GET/POST/PUT/DELETE/HEAD/OPTIONS/TRACE)</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>Exchange.HTTP_PATH</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Request URI's path, the header
will be used
to build the request URI with the HTTP_URI. <strong>Camel 2.3.0:</strong> If
the path is start with "/", http producer will try to find the relative path
based on the Exchange.HTTP_BASE_URI header or the
exchange.getFromEndpoint().getEndpointUri();</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_QUERY</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>URI parameters. Will override
existing URI parameters set directly on the endpoint.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_RESPONSE_CODE</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>int</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP response code from the
external server. Is 200 for OK.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_CHARACTER_ENCODING</co
de></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Character encoding.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>Exchange.CONTENT_TYPE</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP content type. Is set
on both the IN and OUT message to provide a content type, such as
<code>text/html</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.CONTENT_ENCODING</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP content encoding. Is
set on both the IN and OUT message to provide a content encoding, such as
<code>gzip</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_SERVLET_R
EQUEST</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>HttpServletRequest</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The <code>HttpServletRequest</code>
object.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_SERVLET_RESPONSE</code></p></td><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>HttpServletResponse</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>The
<code>HttpServletResponse</code> object.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_PROTOCOL_VERSION</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5:</strong> You
can set the http protocol version with this header, eg. "HTTP/1.0". If you
didn't specify the header, HttpProducer will use the default value
"HTTP/1.1"</p></td></tr></tbody></table></div></d
iv><p>The header name above are constants. For the spring DSL you have to use
the value of the constant instead of the name.</p><h3
id="BookComponentAppendix-MessageBody.1">Message Body</h3><p>Camel will store
the HTTP response from the external server on the OUT body. All headers from
the IN message will be copied to the OUT message, so headers are preserved
during routing. Additionally Camel will add the HTTP response headers as well
to the OUT message headers.</p><h3
id="BookComponentAppendix-Responsecode">Response code</h3><p>Camel will handle
according to the HTTP response code:</p><ul class="alternate"><li>Response code
is in the range 100..299, Camel regards it as a success
response.</li><li>Response code is in the range 300..399, Camel regards it as a
redirection response and will throw a <code>HttpOperationFailedException</code>
with the information.</li><li><p>Response code is 400+, Camel regards it as an
external server failure and will throw a <code>HttpOperationFailedEx
ception</code> with the information.</p><div
class="confluence-information-macro confluence-information-macro-tip"><p
class="title">throwExceptionOnFailure</p><span class="aui-icon aui-icon-small
aui-iconfont-approve confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>The option,
<code>throwExceptionOnFailure</code>, can be set to <code>false</code> to
prevent the <code>HttpOperationFailedException</code> from being thrown for
failed response codes. This allows you to get any response from the remote
server.<br clear="none"> There is a sample below demonstrating
this.</p></div></div></li></ul><h3
id="BookComponentAppendix-HttpOperationFailedException">HttpOperationFailedException</h3><p>This
exception contains the following information:</p><ul class="alternate"><li>The
HTTP status code</li><li>The HTTP status line (text of the status
code)</li><li>Redirect location, if server returned a redirect</li><li>Response
body as a <code>java.lang.Strin
g</code>, if server provided a body as response</li></ul><h3
id="BookComponentAppendix-CallingusingGETorPOST">Calling using GET or
POST</h3><p>The following algorithm is used to determine if either
<code>GET</code> or <code>POST</code> HTTP method should be used:<br
clear="none"> 1. Use method provided in header.<br clear="none"> 2.
<code>GET</code> if query string is provided in header.<br clear="none"> 3.
<code>GET</code> if endpoint is configured with a query string.<br
clear="none"> 4. <code>POST</code> if there is data to send (body is not
null).<br clear="none"> 5. <code>GET</code> otherwise.</p><h3
id="BookComponentAppendix-HowtogetaccesstoHttpServletRequestandHttpServletResponse">How
to get access to HttpServletRequest and HttpServletResponse</h3><p>You can get
access to these two using the Camel type converter system using</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
+</div></div></td></tr></tbody></table></div><h3
id="BookComponentAppendix-HttpEndpointOptions">HttpEndpoint Options</h3><div
class="confluenceTableSmall"><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>throwExceptionOnFailure</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Option to disable throwing the
<code>HttpOperationFailedException</code> in case of failed responses from the
remote server. This allows you to get all responses regardless of the HTTP
status code.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>bridgeEndpoint</code></p></td><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>If the option is true , HttpProducer will
ignore the Exchange.HTTP_URI header, and use the endpoint's URI for request.
You may also set the * throwExceptionOnFailure* to be false to let the
HttpProducer send all the fault response back. <br clear="none"
class="atl-forced-newline"> <strong>Camel 2.3:</strong> If the option is true,
HttpProducer and CamelServlet will skip the gzip processing if the
content-encoding is "gzip".</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>disableStreamCache</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>DefaultHttpBinding will copy the request
input stream into a stream cache and put it into message body if this option is
false to support read it twice, otherwise DefaultHttpBinding will set the
request input stream direct in
to the message body.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpBindingRef</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Deprecated and will be removed in
Camel 3.0:</strong> Reference to a
<code>org.apache.camel.component.http.HttpBinding</code> in the <a shape="rect"
href="registry.html">Registry</a>. Use the <code>httpBinding</code> option
instead.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpBinding</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.3:</strong> Reference to a
<code>org.apache.camel.component.http.HttpBinding</code> in the <a shape="rect"
href="registry.html">Registry</a>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClientConfigurerRef</code></p><
/td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Deprecated and will be removed in Camel
3.0:</strong> Reference to a
<code>org.apache.camel.component.http.HttpClientConfigurer</code> in the <a
shape="rect" href="registry.html">Registry</a>. Use the
<code>httpClientConfigurer</code> option instead.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClientConfigurer</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.3:</strong>
Reference to a
<code>org.apache.camel.component.http.HttpClientConfigurer</code> in the <a
shape="rect" href="registry.html">Registry</a>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClient.XXX</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="
1" rowspan="1" class="confluenceTd"><p>Setting options on the <a shape="rect"
class="external-link"
href="http://hc.apache.org/httpclient-3.x/apidocs/org/apache/commons/httpclient/params/HttpClientParams.html">HttpClientParams</a>.
For instance <code>httpClient.soTimeout=5000</code> will set the
<code>SO_TIMEOUT</code> to 5 seconds.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>clientConnectionManager</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.http.conn.ClientConnectionManager</code>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>transferException</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.6:</strong> If enabled and
an <a shape="rect" href="exchange.html">Exchange</a> failed p
rocessing on the consumer side, and if the caused <code>Exception</code> was
send back serialized in the response as a
<code>application/x-java-serialized-object</code> content type (for example
using <a shape="rect" href="jetty.html">Jetty</a> or <a shape="rect"
href="servlet.html">SERVLET</a> Camel components). On the producer side the
exception will be deserialized and thrown as is, instead of the
<code>HttpOperationFailedException</code>. The caused exception is required to
be serialized.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>headerFilterStrategy</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
Reference to a instance of
<code>org.apache.camel.spi.HeaderFilterStrategy</code> in the <a shape="rect"
href="registry.html">Registry</a>. It will be used to apply the custom
headerFilterStrategy on the new create HttpEndpoint.<
/p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>urlRewrite</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
<strong>Producer only</strong> Refers to a custom
<code>org.apache.camel.component.http.UrlRewrite</code> which allows you to
rewrite urls when you bridge/proxy endpoints. See more details at <a
shape="rect" href="urlrewrite.html">UrlRewrite</a> and <a shape="rect"
href="how-to-use-camel-as-a-http-proxy-between-a-client-and-server.html">How to
use Camel as a HTTP proxy between a client and server</a>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><code>eagerCheckContentAvailable</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><code>false</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><strong>Camel
2.15.3/2.16:</strong> <strong>Consumer only</strong>  Whether to eager
check wheth
er the HTTP requests has content if the content-length header is 0 or not
present.  This can be turned on in case HTTP clients do not send streamed
data.</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><code>copyHeaders</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>true</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>Camel 2.16:</strong>  If this option is true
then IN exchange headers will be copied to OUT exchange headers according to
copy strategy. Setting this to false, allows to only include the headers from
the HTTP response (not propagating IN headers).</td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><code>okStatusCodeRange</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><code>200-299</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.16:</strong> The
status codes which is considered a success response. The values are inclusive.
The range must be defined as from-
to with the dash included.</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><code>ignoreResponseBody</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><code>false</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><strong>Camel 2.16:</strong> If this option is
true, The http producer won't read response body and cache the input
stream.</td></tr></tbody></table></div></div><h3
id="BookComponentAppendix-AuthenticationandProxy">Authentication and
Proxy</h3><p>The following authentication options can also be set on the
HttpEndpoint:</p><div class="confluenceTableSmall"><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>authMethod</code></p></td><td
colspan="1" rowspan
="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Authentication method, either as
<code>Basic</code>, <code>Digest</code> or
<code>NTLM</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>authMethodPriority</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Priority of authentication methods. Is a
list separated with comma. For example: <code>Basic,Digest</code> to exclude
<code>NTLM</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>authUsername</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Username for
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>authPassword</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><co
de>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Password for authentication</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>authDomain</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Domain for NTML
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>authHost</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Optional host for NTML
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyHost</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The proxy host name</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyPort</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The proxy port number</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthMethod</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Authentication method for proxy, either as
<code>Basic</code>, <code>Digest</code> or
<code>NTLM</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthUsername</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Username for proxy
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthPassword</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Password
for proxy authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthDomain</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Domain for proxy NTML
authentication</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyAuthHost</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Optional host for proxy NTML
authentication</p></td></tr></tbody></table></div></div><p>When using
authentication you <strong>must</strong> provide the choice of method for the
<code>authMethod</code> or <code>authProxyMethod</code> options.<br
clear="none"> You can configure the proxy and authentication details on either
the <code>HttpComponent</code> or the <code>HttpEndoint</code>. Values provided
on the <code>HttpEndpoint</code> will take precedence over <c
ode>HttpComponent</code>. Its most likely best to configure this on the
<code>HttpComponent</code> which allows you to do this once.</p><p>The <a
shape="rect" href="http.html">HTTP</a> component uses convention over
configuration which means that if you have not explicit set a
<code>authMethodPriority</code> then it will fallback and use the select(ed)
<code>authMethod</code> as priority as well. So if you use
<code>authMethod.Basic</code> then the <code>auhtMethodPriority</code> will be
<code>Basic</code> only.</p><p>Note: camel-http is based on HttpClient v3.x and
as such has only <a shape="rect" class="external-link"
href="http://hc.apache.org/httpclient-3.x/authentication.html#NTLM">limited
support</a> for what is known as NTLMv1, the early version of the NTLM
protocol. It does not support NTLMv2 at all. Camel-http4 has support for
NTLMv2.</p><h3 id="BookComponentAppendix-HttpComponentOptions">HttpComponent
Options</h3><div class="confluenceTableSmall"><div class="table-wrap"><t
able class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>httpBinding</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.camel.component.http.HttpBinding</code>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClientConfigurer</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.camel.component.http.HttpClientConfigurer</code>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpConnectionManager</code></p></td><td colspan=
"1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.commons.httpclient.HttpConnectionManager</code>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpConfiguration</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>To use a custom
<code>org.apache.camel.component.http.HttpConfiguration</code></p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><code>allowJavaSerializedObject</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><code>false</code></td><td colspan="1"
rowspan="1" class="confluenceTd"><strong>Camel
2.16.1/2.15.5:</strong> Whether to allow java serialization when a request
uses context-type=application/x-java-serialized-object. This is by default
turned off. If you enable this then be aware that Java will deserialize the
incom
ing data from the request to Java and that can be a potential security
risk.</td></tr></tbody></table></div></div><p><code>HttpConfiguration</code>
contains all the options listed in the table above under the section
<em>HttpConfiguration - Setting Authentication and Proxy</em>.</p><h3
id="BookComponentAppendix-MessageHeaders.6">Message Headers</h3><div
class="confluenceTableSmall"><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>Exchange.HTTP_URI</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>URI to call. Will override
existing URI set directly on the endpoint.</p></td></tr><tr><td colspan="1"
rowspan="
1" class="confluenceTd"><p><code>Exchange.HTTP_METHOD</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>HTTP Method / Verb to use
(GET/POST/PUT/DELETE/HEAD/OPTIONS/TRACE)</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>Exchange.HTTP_PATH</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Request URI's path, the header
will be used to build the request URI with the HTTP_URI. <strong>Camel
2.3.0:</strong> If the path is start with "/", http producer will try to find
the relative path based on the Exchange.HTTP_BASE_URI header or the
exchange.getFromEndpoint().getEndpointUri();</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_QUERY</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
c
olspan="1" rowspan="1" class="confluenceTd"><p>URI parameters. Will override
existing URI parameters set directly on the endpoint.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_RESPONSE_CODE</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>int</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP response code from the
external server. Is 200 for OK.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_CHARACTER_ENCODING</code></p></td><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>String</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Character encoding.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>Exchange.CONTENT_TYPE</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP content type. Is set
on bot
h the IN and OUT message to provide a content type, such as
<code>text/html</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.CONTENT_ENCODING</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>The HTTP content encoding. Is
set on both the IN and OUT message to provide a content encoding, such as
<code>gzip</code>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_SERVLET_REQUEST</code></p></td><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>HttpServletRequest</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The <code>HttpServletRequest</code>
object.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_SERVLET_RESPONSE</code></p></td><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>HttpServletResponse</code></p></td><td
colspan="1" rows
pan="1" class="confluenceTd"><p>The <code>HttpServletResponse</code>
object.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>Exchange.HTTP_PROTOCOL_VERSION</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>String</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5:</strong> You
can set the http protocol version with this header, eg. "HTTP/1.0". If you
didn't specify the header, HttpProducer will use the default value
"HTTP/1.1"</p></td></tr></tbody></table></div></div><p>The header name above
are constants. For the spring DSL you have to use the value of the constant
instead of the name.</p><h3 id="BookComponentAppendix-MessageBody.1">Message
Body</h3><p>Camel will store the HTTP response from the external server on the
OUT body. All headers from the IN message will be copied to the OUT message, so
headers are preserved during routing. Additionally Camel will add the HTTP
response headers as well to t
he OUT message headers.</p><h3
id="BookComponentAppendix-Responsecode">Response code</h3><p>Camel will handle
according to the HTTP response code:</p><ul class="alternate"><li>Response code
is in the range 100..299, Camel regards it as a success
response.</li><li>Response code is in the range 300..399, Camel regards it as a
redirection response and will throw a <code>HttpOperationFailedException</code>
with the information.</li><li><p>Response code is 400+, Camel regards it as an
external server failure and will throw a
<code>HttpOperationFailedException</code> with the information.</p><div
class="confluence-information-macro confluence-information-macro-tip"><p
class="title">throwExceptionOnFailure</p><span class="aui-icon aui-icon-small
aui-iconfont-approve confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>The option,
<code>throwExceptionOnFailure</code>, can be set to <code>false</code> to
prevent the <code>HttpOperationFailedException</c
ode> from being thrown for failed response codes. This allows you to get any
response from the remote server.<br clear="none"> There is a sample below
demonstrating this.</p></div></div></li></ul><h3
id="BookComponentAppendix-HttpOperationFailedException">HttpOperationFailedException</h3><p>This
exception contains the following information:</p><ul class="alternate"><li>The
HTTP status code</li><li>The HTTP status line (text of the status
code)</li><li>Redirect location, if server returned a redirect</li><li>Response
body as a <code>java.lang.String</code>, if server provided a body as
response</li></ul><h3 id="BookComponentAppendix-CallingusingGETorPOST">Calling
using GET or POST</h3><p>The following algorithm is used to determine if either
<code>GET</code> or <code>POST</code> HTTP method should be used:<br
clear="none"> 1. Use method provided in header.<br clear="none"> 2.
<code>GET</code> if query string is provided in header.<br clear="none"> 3.
<code>GET</code> if endpoint is c
onfigured with a query string.<br clear="none"> 4. <code>POST</code> if there
is data to send (body is not null).<br clear="none"> 5. <code>GET</code>
otherwise.</p><h3
id="BookComponentAppendix-HowtogetaccesstoHttpServletRequestandHttpServletResponse">How
to get access to HttpServletRequest and HttpServletResponse</h3><p>You can get
access to these two using the Camel type converter system using</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[HttpServletRequest request =
exchange.getIn().getBody(HttpServletRequest.class);
HttpServletRequest response =
exchange.getIn().getBody(HttpServletResponse.class);
]]></script>
@@ -5189,7 +5189,7 @@ from("direct:hello")
</div></div><h3 id="BookComponentAppendix-URIformat.33">URI format</h3><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[jetty:http://hostname[:port][/resourceUri][?options]
]]></script>
-</div></div><p>You can append query options to the URI in the following
format, <code>?option=value&option=value&...</code></p><h3
id="BookComponentAppendix-Options.26">Options</h3><div
class="confluenceTableSmall"><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>sessionSupport</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Specifies whether to enable the
session manager on the server side of Jetty.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>httpClient.XXX</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colsp
an="1" rowspan="1" class="confluenceTd"><p>Configuration of Jetty's <a
shape="rect" class="external-link"
href="http://wiki.eclipse.org/Jetty/Tutorial/HttpClient"
rel="nofollow">HttpClient</a>. For example, setting
<code>httpClient.idleTimeout=30000</code> sets the idle timeout to 30 seconds.
And <code>httpClient.timeout=30000</code> sets the request timeout to 30
seconds, in case you want to timeout sooner if you have long running
request/response calls.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClient</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>To use a shared
<code>org.eclipse.jetty.client.HttpClient</code> for all producers created by
this endpoint. This option should only be used in special
circumstances.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClientMinThreads</code></p></td><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.11:</strong> <strong>Producer
only</strong>: To set a value for minimum number of threads in
<code>HttpClient</code> thread pool. This setting override any setting
configured on component level. Notice that both a min and max size must be
configured. If not set it default to min 8 threads used in Jettys thread
pool.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClientMaxThreads</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
<strong>Producer only</strong>: To set a value for maximum number of threads in
<code>HttpClient</code> thread pool. This setting override any setting
configured on component level. Notice that both a min and max size must be
configured. If not set it default to max 16 threads used in Jetty
s thread pool.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpBindingRef</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Reference to an
<code>org.apache.camel.component.http.HttpBinding</code> in the <a shape="rect"
href="registry.html">Registry</a>. <code>HttpBinding</code> can be used to
customize how a response should be written for the
consumer.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>jettyHttpBindingRef</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.6.0+:</strong>
Reference to an <code>org.apache.camel.component.jetty.JettyHttpBinding</code>
in the <a shape="rect" href="registry.html">Registry</a>.
<code>JettyHttpBinding</code> can be used to customize how a response should be
written for the producer.</
p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>matchOnUriPrefix</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Whether or not the
<code>CamelServlet</code> should try to find a target consumer by matching the
URI prefix if no exact match is found. See here <a shape="rect"
href="how-do-i-let-jetty-match-wildcards.html">How do I let Jetty match
wildcards</a>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>handlers</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Specifies a comma-delimited set of
<code>org.mortbay.jetty.Handler</code> instances in your <a shape="rect"
href="registry.html">Registry</a> (such as your Spring
<code>ApplicationContext</code>). These handlers are added to the Jetty servlet
context (for example, to add security).
<strong>Important:</strong> You can not use different handlers with different
Jetty endpoints using the same port number. The handlers is associated to the
port number. If you need different handlers, then use different port
numbers.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>chunked</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.2:</strong> If this option
is false Jetty servlet will disable the HTTP streaming and set the
content-length header on the response</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>enableJmx</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.3:</strong> If
this option is true, Jetty JMX support will be enabled for this endpoint. See
<a shape="rect" href="#BookComponentAppendix-J
ettyJMXsupport">Jetty JMX support</a> for more details.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>disableStreamCache</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.3:</strong> Determines
whether or not the raw input stream from Jetty is cached or not (Camel will
read the stream into a in memory/overflow to file, <a shape="rect"
href="stream-caching.html">Stream caching</a>) cache. By default Camel will
cache the Jetty input stream to support reading it multiple times to ensure it
Camel can retrieve all data from the stream. However you can set this option to
<code>true</code> when you for example need to access the raw stream, such as
streaming it directly to a file or other persistent store. DefaultHttpBinding
will copy the request input stream into a stream cache and put it into message
body if this option is <code>false</code> to supp
ort reading the stream multiple times. If you use <a shape="rect"
href="jetty.html">Jetty</a> to bridge/proxy an endpoint then consider enabling
this option to improve performance, in case you do not need to read the message
payload multiple times.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>throwExceptionOnFailure</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Option to disable throwing the
<code>HttpOperationFailedException</code> in case of failed responses from the
remote server. This allows you to get all responses regardles of the HTTP
status code.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>transferException</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.6:</strong> If enabled and
an <a shape="rect" href="
exchange.html">Exchange</a> failed processing on the consumer side, and if the
caused Exception was send back serialized in the response as a
<code>application/x-java-serialized-object</code> content type. On the producer
side the exception will be deserialized and thrown as is, instead of the
<code>HttpOperationFailedException</code>. The caused exception is required to
be serialized.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>bridgeEndpoint</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.1:</strong> If the option
is true , HttpProducer will ignore the Exchange.HTTP_URI header, and use the
endpoint's URI for request. You may also set the
<strong>throwExceptionOnFailure</strong> to be false to let the HttpProducer
send all the fault response back. <br clear="none" class="atl-forced-newline">
<strong>Camel 2.3:</strong> If the option is tru
e, HttpProducer and CamelServlet will skip the gzip processing if the
content-encoding is "gzip". Also consider setting
<strong>disableStreamCache</strong> to true to optimize when
bridging.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>enableMultipartFilter</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5:</strong>
Whether Jetty <code>org.eclipse.jetty.servlets.MultiPartFilter</code> is
enabled or not. You should set this value to <code>false</code> when bridging
endpoints, to ensure multipart requests is proxied/bridged as
well.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>multipartFilterRef</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.6:</strong> Allows using a
custom multipart filter. Note: sett
ing <code>multipartFilterRef</code> forces the value of
<code>enableMultipartFilter</code> to <code>true</code>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>filtersRef</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.9:</strong> Allows using a
custom filters which is putted into a list and can be find in the <a
shape="rect" href="registry.html">Registry</a></p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>continuationTimeout</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.6:</strong>
Allows to set a timeout in millis when using <a shape="rect"
href="jetty.html">Jetty</a> as consumer (server). By default Jetty uses 30000.
You can use a value of <code><= 0</code> to never expire. If a timeout
occurs then
the request will be expired and Jetty will return back a http error 503 to the
client. This option is only in use when using <a shape="rect"
href="jetty.html">Jetty</a> with the <a shape="rect"
href="asynchronous-routing-engine.html">Asynchronous Routing
Engine</a>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>useContinuation</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.6:</strong> Whether or not
to use <a shape="rect" class="external-link"
href="http://wiki.eclipse.org/Jetty/Feature/Continuations" rel="nofollow">Jetty
continuations</a> for the Jetty Server.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>sslContextParametersRef</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.8:</strong>
Reference to a
<code>org.apache.camel.util.jsse.SSLContextParameters</code> in the <a
shape="rect" href="registry.html">Registry</a>.  This reference overrides
any configured SSLContextParameters at the component level.  See <a
shape="rect"
href="#BookComponentAppendix-UsingtheJSSEConfigurationUtility">Using the JSSE
Configuration Utility</a>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>traceEnabled</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Specifies whether to enable HTTP TRACE for
this Jetty consumer. By default TRACE is turned off.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>headerFilterStrategy</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
Reference to a instance of <code>org.apache.camel.spi.H
eaderFilterStrategy</code> in the <a shape="rect"
href="registry.html">Registry</a>. It will be used to apply the custom
headerFilterStrategy on the new create HttpJettyEndpoint.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpMethodRestrict</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
<strong>Consumer only</strong>: Used to only allow consuming if the HttpMethod
matches, such as GET/POST/PUT etc. <span>From </span><strong>Camel
2.15</strong><span> onwards multiple methods can be specified separated by
comma.</span></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>urlRewrite</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
<strong>Producer only</strong> Refers to a custom <code
>org.apache.camel.component.http.UrlRewrite</code> which allows you to rewrite
>urls when you bridge/proxy endpoints. See more details at <a shape="rect"
>href="urlrewrite.html">UrlRewrite</a> and <a shape="rect"
>href="how-to-use-camel-as-a-http-proxy-between-a-client-and-server.html">How
>to use Camel as a HTTP proxy between a client and
>server</a>.</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><p><code>responseBufferSize</code></p></td><td
>colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
>colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.12:</strong>
>To use a custom buffer size on the
><code>javax.servlet.ServletResponse</code>.</p></td></tr><tr><td colspan="1"
>rowspan="1" class="confluenceTd"><p><code>proxyHost</code></p></td><td
>colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
>colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
><strong>Producer only</strong> The http p
roxy Host url which will be used by Jetty client.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyPort</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11:</strong>
<strong>Producer only</strong> The http proxy port which will be used by Jetty
client.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>sendServerVersion</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>true</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.13:</strong> if the option
is true, jetty will send the server header with the jetty version information
to the client which sends the request. <strong>NOTE</strong> please make sure
there is no any other camel-jetty endpoint is share the same port, otherwise
this option may not work as expected.</p></td></tr><tr><td colspan="1"
rowspan="1" clas
s="confluenceTd"><p><code>sendDateHeader</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.14:</strong> if the option
is true, jetty server will send the date header to the client which sends the
request. <strong>NOTE</strong> please make sure there is no any other
camel-jetty endpoint is share the same port, otherwise this option may not work
as expected.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code><span>enableCORS</span></code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.15:</strong> if
the option is true, Jetty server will setup the <span style="line-height:
1.4285715;">CrossOriginFilter which supports the <span><a shape="rect"
class="external-link"
href="https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS"
rel="nof
ollow">CORS</a> out of box.</span></span></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><code>okStatusCodeRange</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><code>200-299</code></td><td
colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.16:</strong><span>
<strong>Producer only</strong> The status codes which is considered a success
response. The values are inclusive. The range must be defined as from-to with
the dash included.</span></td></tr></tbody></table></div></div><h3
id="BookComponentAppendix-MessageHeaders.9">Message Headers</h3><p>Camel uses
the same message headers as the <a shape="rect" href="http.html">HTTP</a>
component.<br clear="none"> From Camel 2.2, it also uses
(Exchange.HTTP_CHUNKED,CamelHttpChunked) header to turn on or turn off the
chuched encoding on the camel-jetty consumer.</p><p>Camel also populates
<strong>all</strong> request.parameter and request.headers. For example, given
a client request with the URL, <code><a s
hape="rect" class="external-link" href="http://myserver/myserver?orderid=123"
rel="nofollow">http://myserver/myserver?orderid=123</a></code>, the exchange
will contain a header named <code>orderid</code> with the value
123.</p><p>Starting with Camel 2.2.0, you can get the request.parameter from
the message header not only from Get Method, but also other HTTP method.</p><h3
id="BookComponentAppendix-Usage.3">Usage</h3><p>The Jetty component supports
both consumer and producer endpoints. Another option for producing to other
HTTP endpoints, is to use the <a shape="rect" href="http.html">HTTP
Component</a></p><h3 id="BookComponentAppendix-ComponentOptions">Component
Options</h3><p>The <code>JettyHttpComponent</code> provides the following
options:</p><div class="confluenceTableSmall"><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Name</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Default Value</p></th>
<th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>enableJmx</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>false</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.3:</strong> If
this option is true, Jetty JMX support will be enabled for this endpoint. See
<a shape="rect" href="#BookComponentAppendix-JettyJMXsupport">Jetty JMX
support</a> for more details.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>sslKeyPassword</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Consumer only</strong>: The
password for the keystore when using SSL.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>sslPassword</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></t
d><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Consumer
only</strong>: The password when using SSL.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>sslKeystore</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Consumer only</strong>:
The path to the keystore.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>minThreads</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.5</strong> <strong>Consumer
only</strong>: To set a value for minimum number of threads in server thread
pool. Notice that both a min and max size must be
configured.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>maxThreads</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td
><td colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel
>2.5</strong> <strong>Consumer only</strong>: To set a value for maximum
>number of threads in server thread pool. Notice that both a min and max size
>must be configured.</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><p><code>threadPool</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p><strong>Camel 2.5</strong>
><strong>Consumer only</strong>: To use a custom thread pool for the server.
>This option should only be used in special
>circumstances.</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><p><code>sslSocketConnectors</code></p></td><td
>colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
>colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.3</strong>
><strong>Consumer only:</strong> A map which contains per port number specific
>SSL connectors. See sect
ion <em>SSL support</em> for more details.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>socketConnectors</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5</strong>
<strong>Consumer only:</strong> A map which contains per port number specific
HTTP connectors. Uses the same principle as <code>sslSocketConnectors</code>
and therefore see section <em>SSL support</em> for more
details.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>sslSocketConnectorProperties</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.5</strong>
<strong>Consumer only</strong>. A map which contains general SSL connector
properties. See section <em>SSL support</em> for more
details.</p></td></tr><tr><td colspan="1" rowspan="1" class="conf
luenceTd"><p><code>socketConnectorProperties</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.5</strong> <strong>Consumer
only</strong>. A map which contains general HTTP connector properties. Uses the
same principle as <code>sslSocketConnectorProperties</code> and therefore see
section <em>SSL support</em> for more details.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>httpClient</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated:</strong>
<strong>Producer only</strong>: To use a custom <code>HttpClient</code> with
the jetty producer. This option is removed from Camel 2.11 onwards, instead you
can set the option on the endpoint instead.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>httpClientMinThreads</
code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Producer only</strong>: To set a value for
minimum number of threads in <code>HttpClient</code> thread pool. Notice that
both a min and max size must be configured.</p></td></tr><tr><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>httpClientMaxThreads</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Producer only</strong>:
To set a value for maximum number of threads in <code>HttpClient</code> thread
pool. Notice that both a min and max size must be
configured.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>httpClientThreadPool</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Deprecated:</stro
ng> <strong>Producer only</strong>: To use a custom thread pool for the
client. This option is removed from Camel 2.11 onwards.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>sslContextParameters</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.8:</strong> To
configure a custom SSL/TLS configuration options at the component level. 
See  <a shape="rect"
href="#BookComponentAppendix-UsingtheJSSEConfigurationUtility">Using the JSSE
Configuration Utility</a> for more details.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>requestBufferSize</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><strong>Camel 2.11.2:</strong>
Allows to configure a custom value of the request buffer size on the Jetty
connectors.</p></td></tr><
tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>requestHeaderSize</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11.2:</strong> Allows to
configure a custom value of the request header size on the Jetty
connectors.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>responseBufferSize</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11.2:</strong> Allows to
configure a custom value of the response buffer size on the Jetty
connectors.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>responseHeaderSize</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.11.2:</strong> Allows to
configure a custo
m value of the response header size on the Jetty
connectors.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyHost</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.12.2/2.11.3</strong> To use
a http proxy.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>proxyPort</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.12.2/2.11.3:</strong> To
use a http proxy.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><code>errorHandler</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><code>null</code></td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>Camel 2.15</strong>: This option is used to set
the ErrorHandler that Jetty server
uses.</td></tr></tbody></table></div></div><h3 id="B
ookComponentAppendix-ProducerExample">Producer Example</h3><p>The following is
a basic example of how to send an HTTP request to an existing HTTP
endpoint.</p><p>in Java DSL</p><div class="code panel pdl" style="border-width:
1px;"><div class="codeContent panelContent pdl">
[... 5 lines stripped ...]