Author: buildbot
Date: Thu Nov 21 18:48:22 2013
New Revision: 887578
Log:
Production update by buildbot for cxf
Modified:
websites/production/cxf/content/cache/docs.pageCache
websites/production/cxf/content/docs/30-migration-guide.html
websites/production/cxf/content/docs/jax-rs-basics.html
websites/production/cxf/content/docs/jax-rs.html
Modified: websites/production/cxf/content/cache/docs.pageCache
==============================================================================
Binary files - no diff available.
Modified: websites/production/cxf/content/docs/30-migration-guide.html
==============================================================================
--- websites/production/cxf/content/docs/30-migration-guide.html (original)
+++ websites/production/cxf/content/docs/30-migration-guide.html Thu Nov 21
18:48:22 2013
@@ -140,6 +140,9 @@ Apache CXF -- 3.0 Migration Guide
<ul><li>CXF JAX-RS Form extension has been dropped, please use JAX-RS 2.0
Form.</li></ul>
+<ul><li>CXF JAX-RS ParameterHandler has been dropped, please use JAX-RS 2.0
ParamConverterProvider.</li></ul>
+
+
<h4><a shape="rect" name="3.0MigrationGuide-JAXWS%2FSoap"></a>JAX-WS/Soap</h4>
<ul><li>Add new code generator frontend to add CXF specific constructors and
methods. (pass "-fe cxf" to wsdl2java)</li></ul>
Modified: websites/production/cxf/content/docs/jax-rs-basics.html
==============================================================================
--- websites/production/cxf/content/docs/jax-rs-basics.html (original)
+++ websites/production/cxf/content/docs/jax-rs-basics.html Thu Nov 21 18:48:22
2013
@@ -133,7 +133,7 @@ Apache CXF -- JAX-RS Basics
<div id="ConfluenceContent"><p><span style="font-size:2em;font-weight:bold">
JAX-RS : Understanding the Basics </span></p>
<div>
-<ul><li><a shape="rect" href="#JAX-RSBasics-WhatisNewinJAXRS2.0">What is New
in JAX-RS 2.0</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-Filters">Filters</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-Server">Server</a></li><li><a shape="rect"
href="#JAX-RSBasics-Client">Client</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-Interceptors">Interceptors</a></li><li><a shape="rect"
href="#JAX-RSBasics-DynamicFeatures">Dynamic Features</a></li><li><a
shape="rect" href="#JAX-RSBasics-Exceptions">Exceptions</a></li><li><a
shape="rect" href="#JAX-RSBasics-Suspendedinvocations">Suspended
invocations</a></li><li><a shape="rect"
href="#JAX-RSBasics-Parameterconverters">Parameter converters</a></li><li><a
shape="rect" href="#JAX-RSBasics-Beanparameters">Bean parameters</a></li><li><a
shape="rect" href="#JAX-RSBasics-Updatestothematchingalgorithm">Updates to the
matching algorithm</a></li><li><a shape="rect"
href="#JAX-RSBasics-Injectionintosubresources">Injection into subresour
ces</a></li><li><a shape="rect" href="#JAX-RSBasics-ClientAPI">Client
API</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-AsynchronousInvocations">Asynchronous
Invocations</a></li><li><a shape="rect"
href="#JAX-RSBasics-Responseinterfaceupdates">Response interface
updates</a></li></ul></ul><li><a shape="rect"
href="#JAX-RSBasics-Resourceclass">Resource class</a></li><li><a shape="rect"
href="#JAX-RSBasics-@Path">@Path</a></li><li><a shape="rect"
href="#JAX-RSBasics-HTTPMethod">HTTP Method</a></li><li><a shape="rect"
href="#JAX-RSBasics-Returntypes">Return types</a></li><li><a shape="rect"
href="#JAX-RSBasics-Exceptionhandling">Exception handling</a></li><ul><li><a
shape="rect"
href="#JAX-RSBasics-MappingexceptionsthrownfromCXFinterceptors">Mapping
exceptions thrown from CXF interceptors</a></li><li><a shape="rect"
href="#JAX-RSBasics-CustomizingdefaultWebApplicationExceptionmapper">Customizing
default WebApplicationException mapper</a></li></ul><li><a shape="rect"
href="#JAX-RSB
asics-DealingwithParameters">Dealing with Parameters</a></li><ul><li><a
shape="rect" href="#JAX-RSBasics-Parameterbeans">Parameter
beans</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-Resourcelifecycles">Resource lifecycles</a></li><li><a
shape="rect" href="#JAX-RSBasics-Overviewoftheselectionalgorithm.">Overview of
the selection algorithm.</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-Selectingbetweenmultipleresourceclasses">Selecting between
multiple resource classes</a></li><li><a shape="rect"
href="#JAX-RSBasics-Selectingbetweenmultipleresourcemethods">Selecting between
multiple resource methods</a></li><li><a shape="rect"
href="#JAX-RSBasics-Resourcemethodsandmediatypes">Resource methods and media
types</a></li><li><a shape="rect"
href="#JAX-RSBasics-Customselectionbetweenmultipleresources">Custom selection
between multiple resources</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-Contextannotations">Context annotations</a></li><ul><li><a
shape="rect" href="#JA
X-RSBasics-CustomContexts">Custom Contexts</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-URIcalculationusingUriInfoandUriBuilder">URI calculation
using UriInfo and UriBuilder</a></li><li><a shape="rect"
href="#JAX-RSBasics-Annotationinheritance">Annotation
inheritance</a></li><li><a shape="rect"
href="#JAX-RSBasics-Subresourcelocators.">Sub-resource
locators.</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-Staticresolutionofsubresources">Static resolution of
subresources</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-MessageBodyProviders">Message Body
Providers</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-CustomMessageBodyProviders">Custom Message Body
Providers</a></li><li><a shape="rect"
href="#JAX-RSBasics-Registeringcustomproviders">Registering custom
providers</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-Customizingmediatypesformessagebodyproviders">Customizing
media types for message body providers</a></li><li><a shape="rect"
href="#JAX-RSBasics
-AdvancedHTTP">Advanced HTTP</a></li></ul></div>
+<ul><li><a shape="rect" href="#JAX-RSBasics-WhatisNewinJAXRS2.0">What is New
in JAX-RS 2.0</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-Filters">Filters</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-Server">Server</a></li><li><a shape="rect"
href="#JAX-RSBasics-Client">Client</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-Interceptors">Interceptors</a></li><li><a shape="rect"
href="#JAX-RSBasics-DynamicFeatures">Dynamic Features</a></li><li><a
shape="rect" href="#JAX-RSBasics-Exceptions">Exceptions</a></li><li><a
shape="rect" href="#JAX-RSBasics-Suspendedinvocations">Suspended
invocations</a></li><li><a shape="rect"
href="#JAX-RSBasics-Parameterconverters">Parameter converters</a></li><li><a
shape="rect" href="#JAX-RSBasics-Beanparameters">Bean parameters</a></li><li><a
shape="rect" href="#JAX-RSBasics-ResourceInfo">ResourceInfo</a></li><li><a
shape="rect" href="#JAX-RSBasics-Injectionintosubresources">Injection into
subresources</a></li><li><a shape="rect" href="
#JAX-RSBasics-Updatestothematchingalgorithm">Updates to the matching
algorithm</a></li><li><a shape="rect" href="#JAX-RSBasics-ClientAPI">Client
API</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-Resourceclass">Resource class</a></li><li><a shape="rect"
href="#JAX-RSBasics-@Path">@Path</a></li><li><a shape="rect"
href="#JAX-RSBasics-HTTPMethod">HTTP Method</a></li><li><a shape="rect"
href="#JAX-RSBasics-Returntypes">Return types</a></li><li><a shape="rect"
href="#JAX-RSBasics-Exceptionhandling">Exception handling</a></li><ul><li><a
shape="rect"
href="#JAX-RSBasics-MappingexceptionsthrownfromCXFinterceptors">Mapping
exceptions thrown from CXF interceptors</a></li><li><a shape="rect"
href="#JAX-RSBasics-CustomizingdefaultWebApplicationExceptionmapper">Customizing
default WebApplicationException mapper</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-DealingwithParameters">Dealing with
Parameters</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-Parameterbeans">Parameter be
ans</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-Resourcelifecycles">Resource lifecycles</a></li><li><a
shape="rect" href="#JAX-RSBasics-Overviewoftheselectionalgorithm.">Overview of
the selection algorithm.</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-Selectingbetweenmultipleresourceclasses">Selecting between
multiple resource classes</a></li><li><a shape="rect"
href="#JAX-RSBasics-Selectingbetweenmultipleresourcemethods">Selecting between
multiple resource methods</a></li><li><a shape="rect"
href="#JAX-RSBasics-Resourcemethodsandmediatypes">Resource methods and media
types</a></li><li><a shape="rect"
href="#JAX-RSBasics-Customselectionbetweenmultipleresources">Custom selection
between multiple resources</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-Contextannotations">Context annotations</a></li><ul><li><a
shape="rect" href="#JAX-RSBasics-CustomContexts">Custom
Contexts</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-URIcalculationusingUriInfoandUriBuild
er">URI calculation using UriInfo and UriBuilder</a></li><li><a shape="rect"
href="#JAX-RSBasics-Annotationinheritance">Annotation
inheritance</a></li><li><a shape="rect"
href="#JAX-RSBasics-Subresourcelocators.">Sub-resource
locators.</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-Staticresolutionofsubresources">Static resolution of
subresources</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-MessageBodyProviders">Message Body
Providers</a></li><ul><li><a shape="rect"
href="#JAX-RSBasics-CustomMessageBodyProviders">Custom Message Body
Providers</a></li><li><a shape="rect"
href="#JAX-RSBasics-Registeringcustomproviders">Registering custom
providers</a></li></ul><li><a shape="rect"
href="#JAX-RSBasics-Customizingmediatypesformessagebodyproviders">Customizing
media types for message body providers</a></li><li><a shape="rect"
href="#JAX-RSBasics-AdvancedHTTP">Advanced HTTP</a></li></ul></div>
<h1><a shape="rect" name="JAX-RSBasics-WhatisNewinJAXRS2.0"></a>What is New in
JAX-RS 2.0</h1>
@@ -197,14 +197,50 @@ Apache CXF -- JAX-RS Basics
<h2><a shape="rect" name="JAX-RSBasics-Parameterconverters"></a>Parameter
converters</h2>
-<p><a shape="rect" class="external-link"
href="https://jax-rs-spec.java.net/nonav/2.0/apidocs/javax/ws/rs/ext/ParamConverterProvider.html"
rel="nofollow">ParamConverterProvider</a> can be used to manage the conversion
of custom Objects to String and vice versa on the server and client sides, when
processing JAX-RS parameters representing URI parts or headers and when a
default conversion mechanism does not work. For example, java.util.Date
constructor accepting a String may have to be replaced a custom ParamConverter.
</p>
+<p><a shape="rect" class="external-link"
href="https://jax-rs-spec.java.net/nonav/2.0/apidocs/javax/ws/rs/ext/ParamConverterProvider.html"
rel="nofollow">ParamConverterProvider</a> can be used to manage the conversion
of custom Objects to String and vice versa on the server and client sides, when
processing JAX-RS parameters representing URI parts or headers or form elements
and when a default conversion mechanism does not work. For example,
java.util.Date constructor accepting a String may have to be replaced a custom
ParamConverter. </p>
<h2><a shape="rect" name="JAX-RSBasics-Beanparameters"></a>Bean parameters</h2>
-<h2><a shape="rect"
name="JAX-RSBasics-Updatestothematchingalgorithm"></a>Updates to the matching
algorithm</h2>
+
+<p><a shape="rect" class="external-link"
href="https://jax-rs-spec.java.net/nonav/2.0/apidocs/javax/ws/rs/BeanParam.html"
rel="nofollow">BeanParam</a> can be used to get JAX-RS parameters representing
URI parts or headers or form elements and also contexts injected into a single
bean container. </p>
+
+<p>Note the CXF extension supporting the injection of all the parameters of
specific JAX-RS type (example, QueryParam("") MyBean) is different, it only
allows to get all the query parameters injected, but it also does not require
that bean properties are annotated with QueryParam/etc annotations.</p>
+
+<h2><a shape="rect" name="JAX-RSBasics-ResourceInfo"></a>ResourceInfo</h2>
+
+<p><a shape="rect" class="external-link"
href="https://jax-rs-spec.java.net/nonav/2.0/apidocs/javax/ws/rs/container/ResourceInfo.html"
rel="nofollow">ResourceInfo</a> is a new JAX-RS context which can be injected
into filters and interceptors and checked which resource class and method are
about to be invoked.</p>
+
<h2><a shape="rect"
name="JAX-RSBasics-Injectionintosubresources"></a>Injection into
subresources</h2>
+
+<p>Subresources can get JAX-RS contexts injected directly into their fields
with the help of <a shape="rect" class="external-link"
href="https://jax-rs-spec.java.net/nonav/2.0/apidocs/javax/ws/rs/container/ResourceContext.html"
rel="nofollow">ResourceContext</a>. </p>
+
+<p>When possible, having a parent resource injecting the contexts into a given
subresource instance via a setter or constructor can offer a much simpler
alternative.</p>
+
+<h2><a shape="rect"
name="JAX-RSBasics-Updatestothematchingalgorithm"></a>Updates to the matching
algorithm</h2>
+
+<p>JAX-RS 2.0 supports a proper resource method selection in cases where
multiple root resource classes have the same Path value, for example:</p>
+
+<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
+<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
+@Path("/")
+public class Root1 {
+ @Path("/1")
+ @GET
+ public Response get() {...}
+}
+
+@Path("/")
+public class Root2 {
+ @Path("/2")
+ @GET
+ public Response get() {...}
+}
+]]></script>
+</div></div>
+
+<p>In JAX-RS 1.1 a request with URI such as "/1" is not guaranteed to be
matched and in CXF 2.7.x or earlier the use of CXF specific ResourceComparator
is required to ensure Root1 and its get() method gets selected. In CXF 3.0.0
Root1 get() will always be correctly selected. Note ResourceComparator may
still be of help in some cases even in CXF 3.0.0. </p>
+
<h2><a shape="rect" name="JAX-RSBasics-ClientAPI"></a>Client API</h2>
-<h3><a shape="rect"
name="JAX-RSBasics-AsynchronousInvocations"></a>Asynchronous Invocations</h3>
-<h3><a shape="rect" name="JAX-RSBasics-Responseinterfaceupdates"></a>Response
interface updates</h3>
+<p>JAX-RS 2.0 Client API has been completely implemented in CXF 3.0.0, please
see the <a shape="rect"
href="http://cxf.apache.org/docs/jax-rs-client-api.html#JAX-RSClientAPI-JAXRS2.0ClientAPI">Client
API page</a> for more information.</p>
<h1><a shape="rect" name="JAX-RSBasics-Resourceclass"></a>Resource class</h1>
Modified: websites/production/cxf/content/docs/jax-rs.html
==============================================================================
--- websites/production/cxf/content/docs/jax-rs.html (original)
+++ websites/production/cxf/content/docs/jax-rs.html Thu Nov 21 18:48:22 2013
@@ -175,7 +175,9 @@ in CXF 3.0.0. Here are more details on t
<p>2. CXF org.apache.cxf.jaxrs.ext.form.Form has been dropped, please use
JAX-RS 2.0 <a shape="rect" class="external-link"
href="https://jax-rs-spec.java.net/nonav/2.0/apidocs/javax/ws/rs/core/Form.html"
rel="nofollow">Form</a> instead. </p>
-<p>3. JAX-RS 2.0 introduces a controversial requirement that the default
built-in JAX-RS MessageBodyWriter and JAX-RS MessageBodyReader providers are
<b>preferred</b> to custom providers supporting the same types unless the
custom providers are precisely typed, for example, if you have a custom
InputStream reader properly implementing isReadable:</p>
+<p>3. CXF ParameterHandler has been dropped. Please use <a shape="rect"
class="external-link"
href="https://jax-rs-spec.java.net/nonav/2.0/apidocs/javax/ws/rs/ext/ParamConverterProvider.html"
rel="nofollow">ParameterConverterProvider</a> instead, it can be used both on
the server and client sides.</p>
+
+<p>4. JAX-RS 2.0 introduces a controversial requirement that the default
built-in JAX-RS MessageBodyWriter and JAX-RS MessageBodyReader providers are
<b>preferred</b> to custom providers supporting the same types unless the
custom providers are precisely typed, for example, if you have a custom
InputStream reader properly implementing isReadable:</p>
<div class="code panel" style="border-width: 1px;"><div class="codeContent
panelContent">
<script class="theme: Default; brush: java; gutter: false"
type="syntaxhighlighter"><![CDATA[
@@ -212,7 +214,7 @@ public void upload(@Multipart InputStrea
]]></script>
</div></div>
-<p>4. If the custom code throws JAX-RS WebApplicationException with Response
containing a non-null entity then custom WebApplicationException mappers will
be bypassed - another problematic requirement, for example, the custom mappers
doing the logging will miss on such exceptions.<br clear="none">
+<p>5. If the custom code throws JAX-RS WebApplicationException with Response
containing a non-null entity then custom WebApplicationException mappers will
be bypassed - another problematic requirement, for example, the custom mappers
doing the logging will miss on such exceptions.<br clear="none">
Set CXF "support.wae.spec.optimization" property to false to disable it. </p>
<h3><a shape="rect" name="JAX-RS-FromCXF2.6.xtoCXF2.7.x"></a>From CXF 2.6.x to
CXF 2.7.x</h3>