Author: buildbot Date: Wed Feb 11 18:19:09 2015 New Revision: 939837 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/lucene.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 Wed Feb 11 18:19:09 2015 @@ -1342,11 +1342,11 @@ template.send("direct:alias-verify& </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.rbtoc1423574347762 {padding: 0px;} -div.rbtoc1423574347762 ul {list-style: disc;margin-left: 0px;} -div.rbtoc1423574347762 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1423678648394 {padding: 0px;} +div.rbtoc1423678648394 ul {list-style: disc;margin-left: 0px;} +div.rbtoc1423678648394 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1423574347762"> +/*]]>*/</style></p><div class="toc-macro rbtoc1423678648394"> <ul class="toc-indentation"><li><a shape="rect" href="#CXF-CXFComponent">CXF Component</a> <ul class="toc-indentation"><li><a shape="rect" href="#CXF-URIformat">URI format</a></li><li><a shape="rect" href="#CXF-Options">Options</a> <ul class="toc-indentation"><li><a shape="rect" href="#CXF-Thedescriptionsofthedataformats">The descriptions of the dataformats</a> @@ -7059,74 +7059,20 @@ Headers:{breadcrumbId=ID-machine-local-5 <to uri="log:bar?param1=bar&amp;param2=200"/> ]]></script> </div></div><h4 id="BookComponentAppendix-UsingLogcomponentinOSGi">Using Log component in OSGi</h4><p><strong>Improvement as of Camel 2.12.4/2.13.1</strong></p><p>When using Log component inside OSGi (e.g., in Karaf), the underlying logging mechanisms are provided by PAX logging. It searches for a bundle which invokes <code>org.slf4j.LoggerFactory.getLogger()</code> method and associates the bundle with the logger instance. Without specifying custom <code>org.sfl4j.Logger</code> instance, the logger created by Log component is associated with <code>camel-core</code> bundle.</p><p>In some scenarios it is required that the bundle associated with logger should be the bundle which contains route definition. To do this, either register single instance of <code>org.slf4j.Logger</code> in the Registry or reference it using <code>logger</code> URI parameter.</p><p></p><h3 id="BookComponentAppendix-SeeAlso.38">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="tracer.html">Tracer</a></li><li><a shape="rect" href="how-do-i-use-log4j.html">How do I use log4j</a></li><li><a shape="rect" href="how-do-i-use-java-14-logging.html">How do I use Java 1.4 logging</a></li><li><a shape="rect" href="logeip.html">LogEIP</a> for using <code>log</code> directly in the DSL for human logs.</li></ul> <h2 id="BookComponentAppendix-Lucene(IndexerandSearch)Component">Lucene (Indexer and Search) Component</h2> - -<p><strong>Available as of Camel 2.2</strong></p> - -<p>The <strong>lucene</strong> component is based on the Apache Lucene project. Apache Lucene is a powerful high-performance, full-featured text search engine library written entirely in Java. For more details about Lucene, please see the following links </p> -<ul><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/">http://lucene.apache.org/java/docs/</a></li><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/features.html">http://lucene.apache.org/java/docs/features.html</a></li></ul> - - -<p>The lucene component in camel facilitates integration and utilization of Lucene endpoints in enterprise integration patterns and scenarios. The lucene component does the following</p> -<ul><li>builds a searchable index of documents when payloads are sent to the Lucene Endpoint</li><li>facilitates performing of indexed searches in Camel</li></ul> - - -<p>This component only supports producer endpoints. </p> - -<p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[ -<dependency> +<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="tracer.html">Tracer</a></li><li><a shape="rect" href="how-do-i-use-log4j.html">How do I use log4j</a></li><li><a shape="rect" href="how-do-i-use-java-14-logging.html">How do I use Java 1.4 logging</a></li><li><a shape="rect" href="logeip.html">LogEIP</a> for using <code>log</code> directly in the DSL for human logs.</li></ul> <h2 id="BookComponentAppendix-Lucene(IndexerandSearch)Component">Lucene (Indexer and Search) Component</h2><p><strong>Available as of Camel 2.2</strong></p><p>The <strong>lucene</strong> component is based on the Apache Lucene project. Apache Lucene is a powerful high-performance, full-featured text search engine library written entirely in Java. For more detail s about Lucene, please see the following links</p><ul><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/">http://lucene.apache.org/java/docs/</a></li><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/features.html">http://lucene.apache.org/java/docs/features.html</a></li></ul><p>The lucene component in camel facilitates integration and utilization of Lucene endpoints in enterprise integration patterns and scenarios. The lucene component does the following</p><ul><li>builds a searchable index of documents when payloads are sent to the Lucene Endpoint</li><li>facilitates performing of indexed searches in Camel</li></ul><p>This component only supports producer endpoints.</p><p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-lucene</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency> ]]></script> -</div></div> - -<h3 id="BookComponentAppendix-URIformat.41">URI format</h3> - -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -lucene:searcherName:insert[?options] +</div></div><h3 id="BookComponentAppendix-URIformat.41">URI format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[lucene:searcherName:insert[?options] lucene:searcherName:query[?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-InsertOptions">Insert 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>analyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>StandardAnalyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>indexDir</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>./indexDirectory</code> </p>< /td><td colspan="1" rowspan="1" class="confluenceTd"><p> A file system directory in which index files are created upon analysis of the document by the specified analyzer </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>srcDir</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An optional directory containing files to be used to be analyzed and added to the index at producer startup. </p></td></tr></tbody></table></div> -</div> - -<h3 id="BookComponentAppendix-QueryOptions">Query 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>analyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>StandardAnalyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>indexDir</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>./indexDirectory</code> </p>< /td><td colspan="1" rowspan="1" class="confluenceTd"><p> A file system directory in which index files are created upon analysis of the document by the specified analyzer </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>maxHits</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>10</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An integer value that limits the result set of the search operation </p></td></tr></tbody></table></div> -</div> - -<h3 id="BookComponentAppendix-Sending/ReceivingMessagesto/fromthecache.1">Sending/Receiving Messages to/from the cache</h3> - -<h4 id="BookComponentAppendix-MessageHeaders.12">Message Headers</h4> -<div class="confluenceTableSmall"> -<div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Header </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>QUERY</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Lucene Query to performed on the index. The query may include wildcards and phrases </p></td></tr></tbody></table></div> -</div> - -<h4 id="BookComponentAppendix-LuceneProducers">Lucene Producers </h4> -<p>This component supports 2 producer endpoints.</p> -<ul><li><strong>insert</strong> - The insert producer builds a searchable index by analyzing the body in incoming exchanges and associating it with a token ("content").</li><li><strong>query</strong> - The query producer performs searches on a pre-created index. The query uses the searchable index to perform score & relevance based searches. Queries are sent via the incoming exchange contains a header property name called 'QUERY'. The value of the header property 'QUERY' is a Lucene Query. For more details on how to create Lucene Queries check out <a shape="rect" class="external-link" href="http://lucene.apache.org/java/3_0_0/queryparsersyntax.html">http://lucene.apache.org/java/3_0_0/queryparsersyntax.html</a></li></ul> - - -<h4 id="BookComponentAppendix-LuceneProcessor">Lucene Processor </h4> -<p>There is a processor called LuceneQueryProcessor available to perform queries against lucene without the need to create a producer.</p> - -<h3 id="BookComponentAppendix-LuceneUsageSamples">Lucene Usage Samples</h3> - -<h4 id="BookComponentAppendix-Example1:CreatingaLuceneindex">Example 1: Creating a Lucene index</h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -RouteBuilder builder = new RouteBuilder() { +</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-InsertOptions">Insert 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>analyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>StandardAnalyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>indexDir</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>./indexDirectory</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A file system directory in which index files are created upon analysis of the document by the specified analyzer</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>srcDir</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An optional directory containing files to be used to be analyzed and added to the index at producer startup.</p></td></tr></tbody></table></div></div><h3 id="BookComponentAppendix-QueryOptions">Query 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 col span="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>analyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>StandardAnalyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>indexDir</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>./indexDirectory</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A file system directory in which index files are created upon analysis of the document by the spec ified analyzer</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>maxHits</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>10</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An integer value that limits the result set of the search operation</p></td></tr></tbody></table></div></div><h3 id="BookComponentAppendix-Sending/ReceivingMessagesto/fromthecache.1">Sending/Receiving Messages to/from the cache</h3><h4 id="BookComponentAppendix-MessageHeaders.12">Message Headers</h4><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>QUERY</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The Lucene Query to performed on the index. The query may include wildcards and phrases</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><span>RETURN_LUCENE_DOCS</span></td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.15:</strong> Set this header to true to include the actual Lucene documentation when returning hit information.</td></tr></tbody></table></div></div><h4 id="BookComponentAppendix-LuceneProducers">Lucene Producers</h4><p>This component supports 2 producer endpoints.</p><ul><li><strong>insert</strong> - The insert producer builds a searchable index by analyzing the body in incoming exchanges and associating it with a token ("content").</li><li><strong>query</strong> - The query producer performs searches on a pre-created index. The query uses the searchable index to perform score & relevance based searches. Queries are sent via the incoming exchange contains a header property name called 'QUERY'. The value of the header property 'QUERY' is a Lucene Query. For more details on how to create Lucene Queries c heck out <a shape="rect" class="external-link" href="http://lucene.apache.org/java/3_0_0/queryparsersyntax.html">http://lucene.apache.org/java/3_0_0/queryparsersyntax.html</a></li></ul><h4 id="BookComponentAppendix-LuceneProcessor">Lucene Processor</h4><p>There is a processor called LuceneQueryProcessor available to perform queries against lucene without the need to create a producer.</p><h3 id="BookComponentAppendix-LuceneUsageSamples">Lucene Usage Samples</h3><h4 id="BookComponentAppendix-Example1:CreatingaLuceneindex">Example 1: Creating a Lucene index</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() { public void configure() { from("direct:start"). to("lucene:whitespaceQuotesIndex:insert? @@ -7135,12 +7081,8 @@ RouteBuilder builder = new RouteBuilder( } }; ]]></script> -</div></div> - -<h4 id="BookComponentAppendix-Example2:LoadingpropertiesintotheJNDIregistryintheCamelContext">Example 2: Loading properties into the JNDI registry in the Camel Context </h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -@Override +</div></div><h4 id="BookComponentAppendix-Example2:LoadingpropertiesintotheJNDIregistryintheCamelContext">Example 2: Loading properties into the JNDI registry in the Camel Context</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[@Override protected JndiRegistry createRegistry() throws Exception { JndiRegistry registry = new JndiRegistry(createJndiContext()); @@ -7154,12 +7096,8 @@ protected JndiRegistry createRegistry() ... CamelContext context = new DefaultCamelContext(createRegistry()); ]]></script> -</div></div> - -<h4 id="BookComponentAppendix-Example2:PerformingsearchesusingaQueryProducer">Example 2: Performing searches using a Query Producer</h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -RouteBuilder builder = new RouteBuilder() { +</div></div><h4 id="BookComponentAppendix-Example2:PerformingsearchesusingaQueryProducer">Example 2: Performing searches using a Query Producer</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() { public void configure() { from("direct:start"). setHeader("QUERY", constant("Seinfeld")). @@ -7185,12 +7123,8 @@ RouteBuilder builder = new RouteBuilder( } }; ]]></script> -</div></div> - -<h4 id="BookComponentAppendix-Example3:PerformingsearchesusingaQueryProcessor">Example 3: Performing searches using a Query Processor </h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -RouteBuilder builder = new RouteBuilder() { +</div></div><h4 id="BookComponentAppendix-Example3:PerformingsearchesusingaQueryProcessor">Example 3: Performing searches using a Query Processor</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() { public void configure() { try { from("direct:start"). Modified: websites/production/camel/content/book-in-one-page.html ============================================================================== --- websites/production/camel/content/book-in-one-page.html (original) +++ websites/production/camel/content/book-in-one-page.html Wed Feb 11 18:19:09 2015 @@ -4125,11 +4125,11 @@ While not actual tutorials you might fin </div> </div> <h2 id="BookInOnePage-Preface">Preface</h2><p>This tutorial aims to guide the reader through the stages of creating a project which uses Camel to facilitate the routing of messages from a JMS queue to a <a shape="rect" class="external-link" href="http://www.springramework.org" rel="nofollow">Spring</a> service. The route works in a synchronous fashion returning a response to the client.</p><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1423646244923 {padding: 0px;} -div.rbtoc1423646244923 ul {list-style: disc;margin-left: 0px;} -div.rbtoc1423646244923 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1423678672957 {padding: 0px;} +div.rbtoc1423678672957 ul {list-style: disc;margin-left: 0px;} +div.rbtoc1423678672957 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1423646244923"> +/*]]>*/</style></p><div class="toc-macro rbtoc1423678672957"> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-JmsRemoting-TutorialonSpringRemotingwithJMS">Tutorial on Spring Remoting with JMS</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-Preface">Preface</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-Distribution">Distribution</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-About">About</a></li><li><a shape="rect" href="#Tutorial-JmsRemoting-CreatetheCamelProject">Create the Camel Project</a> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-JmsRemoting-UpdatethePOMwithDependencies">Update the POM with Dependencies</a></li></ul> </li><li><a shape="rect" href="#Tutorial-JmsRemoting-WritingtheServer">Writing the Server</a> @@ -6315,11 +6315,11 @@ So we completed the last piece in the pi <style type="text/css">/*<![CDATA[*/ -div.rbtoc1423646245262 {padding: 0px;} -div.rbtoc1423646245262 ul {list-style: disc;margin-left: 0px;} -div.rbtoc1423646245262 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1423678674272 {padding: 0px;} +div.rbtoc1423678674272 ul {list-style: disc;margin-left: 0px;} +div.rbtoc1423678674272 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style><div class="toc-macro rbtoc1423646245262"> +/*]]>*/</style><div class="toc-macro rbtoc1423678674272"> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-AXIS-Camel-TutorialusingAxis1.4withApacheCamel">Tutorial using Axis 1.4 with Apache Camel</a> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-AXIS-Camel-Prerequisites">Prerequisites</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-Distribution">Distribution</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-Introduction">Introduction</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-SettinguptheprojecttorunAxis">Setting up the project to run Axis</a> <ul class="toc-indentation"><li><a shape="rect" href="#Tutorial-AXIS-Camel-Maven2">Maven 2</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-wsdl">wsdl</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-ConfiguringAxis">Configuring Axis</a></li><li><a shape="rect" href="#Tutorial-AXIS-Camel-RunningtheExample">Running the Example</a></li></ul> @@ -18847,11 +18847,11 @@ template.send("direct:alias-verify& </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.rbtoc1423646252744 {padding: 0px;} -div.rbtoc1423646252744 ul {list-style: disc;margin-left: 0px;} -div.rbtoc1423646252744 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1423678685963 {padding: 0px;} +div.rbtoc1423678685963 ul {list-style: disc;margin-left: 0px;} +div.rbtoc1423678685963 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1423646252744"> +/*]]>*/</style></p><div class="toc-macro rbtoc1423678685963"> <ul class="toc-indentation"><li><a shape="rect" href="#CXF-CXFComponent">CXF Component</a> <ul class="toc-indentation"><li><a shape="rect" href="#CXF-URIformat">URI format</a></li><li><a shape="rect" href="#CXF-Options">Options</a> <ul class="toc-indentation"><li><a shape="rect" href="#CXF-Thedescriptionsofthedataformats">The descriptions of the dataformats</a> @@ -24564,74 +24564,20 @@ Headers:{breadcrumbId=ID-machine-local-5 <to uri="log:bar?param1=bar&amp;param2=200"/> ]]></script> </div></div><h4 id="BookInOnePage-UsingLogcomponentinOSGi">Using Log component in OSGi</h4><p><strong>Improvement as of Camel 2.12.4/2.13.1</strong></p><p>When using Log component inside OSGi (e.g., in Karaf), the underlying logging mechanisms are provided by PAX logging. It searches for a bundle which invokes <code>org.slf4j.LoggerFactory.getLogger()</code> method and associates the bundle with the logger instance. Without specifying custom <code>org.sfl4j.Logger</code> instance, the logger created by Log component is associated with <code>camel-core</code> bundle.</p><p>In some scenarios it is required that the bundle associated with logger should be the bundle which contains route definition. To do this, either register single instance of <code>org.slf4j.Logger</code> in the Registry or reference it using <code>logger</code> URI parameter.</p><p></p><h3 id="BookInOnePage-SeeAlso.58">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="tracer.html">Tracer</a></li><li><a shape="rect" href="how-do-i-use-log4j.html">How do I use log4j</a></li><li><a shape="rect" href="how-do-i-use-java-14-logging.html">How do I use Java 1.4 logging</a></li><li><a shape="rect" href="logeip.html">LogEIP</a> for using <code>log</code> directly in the DSL for human logs.</li></ul> <h2 id="BookInOnePage-Lucene(IndexerandSearch)Component">Lucene (Indexer and Search) Component</h2> - -<p><strong>Available as of Camel 2.2</strong></p> - -<p>The <strong>lucene</strong> component is based on the Apache Lucene project. Apache Lucene is a powerful high-performance, full-featured text search engine library written entirely in Java. For more details about Lucene, please see the following links </p> -<ul><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/">http://lucene.apache.org/java/docs/</a></li><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/features.html">http://lucene.apache.org/java/docs/features.html</a></li></ul> - - -<p>The lucene component in camel facilitates integration and utilization of Lucene endpoints in enterprise integration patterns and scenarios. The lucene component does the following</p> -<ul><li>builds a searchable index of documents when payloads are sent to the Lucene Endpoint</li><li>facilitates performing of indexed searches in Camel</li></ul> - - -<p>This component only supports producer endpoints. </p> - -<p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[ -<dependency> +<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="tracer.html">Tracer</a></li><li><a shape="rect" href="how-do-i-use-log4j.html">How do I use log4j</a></li><li><a shape="rect" href="how-do-i-use-java-14-logging.html">How do I use Java 1.4 logging</a></li><li><a shape="rect" href="logeip.html">LogEIP</a> for using <code>log</code> directly in the DSL for human logs.</li></ul> <h2 id="BookInOnePage-Lucene(IndexerandSearch)Component">Lucene (Indexer and Search) Component</h2><p><strong>Available as of Camel 2.2</strong></p><p>The <strong>lucene</strong> component is based on the Apache Lucene project. Apache Lucene is a powerful high-performance, full-featured text search engine library written entirely in Java. For more details about Lucene, please see the following links</p><ul><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/">http://lucene.apache.org/java/docs/</a></li><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/features.html">http://lucene.apache.org/java/docs/features.html</a></li></ul><p>The lucene component in camel facilitates integration and utilization of Lucene endpoints in enterprise integration patterns and scenarios. The lucene component does the following</p><ul><li>builds a searchable index of documents when payloads are sent to the Lucene Endpoint</li><li>facilitates performing of indexed searches in Camel</li></ul><p>This component only supports producer endpoints.</p><p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-lucene</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency> ]]></script> -</div></div> - -<h3 id="BookInOnePage-URIformat.42">URI format</h3> - -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -lucene:searcherName:insert[?options] +</div></div><h3 id="BookInOnePage-URIformat.42">URI format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[lucene:searcherName:insert[?options] lucene:searcherName:query[?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="BookInOnePage-InsertOptions">Insert 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>analyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>StandardAnalyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>indexDir</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>./indexDirectory</code> </p>< /td><td colspan="1" rowspan="1" class="confluenceTd"><p> A file system directory in which index files are created upon analysis of the document by the specified analyzer </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>srcDir</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An optional directory containing files to be used to be analyzed and added to the index at producer startup. </p></td></tr></tbody></table></div> -</div> - -<h3 id="BookInOnePage-QueryOptions">Query 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>analyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>StandardAnalyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>indexDir</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>./indexDirectory</code> </p>< /td><td colspan="1" rowspan="1" class="confluenceTd"><p> A file system directory in which index files are created upon analysis of the document by the specified analyzer </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>maxHits</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>10</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An integer value that limits the result set of the search operation </p></td></tr></tbody></table></div> -</div> - -<h3 id="BookInOnePage-Sending/ReceivingMessagesto/fromthecache.1">Sending/Receiving Messages to/from the cache</h3> - -<h4 id="BookInOnePage-MessageHeaders.12">Message Headers</h4> -<div class="confluenceTableSmall"> -<div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Header </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>QUERY</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Lucene Query to performed on the index. The query may include wildcards and phrases </p></td></tr></tbody></table></div> -</div> - -<h4 id="BookInOnePage-LuceneProducers">Lucene Producers </h4> -<p>This component supports 2 producer endpoints.</p> -<ul><li><strong>insert</strong> - The insert producer builds a searchable index by analyzing the body in incoming exchanges and associating it with a token ("content").</li><li><strong>query</strong> - The query producer performs searches on a pre-created index. The query uses the searchable index to perform score & relevance based searches. Queries are sent via the incoming exchange contains a header property name called 'QUERY'. The value of the header property 'QUERY' is a Lucene Query. For more details on how to create Lucene Queries check out <a shape="rect" class="external-link" href="http://lucene.apache.org/java/3_0_0/queryparsersyntax.html">http://lucene.apache.org/java/3_0_0/queryparsersyntax.html</a></li></ul> - - -<h4 id="BookInOnePage-LuceneProcessor">Lucene Processor </h4> -<p>There is a processor called LuceneQueryProcessor available to perform queries against lucene without the need to create a producer.</p> - -<h3 id="BookInOnePage-LuceneUsageSamples">Lucene Usage Samples</h3> - -<h4 id="BookInOnePage-Example1:CreatingaLuceneindex">Example 1: Creating a Lucene index</h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -RouteBuilder builder = new RouteBuilder() { +</div></div><p>You can append query options to the URI in the following format, <code>?option=value&option=value&...</code></p><h3 id="BookInOnePage-InsertOptions">Insert 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>analyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>StandardAnalyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of a nalyzers out of the box</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>indexDir</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>./indexDirectory</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A file system directory in which index files are created upon analysis of the document by the specified analyzer</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>srcDir</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An optional directory containing files to be used to be analyzed and added to the index at producer startup.</p></td></tr></tbody></table></div></div><h3 id="BookInOnePage-QueryOptions">Query 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>analyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>StandardAnalyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>indexDir</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>./indexDirectory</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A file system directory in which index files are created upon analysis of the document by the specified analyzer</ p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>maxHits</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>10</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An integer value that limits the result set of the search operation</p></td></tr></tbody></table></div></div><h3 id="BookInOnePage-Sending/ReceivingMessagesto/fromthecache.1">Sending/Receiving Messages to/from the cache</h3><h4 id="BookInOnePage-MessageHeaders.12">Message Headers</h4><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>QUERY</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The Lucene Query to performed on the index. The query may include wildcards and phrases</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><span>RETURN_LUCENE_DOCS</span></td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.15:</strong> Set this header to true to include the actual Lucene documentation when returning hit information.</td></tr></tbody></table></div></div><h4 id="BookInOnePage-LuceneProducers">Lucene Producers</h4><p>This component supports 2 producer endpoints.</p><ul><li><strong>insert</strong> - The insert producer builds a searchable index by analyzing the body in incoming exchanges and associating it with a token ("content").</li><li><strong>query</strong> - The query producer performs searches on a pre-created index. The query uses the searchable index to perform score & relevance based searches. Queries are sent via the incoming exchange contains a header property name called 'QUERY'. The value of the header property 'QUERY' is a Lucene Query. For more details on how to create Lucene Queries check out <a shape="rect" class="external -link" href="http://lucene.apache.org/java/3_0_0/queryparsersyntax.html">http://lucene.apache.org/java/3_0_0/queryparsersyntax.html</a></li></ul><h4 id="BookInOnePage-LuceneProcessor">Lucene Processor</h4><p>There is a processor called LuceneQueryProcessor available to perform queries against lucene without the need to create a producer.</p><h3 id="BookInOnePage-LuceneUsageSamples">Lucene Usage Samples</h3><h4 id="BookInOnePage-Example1:CreatingaLuceneindex">Example 1: Creating a Lucene index</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() { public void configure() { from("direct:start"). to("lucene:whitespaceQuotesIndex:insert? @@ -24640,12 +24586,8 @@ RouteBuilder builder = new RouteBuilder( } }; ]]></script> -</div></div> - -<h4 id="BookInOnePage-Example2:LoadingpropertiesintotheJNDIregistryintheCamelContext">Example 2: Loading properties into the JNDI registry in the Camel Context </h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -@Override +</div></div><h4 id="BookInOnePage-Example2:LoadingpropertiesintotheJNDIregistryintheCamelContext">Example 2: Loading properties into the JNDI registry in the Camel Context</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[@Override protected JndiRegistry createRegistry() throws Exception { JndiRegistry registry = new JndiRegistry(createJndiContext()); @@ -24659,12 +24601,8 @@ protected JndiRegistry createRegistry() ... CamelContext context = new DefaultCamelContext(createRegistry()); ]]></script> -</div></div> - -<h4 id="BookInOnePage-Example2:PerformingsearchesusingaQueryProducer">Example 2: Performing searches using a Query Producer</h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -RouteBuilder builder = new RouteBuilder() { +</div></div><h4 id="BookInOnePage-Example2:PerformingsearchesusingaQueryProducer">Example 2: Performing searches using a Query Producer</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() { public void configure() { from("direct:start"). setHeader("QUERY", constant("Seinfeld")). @@ -24690,12 +24628,8 @@ RouteBuilder builder = new RouteBuilder( } }; ]]></script> -</div></div> - -<h4 id="BookInOnePage-Example3:PerformingsearchesusingaQueryProcessor">Example 3: Performing searches using a Query Processor </h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -RouteBuilder builder = new RouteBuilder() { +</div></div><h4 id="BookInOnePage-Example3:PerformingsearchesusingaQueryProcessor">Example 3: Performing searches using a Query Processor</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() { public void configure() { try { from("direct:start"). Modified: websites/production/camel/content/cache/main.pageCache ============================================================================== Binary files - no diff available. Modified: websites/production/camel/content/lucene.html ============================================================================== --- websites/production/camel/content/lucene.html (original) +++ websites/production/camel/content/lucene.html Wed Feb 11 18:19:09 2015 @@ -85,74 +85,20 @@ <tbody> <tr> <td valign="top" width="100%"> -<div class="wiki-content maincontent"><h2 id="Lucene-Lucene(IndexerandSearch)Component">Lucene (Indexer and Search) Component</h2> - -<p><strong>Available as of Camel 2.2</strong></p> - -<p>The <strong>lucene</strong> component is based on the Apache Lucene project. Apache Lucene is a powerful high-performance, full-featured text search engine library written entirely in Java. For more details about Lucene, please see the following links </p> -<ul><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/">http://lucene.apache.org/java/docs/</a></li><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/features.html">http://lucene.apache.org/java/docs/features.html</a></li></ul> - - -<p>The lucene component in camel facilitates integration and utilization of Lucene endpoints in enterprise integration patterns and scenarios. The lucene component does the following</p> -<ul><li>builds a searchable index of documents when payloads are sent to the Lucene Endpoint</li><li>facilitates performing of indexed searches in Camel</li></ul> - - -<p>This component only supports producer endpoints. </p> - -<p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[ -<dependency> +<div class="wiki-content maincontent"><h2 id="Lucene-Lucene(IndexerandSearch)Component">Lucene (Indexer and Search) Component</h2><p><strong>Available as of Camel 2.2</strong></p><p>The <strong>lucene</strong> component is based on the Apache Lucene project. Apache Lucene is a powerful high-performance, full-featured text search engine library written entirely in Java. For more details about Lucene, please see the following links</p><ul><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/">http://lucene.apache.org/java/docs/</a></li><li><a shape="rect" class="external-link" href="http://lucene.apache.org/java/docs/features.html">http://lucene.apache.org/java/docs/features.html</a></li></ul><p>The lucene component in camel facilitates integration and utilization of Lucene endpoints in enterprise integration patterns and scenarios. The lucene component does the following</p><ul><li>builds a searchable index of documents when payloads are sent to the Luce ne Endpoint</li><li>facilitates performing of indexed searches in Camel</li></ul><p>This component only supports producer endpoints.</p><p>Maven users will need to add the following dependency to their <code>pom.xml</code> for this component:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: xml; gutter: false" type="syntaxhighlighter"><![CDATA[<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-lucene</artifactId> <version>x.x.x</version> <!-- use the same version as your Camel core version --> </dependency> ]]></script> -</div></div> - -<h3 id="Lucene-URIformat">URI format</h3> - -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -lucene:searcherName:insert[?options] +</div></div><h3 id="Lucene-URIformat">URI format</h3><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[lucene:searcherName:insert[?options] lucene:searcherName:query[?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="Lucene-InsertOptions">Insert 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>analyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>StandardAnalyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>indexDir</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>./indexDirectory</code> </p>< /td><td colspan="1" rowspan="1" class="confluenceTd"><p> A file system directory in which index files are created upon analysis of the document by the specified analyzer </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>srcDir</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>null</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An optional directory containing files to be used to be analyzed and added to the index at producer startup. </p></td></tr></tbody></table></div> -</div> - -<h3 id="Lucene-QueryOptions">Query 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>analyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>StandardAnalyzer</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>indexDir</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>./indexDirectory</code> </p>< /td><td colspan="1" rowspan="1" class="confluenceTd"><p> A file system directory in which index files are created upon analysis of the document by the specified analyzer </p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>maxHits</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>10</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> An integer value that limits the result set of the search operation </p></td></tr></tbody></table></div> -</div> - -<h3 id="Lucene-Sending/ReceivingMessagesto/fromthecache">Sending/Receiving Messages to/from the cache</h3> - -<h4 id="Lucene-MessageHeaders">Message Headers</h4> -<div class="confluenceTableSmall"> -<div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p> Header </p></th><th colspan="1" rowspan="1" class="confluenceTh"><p> Description </p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> <code>QUERY</code> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p> The Lucene Query to performed on the index. The query may include wildcards and phrases </p></td></tr></tbody></table></div> -</div> - -<h4 id="Lucene-LuceneProducers">Lucene Producers </h4> -<p>This component supports 2 producer endpoints.</p> -<ul><li><strong>insert</strong> - The insert producer builds a searchable index by analyzing the body in incoming exchanges and associating it with a token ("content").</li><li><strong>query</strong> - The query producer performs searches on a pre-created index. The query uses the searchable index to perform score & relevance based searches. Queries are sent via the incoming exchange contains a header property name called 'QUERY'. The value of the header property 'QUERY' is a Lucene Query. For more details on how to create Lucene Queries check out <a shape="rect" class="external-link" href="http://lucene.apache.org/java/3_0_0/queryparsersyntax.html">http://lucene.apache.org/java/3_0_0/queryparsersyntax.html</a></li></ul> - - -<h4 id="Lucene-LuceneProcessor">Lucene Processor </h4> -<p>There is a processor called LuceneQueryProcessor available to perform queries against lucene without the need to create a producer.</p> - -<h3 id="Lucene-LuceneUsageSamples">Lucene Usage Samples</h3> - -<h4 id="Lucene-Example1:CreatingaLuceneindex">Example 1: Creating a Lucene index</h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -RouteBuilder builder = new RouteBuilder() { +</div></div><p>You can append query options to the URI in the following format, <code>?option=value&option=value&...</code></p><h3 id="Lucene-InsertOptions">Insert 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>analyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>StandardAnalyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzer s out of the box</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>indexDir</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>./indexDirectory</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A file system directory in which index files are created upon analysis of the document by the specified analyzer</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>srcDir</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>null</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An optional directory containing files to be used to be analyzed and added to the index at producer startup.</p></td></tr></tbody></table></div></div><h3 id="Lucene-QueryOptions">Query 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="co nfluenceTh"><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>analyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>StandardAnalyzer</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An Analyzer builds TokenStreams, which analyze text. It thus represents a policy for extracting index terms from text. The value for analyzer can be any class that extends the abstract class org.apache.lucene.analysis.Analyzer. Lucene also offers a rich set of analyzers out of the box</p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>indexDir</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>./indexDirectory</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>A file system directory in which index files are created upon analysis of the document by the specified analyzer</p></td></tr><t r><td colspan="1" rowspan="1" class="confluenceTd"><p><code>maxHits</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><code>10</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>An integer value that limits the result set of the search operation</p></td></tr></tbody></table></div></div><h3 id="Lucene-Sending/ReceivingMessagesto/fromthecache">Sending/Receiving Messages to/from the cache</h3><h4 id="Lucene-MessageHeaders">Message Headers</h4><div class="confluenceTableSmall"><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Header</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p><code>QUERY</code></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>The Lucene Query to performed on the index. The query may include wildcards and phrases</p></td></tr><tr><td colspan="1" rowspan="1" class="c onfluenceTd"><span>RETURN_LUCENE_DOCS</span></td><td colspan="1" rowspan="1" class="confluenceTd"><strong>Camel 2.15:</strong> Set this header to true to include the actual Lucene documentation when returning hit information.</td></tr></tbody></table></div></div><h4 id="Lucene-LuceneProducers">Lucene Producers</h4><p>This component supports 2 producer endpoints.</p><ul><li><strong>insert</strong> - The insert producer builds a searchable index by analyzing the body in incoming exchanges and associating it with a token ("content").</li><li><strong>query</strong> - The query producer performs searches on a pre-created index. The query uses the searchable index to perform score & relevance based searches. Queries are sent via the incoming exchange contains a header property name called 'QUERY'. The value of the header property 'QUERY' is a Lucene Query. For more details on how to create Lucene Queries check out <a shape="rect" class="external-link" href="http://lucene.apache.org/ja va/3_0_0/queryparsersyntax.html">http://lucene.apache.org/java/3_0_0/queryparsersyntax.html</a></li></ul><h4 id="Lucene-LuceneProcessor">Lucene Processor</h4><p>There is a processor called LuceneQueryProcessor available to perform queries against lucene without the need to create a producer.</p><h3 id="Lucene-LuceneUsageSamples">Lucene Usage Samples</h3><h4 id="Lucene-Example1:CreatingaLuceneindex">Example 1: Creating a Lucene index</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() { public void configure() { from("direct:start"). to("lucene:whitespaceQuotesIndex:insert? @@ -161,12 +107,8 @@ RouteBuilder builder = new RouteBuilder( } }; ]]></script> -</div></div> - -<h4 id="Lucene-Example2:LoadingpropertiesintotheJNDIregistryintheCamelContext">Example 2: Loading properties into the JNDI registry in the Camel Context </h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -@Override +</div></div><h4 id="Lucene-Example2:LoadingpropertiesintotheJNDIregistryintheCamelContext">Example 2: Loading properties into the JNDI registry in the Camel Context</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[@Override protected JndiRegistry createRegistry() throws Exception { JndiRegistry registry = new JndiRegistry(createJndiContext()); @@ -180,12 +122,8 @@ protected JndiRegistry createRegistry() ... CamelContext context = new DefaultCamelContext(createRegistry()); ]]></script> -</div></div> - -<h4 id="Lucene-Example2:PerformingsearchesusingaQueryProducer">Example 2: Performing searches using a Query Producer</h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -RouteBuilder builder = new RouteBuilder() { +</div></div><h4 id="Lucene-Example2:PerformingsearchesusingaQueryProducer">Example 2: Performing searches using a Query Producer</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() { public void configure() { from("direct:start"). setHeader("QUERY", constant("Seinfeld")). @@ -211,12 +149,8 @@ RouteBuilder builder = new RouteBuilder( } }; ]]></script> -</div></div> - -<h4 id="Lucene-Example3:PerformingsearchesusingaQueryProcessor">Example 3: Performing searches using a Query Processor </h4> -<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[ -RouteBuilder builder = new RouteBuilder() { +</div></div><h4 id="Lucene-Example3:PerformingsearchesusingaQueryProcessor">Example 3: Performing searches using a Query Processor</h4><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> +<script class="theme: Default; brush: java; gutter: false" type="syntaxhighlighter"><![CDATA[RouteBuilder builder = new RouteBuilder() { public void configure() { try { from("direct:start").