Author: buildbot
Date: Fri Apr 11 17:48:32 2014
New Revision: 905835

Log:
Production update by buildbot for cxf

Modified:
    websites/production/cxf/content/cache/docs.pageCache
    websites/production/cxf/content/docs/jax-rs-search.html

Modified: websites/production/cxf/content/cache/docs.pageCache
==============================================================================
Binary files - no diff available.

Modified: websites/production/cxf/content/docs/jax-rs-search.html
==============================================================================
--- websites/production/cxf/content/docs/jax-rs-search.html (original)
+++ websites/production/cxf/content/docs/jax-rs-search.html Fri Apr 11 17:48:32 
2014
@@ -118,11 +118,11 @@ Apache CXF -- JAX-RS Search
            <!-- Content -->
            <div class="wiki-content">
 <div id="ConfluenceContent"><h1 id="JAX-RSSearch-JAX-RSSearch">JAX-RS 
Search</h1><p>&#160;</p><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1396468208483 {padding: 0px;}
-div.rbtoc1396468208483 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1396468208483 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1397238485730 {padding: 0px;}
+div.rbtoc1397238485730 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1397238485730 li {margin-left: 0px;padding-left: 0px;}
 
-/*]]>*/</style></p><div class="toc-macro rbtoc1396468208483">
+/*]]>*/</style></p><div class="toc-macro rbtoc1397238485730">
 <ul class="toc-indentation"><li><a shape="rect" 
href="#JAX-RSSearch-JAX-RSSearch">JAX-RS Search</a>
 <ul class="toc-indentation"><li><a shape="rect" 
href="#JAX-RSSearch-AdvancedSearchQueries">Advanced Search 
Queries</a></li><li><a shape="rect" 
href="#JAX-RSSearch-SupportedQueryLanguages">Supported Query Languages</a>
 <ul class="toc-indentation"><li><a shape="rect" 
href="#JAX-RSSearch-FeedItemQueryLanguage">Feed Item Query 
Language</a></li><li><a shape="rect" href="#JAX-RSSearch-OpenDataProtocol">Open 
Data Protocol</a></li></ul>
@@ -156,7 +156,19 @@ div.rbtoc1396468208483 li {margin-left: 
 /books?date=lt=2000-01-01;date=gt=1999-01-01;(sub==math,sub==physics)
 
 ]]></script>
-</div></div><p>Note that no "_s" or "_search" query parameter is available, 
the whole query string starting after "?" represents an actual FIQL 
expression.<br clear="none"> Please use "search.use.all.query.component" 
contextual property for this option be supported.</p><p>Alternatively the 
expressions can be encoded as URI path segments, see the sections below for 
more information.</p><h3 id="JAX-RSSearch-OpenDataProtocol">Open Data 
Protocol</h3><p>CXF 3.0.0-milestone2 supports the <a shape="rect" 
class="external-link" 
href="http://docs.oasis-open.org/odata/odata/v4.0/cos01/part2-url-conventions/odata-v4.0-cos01-part2-url-conventions.html#_Toc372793792";
 rel="nofollow">$filter</a> query defined as part of <a shape="rect" 
class="external-link" href="http://www.odata.org/"; rel="nofollow">Open Data 
Protocol</a>, courtesy of <a shape="rect" class="external-link" 
href="http://olingo.incubator.apache.org/";>Apache Olingo</a>.</p><p>The $filter 
query can have a number of the logical operator
 s, here is a summary of the operators supported in scope of Search 
API:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p>Operator</p></th><th 
colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>"eq"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Equal</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"ne"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Not Equal</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"lt"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Less Than</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"le"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Less or Equal</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>"gt"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Greater Than<
 /p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"ge"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Greater or Equal</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>"and"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>AND</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"or"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>OR</p></td></tr></tbody></table></div><p>&#160;</p><p>Please
 see the specification text for <a shape="rect" class="external-link" 
href="http://docs.oasis-open.org/odata/odata/v4.0/cos01/part2-url-conventions/odata-v4.0-cos01-part2-url-conventions.html#_Toc372793804";
 rel="nofollow">some examples</a>.</p><p>Please note that OData protocol is not 
