Modified: websites/production/camel/content/infinispan.html
==============================================================================
--- websites/production/camel/content/infinispan.html (original)
+++ websites/production/camel/content/infinispan.html Thu Mar 10 10:21:12 2016
@@ -96,7 +96,7 @@
</div></div><h3 id="Infinispan-URIformat">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[infinispan://hostName?[options]
]]></script>
-</div></div><h3 id="Infinispan-URIOptions">URI Options</h3><p>The producer
allows sending messages to a local infinispan cache configured in the registry,
or to a remote cache using the HotRod protocol.<br clear="none"> The consumer
allows listening for events from local infinispan cache accessible from the
registry.</p><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>Type</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Context</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>cacheContainer</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>CacheContainer</p></td><td colspan="1"
rowspan="1"
class="confluenceTd"><p>Shared</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Reference to a
<code>org.infinispan.manager.CacheContainer</code> in the <a shape="rect"
href="registry.html">Registry</a>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>cacheName</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Shared</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The cache name to use. If not specified, default cache
is used.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>command</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>PUT</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The operation to
perform. Currently supports the following values: PUT, GET, REMOVE,
CLEAR.</p><p><strong>From Camel 2.16:</strong> <span>PUT ALL, PUT IF ABSENT,
<span>REPLACE, SIZE.</span></span></p><p><span><span><strong>From Camel 2.17:
</strong>PUT ASYNC, <span>PUT ALL ASYNC, <span>PUT IF ABSENT ASYNC, CONTAINS
KEY, CONTAINS VALUE, REMOVE ASYNC, REPLACE ASYNC, CLEAR ASYNC,
QUERY</span></span></span></span></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>eventTypes</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Set<String></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The event types to register. By default will listen for
all event types. Possible values defined in
org.infinispan.notifications.cachelistener.event.Event.Type</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>sync</
p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>true</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Boolean</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>By default the consumer will receive notifications
synchronously, by the same thread that process the cache
operation.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">queryBuilder</td><td colspan="1" rowspan="1"
class="confluenceTd">null</td><td colspan="1" rowspan="1"
class="confluenceTd">InfinispanQueryBuilder</td><td colspan="1" rowspan="1"
class="confluenceTd">Shared</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong><strong>From Camel 2.17:</strong></strong> the
QueryBuilder to be used by QUERY command if <span style="color:
rgb(0,0,0);">CamelInfinispanQueryBuilder header is not
set</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">customListener</td><td colspan=
"1" rowspan="1" class="confluenceTd">null</td><td colspan="1" rowspan="1"
class="confluenceTd">InfinispanCustomListener</td><td colspan="1" rowspan="1"
class="confluenceTd">Consumer</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong><strong>From Camel 2.17:</strong></strong><span> a
custom event listener</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">clustered</td><td colspan="1" rowspan="1"
class="confluenceTd">false</td><td colspan="1" rowspan="1"
class="confluenceTd">Boolean</td><td colspan="1" rowspan="1"
class="confluenceTd">Consumer</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong><strong>From Camel 2.17:</strong></strong><span>
if ture the listener will be installed for entiere
cluster</span></td></tr></tbody></table></div><h3
id="Infinispan-MessageHeaders">Message Headers</h3><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>Type</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Context</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>CamelInfinispanCacheName</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Shared</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The cache participating in the operation or
event.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanOperation</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>PUT</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowsp
an="1" class="confluenceTd"><p>The operation to perform:
CamelInfinispanOperationPut, CamelInfinispanOperationGet,
CamelInfinispanOperationRemove,
CamelInfinispanOperationClear.</p><p><strong>From Camel 2.16:</strong>
<span>CamelInfinispanOperationPutAll, CamelInfinispanOperationPutIfAbsent,
<span>CamelInfinispanOperationReplace, CamelInfinispanOperationSize.
</span></span></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanMap</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Map</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>A Map to use in case of
<span>CamelInfinispanOperationPutAll operation</span></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>CamelInfinispanKey</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colsp
an="1" rowspan="1" class="confluenceTd"><p>Object</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Shared</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The key to perform the operation to or the key
generating the event.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanValue</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Object</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The value to use for the
operation.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanOperationResult</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Object</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1" c
lass="confluenceTd"><p>The result of the operation.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanEventType</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The type of the received event. Possible values defined
here
org.infinispan.notifications.cachelistener.event.Event.Type</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanIsPre</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Boolean</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Infinispan fires two events for each operation: one
before and one after the operation.</p>
</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanLifespanTime</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>long</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The Lifespan time of a value inside the cache. Negative
values are interpreted as infinity.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>CamelInfinispanTimeUnit</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The Time Unit of an entry Lifespan
Time.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanMaxIdleTime</p></td><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>long</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><span>The maximum amount of time an entry is allowed to
be idle for before it is considered as expired.</span></p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanMaxIdleTimeUnit</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The Time Unit of an entry Max Idle
Time.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelInfinispanQueryBuilder</span></p></td><td colspan="1"
rowspan="1" class="confluenceTd">null</td><td colspan="1" rowspan="1" cla
ss="confluenceTd">InfinispanQueryBuilder</td><td colspan="1" rowspan="1"
class="confluenceTd">Producer</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>From Camel 2.17: </strong>The QueryBuilde to use
for QUERY command, if not present the command defaults to
InifinispanConfiguration's one</td></tr></tbody></table></div><h3
id="Infinispan-Example">Example</h3><p>Below is an example route that retrieves
a value from the cache for a specific key:</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
+</div></div><h3 id="Infinispan-URIOptions">URI Options</h3><p>The producer
allows sending messages to a local infinispan cache configured in the registry,
or to a remote cache using the HotRod protocol.<br clear="none"> The consumer
allows listening for events from local infinispan cache accessible from the
registry.</p><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>Type</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Context</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>cacheContainer</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>CacheContainer</p></td><td colspan="1"
rowspan="1"
class="confluenceTd"><p>Shared</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Reference to a
<code>org.infinispan.manager.CacheContainer</code> in the <a shape="rect"
href="registry.html">Registry</a>.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>cacheName</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Shared</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The cache name to use. If not specified, default cache
is used.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>command</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>PUT</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The operation to
perform. Currently supports the following values: PUT, GET, REMOVE,
CLEAR.</p><p><strong>From Camel 2.16:</strong> <span>PUT ALL, PUT IF ABSENT,
<span>REPLACE, SIZE.</span></span></p><p><span><span><strong>From Camel 2.17:
</strong>PUT ASYNC, <span>PUT ALL ASYNC, <span>PUT IF ABSENT ASYNC, CONTAINS
KEY, CONTAINS VALUE, REMOVE ASYNC, REPLACE ASYNC, CLEAR ASYNC,
QUERY</span></span></span></span></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>eventTypes</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Set<String></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The event types to register. By default will listen for
all event types. Possible values defined in
org.infinispan.notifications.cachelistener.event.Event.Type</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>sync</
p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>true</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Boolean</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>By default the consumer will receive notifications
synchronously, by the same thread that process the cache
operation.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">queryBuilder</td><td colspan="1" rowspan="1"
class="confluenceTd">null</td><td colspan="1" rowspan="1"
class="confluenceTd">InfinispanQueryBuilder</td><td colspan="1" rowspan="1"
class="confluenceTd">Shared</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong><strong>From Camel 2.17:</strong></strong> the
QueryBuilder to be used by QUERY command if <span style="color:
rgb(0,0,0);">CamelInfinispanQueryBuilder header is not
set</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">customListener</td><td colspan=
"1" rowspan="1" class="confluenceTd">null</td><td colspan="1" rowspan="1"
class="confluenceTd">InfinispanCustomListener</td><td colspan="1" rowspan="1"
class="confluenceTd">Consumer</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong><strong>From Camel 2.17:</strong></strong><span> a
custom event listener</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">clusteredListener</td><td colspan="1" rowspan="1"
class="confluenceTd">false</td><td colspan="1" rowspan="1"
class="confluenceTd">Boolean</td><td colspan="1" rowspan="1"
class="confluenceTd">Consumer</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong><strong>From Camel 2.17:</strong></strong><span>
if ture the listener will be installed for entiere
cluster</span></td></tr></tbody></table></div><h3
id="Infinispan-MessageHeaders">Message Headers</h3><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Name</p></th><th colspan="1" row
span="1" class="confluenceTh"><p>Default Value</p></th><th colspan="1"
rowspan="1" class="confluenceTh"><p>Type</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Context</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>CamelInfinispanCacheName</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Shared</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The cache participating in the operation or
event.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanOperation</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>PUT</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="
1" rowspan="1" class="confluenceTd"><p>The operation to perform:
CamelInfinispanOperationPut, CamelInfinispanOperationGet,
CamelInfinispanOperationRemove,
CamelInfinispanOperationClear.</p><p><strong>From Camel 2.16:</strong>
<span>CamelInfinispanOperationPutAll, CamelInfinispanOperationPutIfAbsent,
<span>CamelInfinispanOperationReplace, CamelInfinispanOperationSize.
</span></span></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanMap</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Map</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>A Map to use in case of
<span>CamelInfinispanOperationPutAll operation</span></p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>CamelInfinispanKey</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><
td colspan="1" rowspan="1" class="confluenceTd"><p>Object</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>Shared</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The key to perform the operation to or the
key generating the event.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanValue</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Object</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The value to use for the
operation.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanOperationResult</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Object</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowsp
an="1" class="confluenceTd"><p>The result of the
operation.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanEventType</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The type of the received event. Possible values defined
here
org.infinispan.notifications.cachelistener.event.Event.Type</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanIsPre</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Boolean</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Consumer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Infinispan fires two events for each operation: one
before and one after the operat
ion.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanLifespanTime</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>long</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The Lifespan time of a value inside the cache. Negative
values are interpreted as infinity.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>CamelInfinispanTimeUnit</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Producer</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The Time Unit of an entry Lifespan
Time.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanMaxIdleTime</p></td><td colspan="1" row
span="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>long</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><span>The maximum amount of time an entry is allowed to
be idle for before it is considered as expired.</span></p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>CamelInfinispanMaxIdleTimeUnit</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Producer</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The Time Unit of an entry Max Idle
Time.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelInfinispanQueryBuilder</span></p></td><td colspan="1"
rowspan="1" class="confluenceTd">null</td><td colspan="1" rowspan
="1" class="confluenceTd">InfinispanQueryBuilder</td><td colspan="1"
rowspan="1" class="confluenceTd">Producer</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>From Camel 2.17: </strong>The QueryBuilde to use
for QUERY command, if not present the command defaults to
InifinispanConfiguration's one</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">CamelInfinispanIgnoreReturnValues</td><td colspan="1"
rowspan="1" class="confluenceTd">null</td><td colspan="1" rowspan="1"
class="confluenceTd">Boolean</td><td colspan="1" rowspan="1"
class="confluenceTd">Producer</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>From Camel 2.17: </strong>If this header is set,
the return value for cache operation returning something is ignored by the
client application</td></tr></tbody></table></div><h3
id="Infinispan-Example">Example</h3><p>Below is an example route that retrieves
a value from the cache for a specific key:</p><div class="code panel pdl"
style="border-wid
th: 1px;"><div class="codeContent panelContent pdl">
<script class="brush: java; gutter: false; theme: Default"
type="syntaxhighlighter"><![CDATA[from("direct:start")
.setHeader(InfinispanConstants.OPERATION,
constant(InfinispanConstants.GET))
.setHeader(InfinispanConstants.KEY, constant("123"))
Modified: websites/production/camel/content/spring-web-services.html
==============================================================================
--- websites/production/camel/content/spring-web-services.html (original)
+++ websites/production/camel/content/spring-web-services.html Thu Mar 10
10:21:12 2016
@@ -96,7 +96,7 @@
</div></div><div class="confluence-information-macro
confluence-information-macro-information"><p
class="title">Dependencies</p><span class="aui-icon aui-icon-small
aui-iconfont-info confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>As of Camel 2.8 this component
ships with Spring-WS 2.0.x which (like the rest of Camel) requires Spring
3.0.x.</p><p>Earlier Camel versions shipped Spring-WS 1.5.9 which is compatible
with Spring 2.5.x and 3.0.x. In order to run earlier versions of
<code>camel-spring-ws</code> on Spring 2.5.x you need to add the
<code>spring-webmvc</code> module from Spring 2.5.x. In order to run Spring-WS
1.5.9 on Spring 3.0.x you need to exclude the OXM module from Spring 3.0.x as
this module is also included in Spring-WS 1.5.9 (see <a shape="rect"
class="external-link"
href="http://stackoverflow.com/questions/3313314/can-spring-ws-1-5-be-used-with-spring-3"
rel="nofollow">this post</a>)</p></div></div><h3 id="SpringWebService
s-URIformat">URI format</h3><p>The URI scheme for this component is as
follows</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[spring-ws:[mapping-type:]address[?options]
]]></script>
-</div></div><p>To expose a web service <strong>mapping-type</strong> needs to
be set to any of the following:</p><div class="confluenceTableSmall"><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Mapping 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>rootqname</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Offers the option to map web service
requests based on the qualified name of the root element contained in the
message.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>soapaction</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Used to map web service requests based on
the SOAP action specified in the header of the message.</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>uri</code></p></td><td
colspan="1" rowspan="1" cl
ass="confluenceTd"><p>In order to map web service requests that target a
specific URI.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>xpathresult</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Used to map web service requests based on
the evaluation of an XPath <code>expression</code> against the incoming
message. The result of the evaluation should match the XPath result specified
in the endpoint URI.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>beanname</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Allows you to reference an
<code>org.apache.camel.component.spring.ws.bean.CamelEndpointDispatcher</code>
object in order to integrate with existing (legacy) <a shape="rect"
class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/reference/html/server.html#server-endpoint-mapping"
rel="nofollow">endpoint mappings</a> like
<code>PayloadRootQNameEndpointMapping</code>,
<code>SoapActionEndpointMapping</code>,
etc</p></td></tr></tbody></table></div></div><p>As a consumer the
<strong>address</strong> should contain a value relevant to the specified
mapping-type (e.g. a SOAP action, XPath expression). As a producer the address
should be set to the URI of the web service your calling upon.</p><p>You can
append query <strong>options</strong> to the URI in the following format,
<code>?option=value&option=value&...</code></p><h3
id="SpringWebServices-Options">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>Required?</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>soapAction</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowsp
an="1" class="confluenceTd"><p>SOAP action to include inside a SOAP request
when accessing remote web services</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>wsAddressingAction</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>WS-Addressing 1.0 action header to include when
accessing web services. The <code>To</code> header is set to the
<em>address</em> of the web service as specified in the endpoint URI (default
Spring-WS behavior).</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">outputAction</td><td colspan="1" rowspan="1"
class="confluenceTd">No</td><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color: rgb(0,0,0);">Signifies the value
for the response WS-Addressing Action<span style="color:
rgb(119,183,103);"> </span>header that is provided by the
method.</span> </p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"
>faultAction</td><td colspan="1" rowspan="1" class="confluenceTd">No</td><td
>colspan="1" rowspan="1" class="confluenceTd"><p><span style="color:
>rgb(0,0,0);"><span style="line-height: 1.42857;">Signifies the value for the
>faultAction response WS-Addressing</span><span style="line-height:
>1.42857;"><span style="color: rgb(119,183,103);"> </span></span><span
>style="line-height: 1.42857;">Fault Action</span><span style="line-height:
>1.42857;"> </span><span style="line-height: 1.42857;">header that is
>provided by the method.</span></span></p></td></tr><tr><td colspan="1"
>rowspan="1" class="confluenceTd">faultTo</td><td colspan="1" rowspan="1"
>class="confluenceTd"><span>No</span></td><td colspan="1" rowspan="1"
>class="confluenceTd"><span style="color: rgb(0,0,0);">Signifies the value for
>the faultAction response WS-Addressing FaultTo header that is provided by the
>method.</span></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd">replyTo</td><td colspan="1" rowspan="1
" class="confluenceTd"><span>No</span></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color: rgb(0,0,0);">Signifies the value
for the replyTo response WS-Addressing<span style="color:
rgb(119,183,103);"> </span>ReplyTo header that is provided by the
method.</span></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>expression</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Only when <em>mapping-type</em> is
<code>xpathresult</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>XPath expression to use in the process of mapping web
service requests, should match the result specified by
<code>xpathresult</code></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>timeout</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.10:</strong> Sets the socket read
timeout (in milliseconds) while inv
oking a webservice using the producer, see <a shape="rect"
class="external-link"
href="http://docs.oracle.com/javase/6/docs/api/java/net/URLConnection.html#setReadTimeout(int)"
rel="nofollow">URLConnection.setReadTimeout()</a> and <a shape="rect"
class="external-link"
href="http://static.springsource.org/spring-ws/site/apidocs/org/springframework/ws/transport/http/CommonsHttpMessageSender.html#setReadTimeout(int)"
rel="nofollow">CommonsHttpMessageSender.setReadTimeout()</a>.  This
option works when using the built-in message sender
implementations: <em>CommonsHttpMessageSender</em> and <em>HttpUrlConnectionMessageSender</em>.
 One of these implementations will be used by default for HTTP based
services unless you customize the Spring WS configuration options supplied to
the component.  If you are using a non-standard sender, it is assumed that
you will handle your own timeout configuration.<br clear="none"
class="atl-forced-newline"> <strong>Camel 2.12:
</strong> The built-in message
sender <em>HttpComponentsMessageSender</em> is considered
<strong>instead of</strong> <em>CommonsHttpMessageSender</em> which
has been deprecated, see <a shape="rect" class="external-link"
href="http://static.springsource.org/spring-ws/site/apidocs/org/springframework/ws/transport/http/HttpComponentsMessageSender.html#setReadTimeout(int)"
rel="nofollow">HttpComponentsMessageSender.setReadTimeout()</a>.</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>No</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.10:</strong> Reference
to an <code>org.apache.camel.util.jsse.SSLContextParameters</code>
in the <a shape="rect" class="external-link"
href="http://camel.apache.org/registry.html">Registry</a>.  See <a
shape="rect" class="external-link" href="http://camel.apache.
org/http4.html#HTTP4-UsingtheJSSEConfigurationUtility">Using the JSSE
Configuration Utility</a>.  This option works when using the built-in
message sender
implementations: <em>CommonsHttpMessageSender</em> and <em>HttpUrlConnectionMessageSender</em>.
 One of these implementations will be used by default for HTTP based
services unless you customize the Spring WS configuration options supplied to
the component.  If you are using a non-standard sender, it is assumed that
you will handle your own TLS configuration.<br clear="none"
class="atl-forced-newline"> <strong>Camel 2.12:</strong> The built-in
message sender <em>HttpComponentsMessageSender</em> is considered
<strong>instead of</strong> <em>CommonsHttpMessageSender</em> which
has been deprecated.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>webServiceTemplate</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan=
"1" rowspan="1" class="confluenceTd"><p>Option to provide a custom <a
shape="rect" class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/apidocs/org/springframework/ws/client/core/WebServiceTemplate.html"
rel="nofollow">WebServiceTemplate</a>. This allows for full control over
client-side web services handling; like adding a custom interceptor or
specifying a fault resolver, message sender or message
factory.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>messageSender</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Option to provide a custom <a shape="rect"
class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/apidocs/org/springframework/ws/transport/WebServiceMessageSender.html"
rel="nofollow">WebServiceMessageSender</a>. For example to perform
authentication or use alternative transports</p></td></tr><tr><td colspan="1" ro
wspan="1" class="confluenceTd"><p><code>messageFactory</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Option to provide a custom <a shape="rect"
class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/apidocs/org/springframework/ws/WebServiceMessageFactory.html"
rel="nofollow">WebServiceMessageFactory</a>. For example when you want Apache
Axiom to handle web service messages instead of SAAJ</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>endpointMapping</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Only when <em>mapping-type</em> is
<code>rootqname</code>, <code>soapaction</code>, <code>uri</code> or
<code>xpathresult</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Reference to an instance of <code><a shape="rect"
class="external-link" href="http://org.apache.camel.component.spring.ws"
rel="nofollow">org.apache.c
amel.component.spring.ws</a>.bean.CamelEndpointMapping</code> in the
Registry/ApplicationContext. Only one bean is required in the registry to serve
all Camel/Spring-WS endpoints. This bean is auto-discovered by the <a
shape="rect" class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/apidocs/org/springframework/ws/server/MessageDispatcher.html"
rel="nofollow">MessageDispatcher</a> and used to map requests to Camel
endpoints based on characteristics specified on the endpoint (like root QName,
SOAP action, etc)</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">endpointDispatcher</td><td colspan="1" rowspan="1"
class="confluenceTd">No</td><td colspan="1" rowspan="1"
class="confluenceTd"> Spring {@link <a shape="rect" class="external-link"
href="http://org.springframework.ws"
rel="nofollow">org.springframework.ws</a>.server.endpoint.MessageEndpoint} for
dispatching messages received by Spring-WS to a Camel endpoint, to integrate
with existi
ng (legacy) endpoint mappings like PayloadRootQNameEndpointMapping,
SoapActionEndpointMapping, etc.</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>messageFilter</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.10.3</strong> Option to provide a
custom MessageFilter. For example when you want to process your headers or
attachments by your own.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">messageIdStrategy</td><td colspan="1" rowspan="1"
class="confluenceTd">No</td><td colspan="1" rowspan="1" class="confluenceTd">A
custom MessageIdStrategy to control generation of unique message
ids</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><span>webServiceEndpointUri</span></td><td colspan="1"
rowspan="1" class="confluenceTd">No</td><td colspan="1" rowspan="1"
class="confluenceTd">The default Web Service endpoint uri to use for the
producer</
td></tr></tbody></table></div></div><h4
id="SpringWebServices-Messageheaders">Message headers</h4><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>CamelSpringWebserviceEndpointUri</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>URI of the web service your accessing as a
client, overrides <em>address</em> part of the endpoint
URI</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>CamelSpringWebserviceSoapAction</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Header to specify t
he SOAP action of the message, overrides <code>soapAction</code> option if
present</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceSoapHeader</span></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><span>Source</span></td><td colspan="1"
rowspan="1" class="confluenceTd"><strong>Camel 2.11.1:</strong><span> Use this
header to specify/access the SOAP headers of the
message.</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>CamelSpringWebserviceAddressingAction</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>URI</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Use this header to specify the
WS-Addressing action of the message, overrides <code>wsAddressingAction</code>
option if present</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceAddressingFaultTo</span></p></td><td cols
pan="1" rowspan="1" class="confluenceTd">URI</td><td colspan="1" rowspan="1"
class="confluenceTd"><span>Use this header to specify the </span> <span
style="color: rgb(0,0,0);">WS-Addressing FaultTo <span>, overrides faultTo
option if present</span></span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceAddressingReplyTo</span></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><span>URI</span></td><td
colspan="1" rowspan="1" class="confluenceTd"><span>Use this header to specify
the </span><span> </span><span style="color: rgb(0,0,0);">WS-Addressing
ReplyTo , overrides replyTo option if present</span></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceAddressingOutputAction</span></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><span>URI</span></td><td
colspan="1" rowspan="1" class="confluenceTd"><span style="color: rgb(0,
0,0);"><span>Use this header to specify the</span> WS-Addressing Action<span
style="color: rgb(0,0,0);"> , overrides outputAction option if
present</span></span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceAddressingFaultAction</span></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><span>URI</span></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><span style="color:
rgb(0,0,0);">Use this header to specify the</span><span style="color:
rgb(0,0,0);"> WS-Addressing <span style="color: rgb(0,0,0);">Fault
Action</span></span><span style="color: rgb(0,0,0);"> , overrides faultAction
option if present</span></p></td></tr></tbody></table></div></div><h2
id="SpringWebServices-Accessingwebservices">Accessing web services</h2><p>To
call a web service at <code><a shape="rect" class="external-link"
href="http://foo.com/bar" rel="nofollow">http://foo.com/bar</a></code> simply
define a route:</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
+</div></div><p>To expose a web service <strong>mapping-type</strong> needs to
be set to any of the following:</p><div class="confluenceTableSmall"><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Mapping 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>rootqname</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Offers the option to map web service
requests based on the qualified name of the root element contained in the
message.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>soapaction</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Used to map web service requests based on
the SOAP action specified in the header of the message.</p></td></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p><code>uri</code></p></td><td
colspan="1" rowspan="1" cl
ass="confluenceTd"><p>In order to map web service requests that target a
specific URI.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>xpathresult</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Used to map web service requests based on
the evaluation of an XPath <code>expression</code> against the incoming
message. The result of the evaluation should match the XPath result specified
in the endpoint URI.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>beanname</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Allows you to reference an
<code>org.apache.camel.component.spring.ws.bean.CamelEndpointDispatcher</code>
object in order to integrate with existing (legacy) <a shape="rect"
class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/reference/html/server.html#server-endpoint-mapping"
rel="nofollow">endpoint mappings</a> like
<code>PayloadRootQNameEndpointMapping</code>,
<code>SoapActionEndpointMapping</code>,
etc</p></td></tr></tbody></table></div></div><p>As a consumer the
<strong>address</strong> should contain a value relevant to the specified
mapping-type (e.g. a SOAP action, XPath expression). As a producer the address
should be set to the URI of the web service your calling upon.</p><p>You can
append query <strong>options</strong> to the URI in the following format,
<code>?option=value&option=value&...</code></p><h3
id="SpringWebServices-Options">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>Required?</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>soapAction</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowsp
an="1" class="confluenceTd"><p>SOAP action to include inside a SOAP request
when accessing remote web services</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>wsAddressingAction</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>WS-Addressing 1.0 action header to include when
accessing web services. The <code>To</code> header is set to the
<em>address</em> of the web service as specified in the endpoint URI (default
Spring-WS behavior).</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">outputAction</td><td colspan="1" rowspan="1"
class="confluenceTd">No</td><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color: rgb(0,0,0);">Signifies the value
for the response WS-Addressing Action<span style="color:
rgb(119,183,103);"> </span>header that is provided by the
method.</span> </p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"
>faultAction</td><td colspan="1" rowspan="1" class="confluenceTd">No</td><td
>colspan="1" rowspan="1" class="confluenceTd"><p><span style="color:
>rgb(0,0,0);"><span style="line-height: 1.42857;">Signifies the value for the
>faultAction response WS-Addressing</span><span style="line-height:
>1.42857;"><span style="color: rgb(119,183,103);"> </span></span><span
>style="line-height: 1.42857;">Fault Action</span><span style="line-height:
>1.42857;"> </span><span style="line-height: 1.42857;">header that is
>provided by the method.</span></span></p></td></tr><tr><td colspan="1"
>rowspan="1" class="confluenceTd">faultTo</td><td colspan="1" rowspan="1"
>class="confluenceTd"><span>No</span></td><td colspan="1" rowspan="1"
>class="confluenceTd"><span style="color: rgb(0,0,0);">Signifies the value for
>the faultAction response WS-Addressing FaultTo header that is provided by the
>method.</span></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd">replyTo</td><td colspan="1" rowspan="1
" class="confluenceTd"><span>No</span></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color: rgb(0,0,0);">Signifies the value
for the replyTo response WS-Addressing<span style="color:
rgb(119,183,103);"> </span>ReplyTo header that is provided by the
method.</span></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>expression</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Only when <em>mapping-type</em> is
<code>xpathresult</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>XPath expression to use in the process of mapping web
service requests, should match the result specified by
<code>xpathresult</code></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>timeout</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.10:</strong> Sets the socket read
timeout (in milliseconds) while inv
oking a webservice using the producer, see <a shape="rect"
class="external-link"
href="http://docs.oracle.com/javase/6/docs/api/java/net/URLConnection.html#setReadTimeout(int)"
rel="nofollow">URLConnection.setReadTimeout()</a> and <a shape="rect"
class="external-link"
href="http://static.springsource.org/spring-ws/site/apidocs/org/springframework/ws/transport/http/CommonsHttpMessageSender.html#setReadTimeout(int)"
rel="nofollow">CommonsHttpMessageSender.setReadTimeout()</a>.  This
option works when using the built-in message sender
implementations: <em>CommonsHttpMessageSender</em> and <em>HttpUrlConnectionMessageSender</em>.
 One of these implementations will be used by default for HTTP based
