Author: buildbot
Date: Fri Nov 30 16:48:12 2012
New Revision: 840210

Log:
Production update by buildbot for cxf

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

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

Modified: websites/production/cxf/content/docs/jax-rs-advanced-features.html
==============================================================================
--- websites/production/cxf/content/docs/jax-rs-advanced-features.html 
(original)
+++ websites/production/cxf/content/docs/jax-rs-advanced-features.html Fri Nov 
30 16:48:12 2012
@@ -124,7 +124,7 @@ Apache CXF -- JAX-RS Advanced Features
 <div id="ConfluenceContent"><p><span 
style="font-size:2em;font-weight:bold">JAX-RS : Advanced Features</span></p>
 
 <div>
-<ul><li><a shape="rect" href="#JAX-RSAdvancedFeatures-JMSSupport">JMS 
Support</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Endpoints">Endpoints</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Client">Client</a></li></ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-FIQLsearchqueries">FIQL search 
queries</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Introduction">Introduction</a></li><li><a 
shape="rect" href="#JAX-RSAdvancedFeatures-WhentouseFIQL">When to use 
FIQL</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-DependenciesandConfiguration">Dependencies and 
Configuration</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-WorkingwithFIQLqueries">Working with FIQL 
queries</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-CapturingFIQLqueries">Capturing FIQL 
queries</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Mappingofquerypropertiestobeanproperties">Mapping 
of query properties to bean prop
 erties</a></li></ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Mappingofquerypropertiestocolumn%2Ffieldnames">Mapping
 of query properties to column/field names</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-SearchBean">SearchBean</a></li><li><a 
shape="rect" href="#JAX-RSAdvancedFeatures-ConvertingFIQLqueries">Converting 
FIQL queries</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-SQL">SQL</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-JPA2.0">JPA 2.0</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Lucene">Lucene</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Customvisitors">Custom 
visitors</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Untypedconverters">Untyped 
converters</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Typedconverters">Typed converters</a></li><li><a 
shape="rect" href="#JAX-RSAdvancedFeatures-Customparsing">Custom 
parsing</a></li></ul></ul><li><a shape="rect" href="#JAX
 -RSAdvancedFeatures-ConvertingFIQLquerieswithQueryContext">Converting FIQL 
queries with QueryContext</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-SearchExpressionsinURIPathsegments">Search 
Expressions in URI Path segments</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Queriesinvolvingmultipleentities">Queries 
involving multiple entities</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Basicqueries">Basic queries</a></li><li><a 
shape="rect" href="#JAX-RSAdvancedFeatures-Complexqueries">Complex 
queries</a></li></ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-BuildingFIQLqueries">Building FIQL 
queries</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Usingdatesinqueries">Using dates in 
queries</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Alternativequerylanguages">Alternative query 
languages</a></li></ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Onewayinvocations">Oneway 
invocations</a></li><li><a shape="re
 ct" href="#JAX-RSAdvancedFeatures-SupportforContinuations">Support for 
Continuations</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Serversidecaching">Server-side 
caching</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-RESTfulserviceswithoutannotations">RESTful 
services without annotations</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Configuration">Configuration</a></li></ul></ul></div>
+<ul><li><a shape="rect" href="#JAX-RSAdvancedFeatures-JMSSupport">JMS 
Support</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Endpoints">Endpoints</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Client">Client</a></li></ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-FIQLsearchqueries">FIQL search 
queries</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Introduction">Introduction</a></li><li><a 
shape="rect" href="#JAX-RSAdvancedFeatures-WhentouseFIQL">When to use 
FIQL</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-DependenciesandConfiguration">Dependencies and 
Configuration</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-WorkingwithFIQLqueries">Working with FIQL 
queries</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-CapturingFIQLqueries">Capturing FIQL 
queries</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Mappingofquerypropertiestobeanproperties">Mapping 
of query properties to bean prop
 erties</a></li></ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Mappingofquerypropertiestocolumn%2Ffieldnames">Mapping
 of query properties to column/field names</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-SearchBean">SearchBean</a></li><li><a 
shape="rect" href="#JAX-RSAdvancedFeatures-ConvertingFIQLqueries">Converting 
FIQL queries</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-SQL">SQL</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-JPA2.0">JPA 2.0</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Lucene">Lucene</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-LDAP">LDAP</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Customvisitors">Custom 
visitors</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Untypedconverters">Untyped 
converters</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Typedconverters">Typed converters</a></li><li><a 
shape="rect" href="#JAX-RSAdvancedFeatures-Custompar
 sing">Custom parsing</a></li></ul></ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-ConvertingFIQLquerieswithQueryContext">Converting 