supported by CXF Search API, only the $filter query is supported (only logical 
operators for now) for querying the application data with CXF Search API. Users 
should work directly with <a shape="rect" class="external-link" href
 ="http://olingo.incubator.apache.org/";>Apache Olingo</a> to get the <a 
shape="rect" class="external-link" href="http://www.odata.org/"; 
rel="nofollow">OData</a> protocol supported as part of the application 
flow.</p><p>Some of the following examples on this page may often refer to FIQL 
due to the fact FIQL has been supported for a long time, but the same examples 
will work with OData $filter expressions. For example, replace the 
"_s=name==CXF" query with "$filter=name eq CXF".</p><p>Please use a 
"search.query.parameter.name" contextual property to indicate to the runtime 
that a $filter query option need to be checked for the query expression and a 
"search.parser" property to point to the instance of 
org.apache.cxf.jaxrs.ext.search.odata.ODataParser, as shown in this <a 
shape="rect" class="external-link" 
href="http://svn.apache.org/repos/asf/cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerODataSearchTest.java";>test</a>,
 see the startServers functio
 n.</p><p>Also note that <a shape="rect" class="external-link" 
href="http://olingo.incubator.apache.org/";>Apache Olingo</a> offers its own 
visitor model which can be used to work with JPA2, etc.</p><h2 
id="JAX-RSSearch-Whentouseadvancedqueries.">When to use advanced 
queries.</h2><p>Consider a typical query expression such as 
"a=avalue&amp;c=cvalue". This can mean either "find all resources with 'a' and 
'c' properties equal to 'avalue' and 'cvalue'" or "find all resources with 'a' 
or 'c' properties equal to 'avalue' and 'cvalue'". It is application specific 
on whether it is "and" or "or" as far as the combination of multiple query 
properties is concerned.</p><p>It is also to capture conditional expressions 
with the custom language, example, "find all resource with 'a' property less 
than 123" when a number of properties is large or the entities which can be 
searched are created dynamically.</p><p>Use FIQL or OData for capturing simple 
or medium complexity queries, typically in cases wh
 ere a set of properties that a user can specify is well-known. Example, a book 
store resource will let users search books given a number of useful 
properties(those of Book and/or Library a given book is available in, 
etc).</p><p>Furthermore, consider using FIQL/OData and SearchConditionVisitor 
for the purpose of generalizing the search code, when the number of properties 
and entities is large, dynamic, etc.</p><h2 
id="JAX-RSSearch-DependenciesandConfiguration">Dependencies and 
Configuration</h2><p>The following dependency is required starting from CXF 
2.6.0:</p><div class="code panel pdl" style="border-width: 1px;"><div 
class="codeContent panelContent pdl">
+</div></div><p>Note that no "_s" or "_search" query parameter is available, 
the whole query string starting after "?" represents an actual FIQL 
expression.<br clear="none"> Please use "search.use.all.query.component" 
contextual property for this option be supported.</p><p>Alternatively the 
expressions can be encoded as URI path segments, see the sections below for 
more information.</p><h3 id="JAX-RSSearch-OpenDataProtocol">Open Data 
Protocol</h3><p>CXF 3.0.0-milestone2 supports the <a shape="rect" 
class="external-link" 
href="http://docs.oasis-open.org/odata/odata/v4.0/cos01/part2-url-conventions/odata-v4.0-cos01-part2-url-conventions.html#_Toc372793792";
 rel="nofollow">$filter</a> query defined as part of <a shape="rect" 
class="external-link" href="http://www.odata.org/"; rel="nofollow">Open Data 
Protocol</a>, courtesy of <a shape="rect" class="external-link" 
href="http://olingo.incubator.apache.org/";>Apache Olingo</a>.</p><p>The $filter 
query can have a number of the logical operator
 s, here is a summary of the operators supported in scope of Search 
API:</p><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th 
colspan="1" rowspan="1" class="confluenceTh"><p>Operator</p></th><th 
colspan="1" rowspan="1" 
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>"eq"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Equal</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"ne"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Not Equal</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"lt"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Less Than</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"le"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Less or Equal</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>"gt"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Greater Than<
 /p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"ge"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>Greater or Equal</p></td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"><p>"and"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>AND</p></td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"><p>"or"</p></td><td colspan="1" rowspan="1" 
