Author: buildbot
Date: Tue Dec 11 13:48:10 2012
New Revision: 841694

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
    websites/production/cxf/content/docs/jax-rs-xml-security.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 Tue Dec 
11 13:48:10 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-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>
+<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><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-Parserproperties">Parser 
properties</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-Typedco
 nverters">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-Alternativequeryl
 anguages">Alternative query languages</a></li></ul><li><a shape="rect" 
href="#JAX-RSAdvancedFeatures-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>
 
@@ -304,7 +304,7 @@ expression or a more complex, composite 
 <ul class="alternate" type="square"><li>Capturing beans may evolve 
independently of the actual queries; for example, a working query such as 
"name==b" will break if a Book 'name' gets renamed to 'title' which will make 
it difficult to have the queries bookmarked.</li><li>Direct match will simply 
not work for cases where an actual bean property does not belong to the 
capturing bean itself but to one of its child properties; for example, a JPA2 
Book entity may have an OwnerInfo bean with Name bean property which does 
contain a primitive 'name' property.</li></ul>
 
 
-<p>The preferred approach, when working with typed beans, is to register a 
bean properties map, using a "search.bean.property.map" contextual property. 
For example, given</p>
+<p>The preferred approach, when working with typed beans, is to register a 
bean properties map, using a "search.bean.property.map" contextual property or 
directly with SearchContext. For example, given</p>
 
 <div class="code panel" style="border-width: 1px;"><div class="codeContent 
panelContent">
 <pre class="code-java">
@@ -371,13 +371,38 @@ expression or a more complex, composite 
 </div></div>
 <p>the mapping between "oname" and "ownerinfo.name" will work too.</p>
 
+<p>You can also have many to one mappings, for example</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent 
panelContent">
+<pre class="code-xml">
+<span class="code-tag">&lt;map&gt;</span>
+ <span class="code-tag"><span class="code-comment">&lt;!-- 'oname' and 'owner' 
are aliases for the 'ownerinfo.name.name' bean property --&gt;</span></span>
+ <span class="code-tag">&lt;entry key=<span class="code-quote">"oname"</span> 
value=<span class="code-quote">"ownerinfo.name.name"</span>/&gt;</span>
+ <span class="code-tag">&lt;entry key=<span class="code-quote">"owner"</span> 
value=<span class="code-quote">"ownerinfo.name.name"</span>/&gt;</span>
+<span class="code-tag">&lt;/map&gt;</span>
+</pre>
+</div></div>
+
+
+
+<h3><a shape="rect" name="JAX-RSAdvancedFeatures-Parserproperties"></a>Parser 
properties</h3>
+
+<p>The parser properties are the ones which tell the parser how to treat the 
conversion of Date values and the unrecognized search property names. </p>
+
+<p>As explained above, "search.lax.property.match" can be used to tell the 
parser that it should ignore the search property names which have no 
corresponding bean properties.</p>
+
+<p>"search.date.format" and "search.timezone.support" tell the parser how to 
convert the date values, see "Using dates in queries" section.</p>
+
+<p>More properties may be supported in the future.</p>
+
+<p>All of these properties can be set as endpoint contextual properties or 
directly with SearchContext.</p>
+
 <h2><a shape="rect" 
name="JAX-RSAdvancedFeatures-Mappingofquerypropertiestocolumn%2Ffieldnames"></a>Mapping
 of query properties to column/field names</h2>
 
 <p>When converting FIQL queries to SQL or other untyped query language 
expressions, as well as when using Lucene converter, it can be useful to be 
able to map between an actual query parameter and the column or field name. All 
FIQL converters shipped with CXF have constructors accepting a map for mapping 
the queries to columns/fields. See the next "SearchBean" section for one 
example.</p>
 
 <p>Note this property is not the same as the one described in the "Mapping of 
query properties to bean properties" section. The latter (the one described in 
the previous section) is required for getting FIQL queries captured into typed, 
domain specific beans like Book, and it can be sufficient for JPA2 which also 
has annotations like @Column.  </p>
 
-
 <h2><a shape="rect" 
name="JAX-RSAdvancedFeatures-SearchBean"></a>SearchBean</h2>
 
 <p>org.apache.cxf.jaxrs.ext.search.SearchBean is a utility bean class which 
can simplify analyzing the captured FIQL expressions and converting them to the 
other language expressions, in cases where having to update the bean class such 
as Book.class with all the properties that may need to be supported is not 
practical or the properties need to be managed manually. For example:</p>
@@ -938,12 +963,7 @@ server = sf.create();
         <span class="code-keyword">throws</span> BookNotFoundFault {
         <span class="code-object">String</span> sqlExpression = 
searchContext.getConvertedExpression(expression);
         <span class="code-comment">// pass it to the SQL DB and <span 
class="code-keyword">return</span> the list of Books
-</span>
-        <span class="code-comment">// or instead of registering 
SQLPrinterVisitor, register JPA2TypedQueryVisitor
-</span>        <span class="code-comment">// (see section on JPA2) and <span 
class="code-keyword">do</span>
-</span>        TypedQuery&lt;Book&gt; query = 
searchContext.getConvertedExpression(expression, Book.class, TypedQuery.class);
-        <span class="code-keyword">return</span> query.getResultList();   
-    }
+</span>    }
 }
 </pre>
 </div></div>