services unless you customize the Spring WS configuration options supplied to
the component.  If you are using a non-standard sender, it is assumed that
you will handle your own timeout configuration.<br clear="none"
class="atl-forced-newline"> <strong>Camel 2.12:
</strong> The built-in message
sender <em>HttpComponentsMessageSender</em> is considered
<strong>instead of</strong> <em>CommonsHttpMessageSender</em> which
has been deprecated, see <a shape="rect" class="external-link"
href="http://static.springsource.org/spring-ws/site/apidocs/org/springframework/ws/transport/http/HttpComponentsMessageSender.html#setReadTimeout(int)"
rel="nofollow">HttpComponentsMessageSender.setReadTimeout()</a>.</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>No</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><strong>Camel 2.10:</strong> Reference
to an <code>org.apache.camel.util.jsse.SSLContextParameters</code>
in the <a shape="rect" class="external-link"
href="http://camel.apache.org/registry.html">Registry</a>.  See <a
shape="rect" class="external-link" href="http://camel.apache.
org/http4.html#HTTP4-UsingtheJSSEConfigurationUtility">Using the JSSE
Configuration Utility</a>.  This option works when using the built-in
message sender
implementations: <em>CommonsHttpMessageSender</em> and <em>HttpUrlConnectionMessageSender</em>.
 One of these implementations will be used by default for HTTP based