class="confluenceTd"><p>OR</p></td></tr></tbody></table></div><p>&#160;</p><p>Please
 see the specification text for <a shape="rect" class="external-link" 
href="http://docs.oasis-open.org/odata/odata/v4.0/cos01/part2-url-conventions/odata-v4.0-cos01-part2-url-conventions.html#_Toc372793804";
 rel="nofollow">some examples</a>.</p><p>Please note that OData protocol is not 
supported by CXF Search API, only the $filter query is supported (only logical 
operators for now) for querying the application data with CXF Search API. Users 
should work directly with <a shape="rect" class="external-link" href
 ="http://olingo.incubator.apache.org/";>Apache Olingo</a> to get the <a 
shape="rect" class="external-link" href="http://www.odata.org/"; 
rel="nofollow">OData</a> protocol supported as part of the application 
flow.</p><p>Some of the following examples on this page may often refer to FIQL 
due to the fact FIQL has been supported for a long time, but the same examples 
will work with OData $filter expressions. For example, replace the 
"_s=name==CXF" query with "$filter=name eq CXF".</p><p>Please use a 
"search.query.parameter.name" contextual property to indicate to the runtime 
that a $filter query option need to be checked for the query expression and a 
"search.parser" property to point to the instance of 
org.apache.cxf.jaxrs.ext.search.odata.ODataParser, as shown in this <a 
shape="rect" class="external-link" 
href="http://svn.apache.org/repos/asf/cxf/trunk/systests/jaxrs/src/test/java/org/apache/cxf/systest/jaxrs/JAXRSClientServerODataSearchTest.java";>test</a>,
 see the startServers functio
 n.</p><p>And here is also an XML Spring configuration example (using 
SearchBean in this specific case):</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[ &lt;cxf:bus&gt;
+  &lt;cxf:properties&gt;
+    &lt;entry key=&quot;search.query.parameter.name&quot; 
value=&quot;$filter&quot; /&gt;
+    &lt;entry key=&quot;search.parser&quot;&gt;
+      &lt;bean 
class=&quot;org.apache.cxf.jaxrs.ext.search.odata.ODataParser&quot;&gt;
+         &lt;constructor-arg value=&quot;#{ 
T(org.apache.cxf.jaxrs.ext.search.SearchBean) }&quot; /&gt;
+      &lt;/bean&gt;
+    &lt;/entry&gt;
+  &lt;/cxf:properties&gt;
+&lt;/cxf:bus&gt;
+ ]]></script>
+</div></div><p>&#160;</p><p>Also note that <a shape="rect" 
class="external-link" href="http://olingo.incubator.apache.org/";>Apache 
Olingo</a> offers its own visitor model which can be used to work with JPA2, 
etc.</p><h2 id="JAX-RSSearch-Whentouseadvancedqueries.">When to use advanced 
queries.</h2><p>Consider a typical query expression such as 
"a=avalue&amp;c=cvalue". This can mean either "find all resources with 'a' and 
'c' properties equal to 'avalue' and 'cvalue'" or "find all resources with 'a' 
or 'c' properties equal to 'avalue' and 'cvalue'". It is application specific 
on whether it is "and" or "or" as far as the combination of multiple query 
properties is concerned.</p><p>It is also to capture conditional expressions 
with the custom language, example, "find all resource with 'a' property less 
than 123" when a number of properties is large or the entities which can be 
searched are created dynamically.</p><p>Use FIQL or OData for capturing simple 
or medium complexity queries, ty
 pically in cases where a set of properties that a user can specify is 
well-known. Example, a book store resource will let users search books given a 
number of useful properties(those of Book and/or Library a given book is 
available in, etc).</p><p>Furthermore, consider using FIQL/OData and 
SearchConditionVisitor for the purpose of generalizing the search code, when 
the number of properties and entities is large, dynamic, etc.</p><h2 
id="JAX-RSSearch-DependenciesandConfiguration">Dependencies and 
Configuration</h2><p>The following dependency is required starting from CXF 
2.6.0:</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[   &lt;dependency&gt;
       &lt;groupId&gt;org.apache.cxf&lt;/groupId&gt;
       &lt;artifactId&gt;cxf-rt-rs-extension-search&lt;/artifactId&gt;


Reply via email to