@@ -1204,6 +1224,49 @@ assertEquals(<span class="code-quote">"f
 </pre>
 </div></div>
 
+<p>Note, starting from CXF 2.7.1 the following can be used to make connection 
multiple primitive expressions simpler:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent 
panelContent">
+<pre class="code-java">
+<span class="code-comment">// AND condition, '.and(<span 
class="code-quote">"bar"</span>)' is a shortcut <span 
class="code-keyword">for</span> <span 
class="code-quote">"and().is("</span>bar<span class="code-quote">")"</span>, 
similar shortcut is supported <span class="code-keyword">for</span> 'or'
+</span><span class="code-object">String</span> ret = b.is(<span 
class="code-quote">"foo"</span>).greaterThan(20).and(<span 
class="code-quote">"bar"</span>).equalTo(<span 
class="code-quote">"plonk"</span>).query();
+assertEquals(<span class="code-quote">"foo=gt=20;bar==plonk"</span>, ret);
+</pre>
+</div></div>
+
+<p>More updates to the builder API are available on the trunk:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent 
panelContent">
+<pre class="code-java">
+<span class="code-comment">// OR condition
+</span><span class="code-object">String</span> ret = b.is(<span 
class="code-quote">"foo"</span>).equalTo(20).or().is(<span 
class="code-quote">"foo"</span>).equalTo(10).query();
+assertEquals(<span class="code-quote">"foo==20,foo==10"</span>, ret);
+
+<span class="code-comment">// Same query, shorter expression
+</span><span class="code-object">String</span> ret = b.is(<span 
class="code-quote">"foo"</span>).equalTo(20, 10).query();
+assertEquals(<span class="code-quote">"foo==20,foo==10"</span>, ret);
+</pre>
+</div></div> 
+
+<p>and</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent 
panelContent">
+<pre class="code-java">
+<span class="code-comment">// Connecting composite or() and and() expressions 
will add <span class="code-quote">"()"</span> implicitly:
+</span><span class="code-object">String</span> ret = b.is(<span 
class="code-quote">"foo"</span>).equalTo(20, 10).and(<span 
class="code-quote">"bar"</span>).lessThan(10).query();
+assertEquals(<span class="code-quote">"(foo==20,foo==10);bar=lt=10"</span>, 
ret);
+
+<span class="code-comment">// wrap() method can be used to wrap explicitly:
+</span>
+<span class="code-object">String</span> ret = b.is(<span 
class="code-quote">"foo"</span>).equalTo(10).and(<span 
class="code-quote">"bar"</span>).lessThan(10).wrap().or(<span 
class="code-quote">"bar"</span>).greaterThan(25).query();
+assertEquals(<span class="code-quote">"(foo==20;bar=lt=10),bar=gt=25"</span>, 
ret);
+
+
+</pre>
+</div></div> 
+
+
+
 <h2><a shape="rect" 
name="JAX-RSAdvancedFeatures-Usingdatesinqueries"></a>Using dates in 
queries</h2>
 
 <p>By default, the date values have to have the following <a shape="rect" 
class="external-link" 
href="http://download.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html";
 rel="nofollow">format</a>: "yyyy-MM-dd", for example:</p>

Modified: websites/production/cxf/content/docs/jax-rs-xml-security.html
==============================================================================
--- websites/production/cxf/content/docs/jax-rs-xml-security.html (original)
+++ websites/production/cxf/content/docs/jax-rs-xml-security.html Tue Dec 11 
13:48:10 2012
@@ -672,6 +672,8 @@ The following properties can be set on i
 <p>Getting the same SignatureProperties and EncryptionProperties beans (with 
"sigProps" and "encProps" ids) registered with the outbound<br clear="none">
 handlers will ensure that the algorithms used by the current client have not 
only been validated on the inbound side but also used on the outbound side for 
encrypting and signing the data.</p>
 
+<p>Note that from CXF 2.7.1, 2.6.4 and 2.5.7, the XmlEncInHandler will require 
that the RSA-OAEP algorithm be used as the key transport encryption algorithm 
by default. As this algorithm is used by default by the XmlEncOutInterceptor, 
no action is required unless you are specifying a different algorithm on the 
outbound side. In this case, an EncryptionProperties object will need to be 
configured on XmlEncInHandler with the desired key transport algorithm.</p>
+
 <h1><a shape="rect" 
name="JAX-RSXMLSecurity-Interoperability"></a>Interoperability</h1>
 
 <p>The payloads containing the enveloping XML Signatures are structured 
according to the XML Signature specification and as such can be consumed by any 
XML Signature aware consumers capable of handling the enveloping signatures and 
extracting the signed payload. </p>


Reply via email to