services unless you customize the Spring WS configuration options supplied to
the component.  If you are using a non-standard sender, it is assumed that
you will handle your own TLS configuration.<br clear="none"
class="atl-forced-newline"> <strong>Camel 2.12:</strong> The built-in
message sender <em>HttpComponentsMessageSender</em> is considered
<strong>instead of</strong> <em>CommonsHttpMessageSender</em> which
has been deprecated.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>webServiceTemplate</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan=
"1" rowspan="1" class="confluenceTd"><p>Option to provide a custom <a
shape="rect" class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/apidocs/org/springframework/ws/client/core/WebServiceTemplate.html"
rel="nofollow">WebServiceTemplate</a>. This allows for full control over
client-side web services handling; like adding a custom interceptor or
specifying a fault resolver, message sender or message
factory.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>messageSender</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Option to provide a custom <a shape="rect"
class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/apidocs/org/springframework/ws/transport/WebServiceMessageSender.html"
rel="nofollow">WebServiceMessageSender</a>. For example to perform
authentication or use alternative transports</p></td></tr><tr><td colspan="1" ro
wspan="1" class="confluenceTd"><p><code>messageFactory</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Option to provide a custom <a shape="rect"
class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/apidocs/org/springframework/ws/WebServiceMessageFactory.html"
rel="nofollow">WebServiceMessageFactory</a>. For example when you want Apache
Axiom to handle web service messages instead of SAAJ</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><span>endpointMappingKey</span></td><td colspan="1"
rowspan="1" class="confluenceTd">No</td><td colspan="1" rowspan="1"
class="confluenceTd"><span><span>Reference to an instance of
</span></span>org.apache.camel.component.spring.ws.type.EndpointMappingKey</td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>endpointMapping</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Only when <em>mapping
-type</em> is <code>rootqname</code>, <code>soapaction</code>,
<code>uri</code> or <code>xpathresult</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Reference to an instance of <code><a
shape="rect" class="external-link"
href="http://org.apache.camel.component.spring.ws"
rel="nofollow">org.apache.camel.component.spring.ws</a>.bean.CamelEndpointMapping</code>
in the Registry/ApplicationContext. Only one bean is required in the registry
to serve all Camel/Spring-WS endpoints. This bean is auto-discovered by the <a
shape="rect" class="external-link"
href="http://static.springsource.org/spring-ws/sites/1.5/apidocs/org/springframework/ws/server/MessageDispatcher.html"
rel="nofollow">MessageDispatcher</a> and used to map requests to Camel
endpoints based on characteristics specified on the endpoint (like root QName,
SOAP action, etc)</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">endpointDispatcher</td><td colspan="1" rowspan="1"
class="confluenceTd">
No</td><td colspan="1" rowspan="1" class="confluenceTd"> Spring {@link <a
shape="rect" class="external-link" href="http://org.springframework.ws"
rel="nofollow">org.springframework.ws</a>.server.endpoint.MessageEndpoint} for
dispatching messages received by Spring-WS to a Camel endpoint, to integrate
with existing (legacy) endpoint mappings like PayloadRootQNameEndpointMapping,
SoapActionEndpointMapping, etc.</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>messageFilter</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>No</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>Camel 2.10.3</strong> Option to provide a
custom MessageFilter. For example when you want to process your headers or
attachments by your own.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">messageIdStrategy</td><td colspan="1" rowspan="1"
class="confluenceTd">No</td><td colspan="1" rowspan="1" class="confluenceTd">A
custom MessageIdStr
ategy to control generation of unique message ids</td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><span>webServiceEndpointUri</span></td><td
colspan="1" rowspan="1" class="confluenceTd">No</td><td colspan="1" rowspan="1"
class="confluenceTd">The default Web Service endpoint uri to use for the
producer</td></tr></tbody></table></div></div><h4
id="SpringWebServices-Messageheaders">Message headers</h4><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>CamelSpringWebserviceEndpointUri</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>URI of the web service your accessing as a
cl
ient, overrides <em>address</em> part of the endpoint URI</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p><code>CamelSpringWebserviceSoapAction</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Header to specify the SOAP action of the
message, overrides <code>soapAction</code> option if
present</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceSoapHeader</span></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><span>Source</span></td><td colspan="1"
rowspan="1" class="confluenceTd"><strong>Camel 2.11.1:</strong><span> Use this
header to specify/access the SOAP headers of the
message.</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>CamelSpringWebserviceAddressingAction</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>URI</p></td><td colspan="1"
rowspan="1
" class="confluenceTd"><p>Use this header to specify the WS-Addressing action
of the message, overrides <code>wsAddressingAction</code> option if
present</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceAddressingFaultTo</span></p></td><td
colspan="1" rowspan="1" class="confluenceTd">URI</td><td colspan="1"
rowspan="1" class="confluenceTd"><span>Use this header to specify the
</span> <span style="color: rgb(0,0,0);">WS-Addressing FaultTo <span>,
overrides faultTo option if present</span></span></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceAddressingReplyTo</span></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><span>URI</span></td><td
colspan="1" rowspan="1" class="confluenceTd"><span>Use this header to specify
the </span><span> </span><span style="color: rgb(0,0,0);">WS-Addressing
ReplyTo , overrides replyTo option if
present</span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceAddressingOutputAction</span></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><span>URI</span></td><td
colspan="1" rowspan="1" class="confluenceTd"><span style="color:
rgb(0,0,0);"><span>Use this header to specify the</span> WS-Addressing
Action<span style="color: rgb(0,0,0);"> , overrides outputAction option if
present</span></span></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p><span style="color:
rgb(0,0,0);">CamelSpringWebserviceAddressingFaultAction</span></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><span>URI</span></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p><span style="color:
rgb(0,0,0);">Use this header to specify the</span><span style="color:
rgb(0,0,0);"> WS-Addressing <span style="color: rgb(0,0,0);">Fault
Action</span></span><span style="color: rgb(0,0,0);"> , overrides faultActi
on option if present</span></p></td></tr></tbody></table></div></div><h2
id="SpringWebServices-Accessingwebservices">Accessing web services</h2><p>To
call a web service at <code><a shape="rect" class="external-link"
href="http://foo.com/bar" rel="nofollow">http://foo.com/bar</a></code> simply
define a route:</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[from("direct:example").to("spring-ws:http://foo.com/bar")
]]></script>
</div></div><p>And sent a message:</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">