FIQL queries with QueryContext</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-SearchExpressionsinURIPathsegments">Search 
Expressions in URI Path segments</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Queriesinvolvingmultipleentities">Queries 
involving multiple entities</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Basicqueries">Basic queries</a></li><li><a 
shape="rect" href="#JAX-RSAdvancedFeatures-Complexqueries">Complex 
queries</a></li></ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-BuildingFIQLqueries">Building FIQL 
queries</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Usingdatesinqueries">Using dates in 
queries</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Alternativequerylanguages">Alternative query 
languages</a></li></ul><li><a shape="rect" href="#JAX-RSAdvancedFe
 atures-Onewayinvocations">Oneway invocations</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-SupportforContinuations">Support for 
Continuations</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Serversidecaching">Server-side 
caching</a></li><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-RESTfulserviceswithoutannotations">RESTful 
services without annotations</a></li><ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Configuration">Configuration</a></li></ul></ul></div>
 
 <h1><a shape="rect" name="JAX-RSAdvancedFeatures-JMSSupport"></a>JMS 
Support</h1>
 
@@ -743,6 +743,42 @@ org.apache.lucene.search.Query phraseQue
 
 <p>The current limitation is that no typed Date queries are supported yet 
(except for the equality match), for example, "find all the documents issued 
before a given date", to be supported shortly.</p>
 
+<h3><a shape="rect" name="JAX-RSAdvancedFeatures-LDAP"></a>LDAP</h3>
+
+<p>Mapping of FIQL expressions to LDAP queries as defined by <a shape="rect" 
class="external-link" href="http://tools.ietf.org/html/rfc4515"; 
rel="nofollow">RFC-4515</a> is supported starting from CXF 2.7.1 with the help 
of org.apache.cxf.jaxrs.ext.search.ldap.LdapQueryVisitor. Use this visitor when 
working with LDAP or OSGI.</p>
+
+<p>Here is a summary of LDAP filter operators:</p>
+
+<div class="table-wrap">
+<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"> Operator </th><th colspan="1" rowspan="1" 
class="confluenceTh"> Description </th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"> "=" </td><td colspan="1" rowspan="1" 
class="confluenceTd"> Equal </td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"> "!" </td><td colspan="1" rowspan="1" 
class="confluenceTd"> Not Equal </td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"> "&lt;=" </td><td colspan="1" rowspan="1" 
class="confluenceTd"> Less Or Equal </td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"> "&gt;=" </td><td colspan="1" rowspan="1" 
class="confluenceTd"> Greater or Equal </td></tr><tr><td colspan="1" 
rowspan="1" class="confluenceTd"> "&amp;" </td><td colspan="1" rowspan="1" 
class="confluenceTd"> AND </td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"> "|" </td><td colspan="1" rowspan="1" 
class="confluenceTd"> OR </td></tr></tbody
 ></table>
+</div>
+
+
+<p>FIQL "=le=" and "=lt=" will both map to "&lt;=", while "=ge=" and "=gt=" to 
"&gt;=".</p>
+
+<p>For example:</p>
+
+<div class="table-wrap">
+<table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" 
class="confluenceTh"> FIQL </th><th colspan="1" rowspan="1" 
class="confluenceTh"> LDAP </th></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"> "name==bar*" </td><td colspan="1" rowspan="1" 
class="confluenceTd"> "(name=bar*)" </td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"> "name!=bar" </td><td colspan="1" rowspan="1" 
class="confluenceTd"> "(!name=bar)" </td></tr><tr><td colspan="1" rowspan="1" 
class="confluenceTd"> "name!=bar;id=gt=10" </td><td colspan="1" rowspan="1" 
class="confluenceTd"> "(&amp;(!name=bar)(id&gt;=10))" </td></tr><tr><td 
colspan="1" rowspan="1" class="confluenceTd"> "name!=bar;(id=gt=10,id=lt=5)" 
</td><td colspan="1" rowspan="1" class="confluenceTd"> 
"(&amp;(!name=bar)(|(id&gt;=10)(id&lt;=5)))" </td></tr></tbody></table>
+</div>
+
+
+<p>The converter is created like all other converters:</p>
+<div class="code panel" style="border-width: 1px;"><div class="codeContent 
panelContent">
+<pre class="code-java">
+
+<span class="code-comment">// FIQL <span class="code-quote">"oclass=Bar"</span>
+</span>
+<span class="code-comment">// map 'oclass' used in the FIQL query to the 
actual property name, 'objectClass'
+</span>LdapQueryVisitor&lt;Condition&gt; visitor = 
+   <span class="code-keyword">new</span> 
LdapQueryVisitor&lt;Condition&gt;(Collections.singletonMap(<span 
class="code-quote">"oclass"</span>, <span 
class="code-quote">"objectClass"</span>));
+
+filter.accept(visitor.visitor());
+<span class="code-object">String</span> ldap = visitor.getQuery();
+
+</pre>
+</div></div>
+
 <h3><a shape="rect" name="JAX-RSAdvancedFeatures-Customvisitors"></a>Custom 
visitors</h3>
 
 <p>In cases when a custom conversion has to be done, a converter for doing the 
untyped (example, SQL) or typed (example, JPA2 TypedQuery) conversions can be 
provided. </p>


Reply via email to