Modified:
websites/production/cxf/content/distributed-osgi-greeter-demo-walkthrough.html
==============================================================================
---
websites/production/cxf/content/distributed-osgi-greeter-demo-walkthrough.html
(original)
+++
websites/production/cxf/content/distributed-osgi-greeter-demo-walkthrough.html
Wed Sep 13 15:05:52 2017
@@ -122,7 +122,7 @@ In this walkthrough all the required bun
<p>The <strong>Greeter Interface</strong> bundle exports the
<code>GreeterService</code> interface which both other bundles depend on. This
is the interface:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">public interface GreeterService {
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">public interface GreeterService {
Map<GreetingPhrase, String> greetMe(String name);
GreetingPhrase [] greetMe(GreeterData name) throws GreeterException;
}</pre>
@@ -136,7 +136,7 @@ The client side bundles will be running
<h3 id="DistributedOSGiGreeterDemoWalkthrough-TheServerSide">The Server
Side</h3>
<p>The <strong>Greeter Service</strong> implementation bundle provides a <a
shape="rect" class="external-link"
href="http://svn.apache.org/repos/asf/cxf/dosgi/trunk/samples/greeter/impl/src/main/java/org/apache/cxf/dosgi/samples/greeter/impl/GreeterServiceImpl.java">trivial
implementation of the GreeterService interface</a>. Additionally, it has an <a
shape="rect" class="external-link"
href="http://svn.apache.org/repos/asf/cxf/dosgi/trunk/samples/greeter/impl/src/main/java/org/apache/cxf/dosgi/samples/greeter/impl/Activator.java">Activator</a>:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">public class Activator implements BundleActivator {
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">public class Activator implements BundleActivator {
private ServiceRegistration registration;
public void start(BundleContext bc) throws Exception {
@@ -163,7 +163,7 @@ In this walkthrough I'm using the single
<p>To set up my Felix environment, I'm running the following commands:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">C:\felix-framework-3.0.1>
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">C:\felix-framework-3.0.1>
Welcome to Apache Felix Gogo
g! install
http://repo1.maven.org/maven2/org/osgi/org.osgi.compendium/4.2.0/org.osgi.compendium-4.2.0.jar
@@ -182,7 +182,7 @@ g! lb
<p>Now let's start up the server-side greeter bundles. Like with the DOSGi
bundle itself, I'm installing these straight from the Maven release
repository.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
g! start
http://repo1.maven.org/maven2/org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-greeter-interface/1.2/cxf-dosgi-ri-samples-greeter-interface-1.2.jar
g! start
http://repo1.maven.org/maven2/org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-greeter-impl/1.2/cxf-dosgi-ri-samples-greeter-impl-1.2.jar
... some log messages will appear ...
@@ -217,7 +217,7 @@ This means that the service is successfu
<strong>How does it get there?</strong> The fact that a lookup on a service is
done internally triggers a <strong>Service Registry Hook</strong>. This will go
out to any registered Distributed OSGi Discovery implementations and query them
for any matching services. <br clear="none">
However, <strong>in our setup we haven't yet registered a Discovery
implementation</strong>. There is an alternative, more static way to provide
discovery type information, in case this info is not available via discovery.
It can be specified in a <code>OSGI-INF/remote-service/*.xml</code> file. This
the content of the Greeter Service Consumer <a shape="rect"
class="external-link"
href="http://svn.apache.org/repos/asf/cxf/dosgi/trunk/samples/greeter/client/src/main/resources/OSGI-INF/remote-service/remote-services.xml">remote-services.xml</a>
file:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;"><endpoint-descriptions
xmlns="http://www.osgi.org/xmlns/rsa/v1.0.0">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><endpoint-descriptions
xmlns="http://www.osgi.org/xmlns/rsa/v1.0.0">
<endpoint-description>
<property name="objectClass">
<array>
@@ -234,7 +234,7 @@ However, <strong>in our setup we haven't
As with Felix, we will have to load the bundle with the OSGi compendium
interfaces. There's one that ships with Equinox.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
/eclipse> java -jar plugins/org.eclipse.osgi_3.6.0.v20100517.jar -console
osgi> install install
file:plugins/org.eclipse.osgi.services_3.2.100.v20100503.jar
Bundle id is 1
@@ -249,7 +249,7 @@ osgi> start 2
<p>Some logging messages may appear. You can also automatically load the DOSGi
bundles by appending the target/equinox.config.ini.append to you equinox
config.ini file.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
osgi> install
http://repo1.maven.org/maven2/org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-greeter-interface/1.2/cxf-dosgi-ri-samples-greeter-interface-1.2.jar
Bundle id is 3
osgi> install
http://repo1.maven.org/maven2/org/apache/cxf/dosgi/samples/cxf-dosgi-ri-samples-greeter-client/1.2/cxf-dosgi-ri-samples-greeter-client-1.2.jar
@@ -273,15 +273,15 @@ osgi> start 4</pre>
<p>The window appears once the ServiceTracker in the consumer has received a
callback that the <code>GreeterService</code> has been found. The value entered
will used to invoke the (remote) OSGi service, with a call like this:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">Map<GreetingPhrase, String> result =
greeterService.greetMe("foobar");</pre>
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">Map<GreetingPhrase, String> result =
greeterService.greetMe("foobar");</pre>
</div></div>
<p>I can see that the invocation has been received by the service
implementation as in the Felix window the following appears.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">-> Invoking: greetMe(foobar)</pre>
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">-> Invoking: greetMe(foobar)</pre>
</div></div>
<p>In the Equinox window I can see the response:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">osgi> greetMe("foobar") returns:
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">osgi> greetMe("foobar") returns:
Hola foobar
Bonjour foobar
Hoi foobar
Modified: websites/production/cxf/content/distributed-osgi-reference.html
==============================================================================
--- websites/production/cxf/content/distributed-osgi-reference.html (original)
+++ websites/production/cxf/content/distributed-osgi-reference.html Wed Sep 13
15:05:52 2017
@@ -110,23 +110,23 @@ Apache CXF -- Distributed OSGi Reference
<!-- Content -->
<div class="wiki-content">
<div id="ConfluenceContent"><h1
id="DistributedOSGiReference-DistributedOSGiReferenceGuide">Distributed OSGi
Reference Guide</h1><p><style type="text/css">/*<![CDATA[*/
-div.rbtoc1505243128640 {padding: 0px;}
-div.rbtoc1505243128640 ul {list-style: disc;margin-left: 0px;}
-div.rbtoc1505243128640 li {margin-left: 0px;padding-left: 0px;}
+div.rbtoc1505315020476 {padding: 0px;}
+div.rbtoc1505315020476 ul {list-style: disc;margin-left: 0px;}
+div.rbtoc1505315020476 li {margin-left: 0px;padding-left: 0px;}
-/*]]>*/</style></p><div class="toc-macro rbtoc1505243128640">
+/*]]>*/</style></p><div class="toc-macro rbtoc1505315020476">
<ul class="toc-indentation"><li><a shape="rect"
href="#DistributedOSGiReference-DistributedOSGiReferenceGuide">Distributed OSGi
Reference Guide</a>
<ul class="toc-indentation"><li><a shape="rect"
href="#DistributedOSGiReference-ConfigurationProperties">Configuration
Properties</a>
<ul class="toc-indentation"><li><a shape="rect"
href="#DistributedOSGiReference-ServiceProviderpropertiesForConfiguringSOAP-basedservicesandconsumers">Service
Provider properties For Configuring SOAP-based services and
consumers</a></li><li><a shape="rect"
href="#DistributedOSGiReference-ServiceProviderpropertiesForConfiguringRESTfulJAXRS-basedendpointsandconsumers">Service
Provider properties For Configuring RESTful JAXRS-based endpoints and
consumers</a></li><li><a shape="rect"
href="#DistributedOSGiReference-ServiceConsumerproperties">Service Consumer
properties</a></li></ul>
</li><li><a shape="rect" href="#DistributedOSGiReference-Customintents">Custom
intents</a></li><li><a shape="rect"
href="#DistributedOSGiReference-remote-services.xmlfiles">remote-services.xml
files</a></li><li><a shape="rect"
href="#DistributedOSGiReference-ContributingDistributionpropertiestoExistingServices(withoutchangingthem)">Contributing
Distribution properties to Existing Services (without changing
them)</a></li></ul>
</li></ul>
</div><h2 id="DistributedOSGiReference-ConfigurationProperties">Configuration
Properties</h2><p><strong>New in DOSGI 1.2</strong>: Servlet Filters
(javax.servlet.Filter) can be registered as OSGi services with the
"org.apache.cxf.httpservice.filter" boolean<br clear="none"> property set to
true and used to secure DOSGi server endpoints.Endpoints can enforce the
registration of the filters by setting an
"org.apache.cxf.httpservice.requirefilter" boolean property to
true.</p><p>These properties are set on the Service Registration in the OSGi
Service Registry.</p><h3
id="DistributedOSGiReference-ServiceProviderpropertiesForConfiguringSOAP-basedservicesandconsumers">Service
Provider properties For Configuring SOAP-based services and
consumers</h3><p><strong>Note:</strong> for backwards compatibility old values
marked below are still supported.</p><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1"
class="confluenceTh"><p>Property Name</p></th><t
h colspan="1" rowspan="1" class="confluenceTh"><p>Data Type</p></th><th
colspan="1" rowspan="1" class="confluenceTh"><p>Example</p></th><th colspan="1"
rowspan="1" class="confluenceTh"><p>Description</p></th></tr><tr><td
colspan="1" rowspan="1" class="confluenceTd"><p>service.exported.interfaces<br
clear="none"> (previously:<em>osgi.remote.interfaces</em>)</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1"
class="confluenceTd"><p><code>org.example.BarService,org.example.FooService</code>
<code>*</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Denotes the interfaces to be exposed remotely. This is
a comma-separated list of fully qualified Java interfaces that should be made
available remotely. A special value of <code>*</code> can be provided meaning
that <em>all</em> of the interfaces passed to the
<code>BundleContext.registerService()</code> call are suitable for
remoting.</p></td></tr><tr><td colspan="1" rowspa
n="1" class="confluenceTd"><p>service.exported.configs
(previously:<em>osgi.remote.configuration.type</em>)</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>org.apache.cxf.ws</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Specifies the mechanism for configuring the
service exposure. Possible values:</p><ul><li><code>org.apache.cxf.ws</code>
(previously: <code>pojo</code>) the OSGi Service is exposed as a Web
Service.</li><li><code>wsdl</code> configuration driven from
WSDL</li></ul></td></tr></tbody></table></div><h4
id="DistributedOSGiReference-org.apache.cxf.wsconfigurationtype"><code>org.apache.cxf.ws</code>
configuration type</h4><p>When the
<code>service.exported.configs=org.apache.cxf.ws</code> (or
<code>osgi.remote.configuration.type=pojo</code>) property is specified, the
following properties may also be specified.</p><div class="table-wrap"><table
class="confluenceTable">
<tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Property
Name</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>Data
Type</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Example</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>org.apache.cxf.ws.address<br clear="none">
(previously:<em>osgi.remote.configuration.pojo.address</em>)</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><a shape="rect" class="external-link"
href="http://localhost:9090/greeter"
rel="nofollow">http://localhost:9090/greeter</a></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>The address at which the service with be
made available remotely. If this property is not specified, this defaults to <a
shape="rect" class="external-link"
href="http://localhost:9000/fully/qualified/ClassName" rel="nofollow">http://
localhost:9000/fully/qualified/ClassName</a>.</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>org.apache.cxf.ws.httpservice.context<br
clear="none">
(previously:<em>osgi.remote.configuration.pojo.httpservice.context</em>)</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>/auction</code></p></td><td
colspan="1" rowspan="1" class="external-link confluenceTd"><p>When this
property is specified, the OSGi HTTP Service is used to expose the service,
rather than a dedicated Jetty HTTP Server. This property doesn't allow the
specification of a port number, as this is provided by the HTTP Service. The
Distributed OSGi distributions come with Pax-Web, for which configuration
information can be found at <a shape="rect" class="external-link"
href="http://wiki.ops4j.org/display/paxweb/Configuration"
rel="nofollow">http://wiki.ops4j.org/display/paxweb/Configuration</a>, however
other OSGi HTTP
Service implementations are potentially configured
differently.</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.frontend</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>jaxws</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>The CXF frontend which will be used to create
endpoints. Defaults to 'simple' which is an Aegis-based simple frontend. Note
that for JAXWS to work a javax.jws.* has to be imported into the interface
and/or implementation and client bundles for annotations like @WebService and
@WebMethod be recognized</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.databinding</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>jaxb</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Supported values are 'aeg
is and 'jaxb', defaults to 'aegis'. Note that for JAXB to work JAXB packages
like javax.xml.bind.annotation.* have to be imported</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd">org.apache.cxf.ws.databinding.bean</td><td colspan="1"
rowspan="1" class="confluenceTd">DataBinding</td><td colspan="1" rowspan="1"
class="confluenceTd"> </td><td colspan="1" rowspan="1"
class="confluenceTd">An actual DataBinding instance to use. If not specified, a
default one is created according to the type specified in the
org.apache.cxf.ws.databinding property.</td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>org.apache.cxf.ws.wsdl.location</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>/wsdl/service.wsdl</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>WSDL
location</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.service.ns
</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><a shape="rect" class="external-link"
href="http://services.org" rel="nofollow">http://services.org</a></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>WSDL service
namespace</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.service.name</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>SoapService</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>WSDL service name</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.port.name</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>SoapServicePort</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>WSDL port name</p></td></tr><tr><td
colspan="1
" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.in.interceptors</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String, String[],
List</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>List of CXF in interceptors</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.out.interceptors</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String, String[],
List</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>List of CXF out interceptors</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.in.fault.interceptors</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String, String[],
List</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>List of CXF in fault inte
rceptors</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.out.fault.interceptors</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String, String[],
List</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>List of CXF out fault interceptors</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.ws.features</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String, String[], List, Object</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p> </p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>List of CXF out
features</p></td></tr></tbody></table></div><h3
id="DistributedOSGiReference-ServiceProviderpropertiesForConfiguringRESTfulJAXRS-basedendpointsandconsumers">Service
Provider properties For Configuring RESTful JAXRS-based endpoints and
consumers</h3><h4 id="DistributedOSGiReference-org.apache.cxf.rsconf
igurationtype"><code>org.apache.cxf.rs</code> configuration type</h4><p>When
the <code>service.exported.configs=org.apache.cxf.rs</code> property is
specified, the following properties may also be specified.</p><div
class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1"
rowspan="1" class="confluenceTh"><p>Property Name</p></th><th colspan="1"
rowspan="1" class="confluenceTh"><p>Data Type</p></th><th colspan="1"
rowspan="1" class="confluenceTh"><p>Example</p></th><th colspan="1" rowspan="1"
class="confluenceTh"><p>Description</p></th></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>org.apache.cxf.rs.address</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><a shape="rect" class="external-link"
href="http://localhost:9090/greeter"
rel="nofollow">http://localhost:9090/greeter</a></td><td colspan="1"
rowspan="1" class="external-link confluenceTd"><p>The address at which the
servic
e with be made available remotely. If this property is not specified, this
defaults to <a shape="rect" class="external-link"
href="http://localhost:9000/fully/qualified/ClassName"
rel="nofollow">http://localhost:9000/fully/qualified/ClassName</a>.</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.httpservice.context</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p><code>/auction</code></p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>When this property is
specified, the OSGi HTTP Service which is used to expose the service, rather
than a dedicated Jetty HTTP Server. By default, absolute address may look like
'http://localhost:8080/auction'</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.provider</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Boolean</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p
><code>true/false</code></p></td><td colspan="1" rowspan="1"
>class="confluenceTd"><p>Can be used to identify a global JAXRS provider as
>CXF-compatible</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><p>org.apache.cxf.rs.provider.expected</p></td><td
>colspan="1" rowspan="1" class="confluenceTd"><p>Boolean</p></td><td
>colspan="1" rowspan="1"
>class="confluenceTd"><p><code>true/false</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p>Can be used to require global providers
>to set an 'org.apache.cxf.rs.provider' property with a value
>'true'.</p></td></tr><tr><td colspan="1" rowspan="1"
>class="confluenceTd"><p>org.apache.cxf.rs.provider.globalquery</p></td><td
>colspan="1" rowspan="1" class="confluenceTd"><p>Boolean</p></td><td
>colspan="1" rowspan="1"
>class="confluenceTd"><p><code>true/false</code></p></td><td colspan="1"
>rowspan="1" class="confluenceTd"><p>Can be used to disable queries for global
>providers, defaults to 'true'.</p></td></tr><tr><td colspa
n="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.databinding</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>aegis</code></p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>This property has a limited value for JAXRS services as
JAXB is supported by default, the only supported value is 'aegis' and it is a
shortcut for registering an Aegis provider, see below for more information on
how to register custom providers for JAXRS services</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.wadl.location</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><code>/wadl/service.wadl</code></p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>WADL location</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.provider</p></td><td colspan="1" r
owspan="1" class="confluenceTd"><p>String, String[], List</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p> </p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>List of JAX-RS
providers</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.in.interceptors</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String, String[],
List</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>List of CXF in interceptors</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.out.interceptors</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String, String[],
List</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>List of CXF out interceptors</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.in.fault.interce
ptors</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>String,
String[], List</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>List of CXF in fault interceptors</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.out.fault.interceptors</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p>String, String[],
List</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>List of CXF out fault interceptors</p></td></tr><tr><td
colspan="1" rowspan="1"
class="confluenceTd"><p>org.apache.cxf.rs.features</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>String, String[], List</p></td><td
colspan="1" rowspan="1" class="confluenceTd"><p> </p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>List of CXF out
features</p></td></tr></tbody></table></div><p>Note that by default fo
r JAXRS to work javax.ws.rs.* packages have to be imported into the interface
and/or implementation and client bundles for annotations like @Path and
@Context be recognized. You can avoid importing JAXRS annotations if you
provide an out-of-band <a shape="rect"
href="http://cxf.apache.org/docs/jax-rs.html#JAX-RS-RESTfulserviceswithoutannotations">model</a>.
The way it is done in a greeter_rest demo is described <a shape="rect"
href="http://cxf.apache.org/docs/jax-rs.html#JAX-RS-IntegrationwithDistributedOSGi">here</a>.
The model files can be located in a OSGI-INF/cxf/jaxrs resource folder and can
be named as model.xml or ServiceName-model.xml (ex :
GreeterService-model.xml).<br clear="none"> If you use JAXB and you would like
to avoid importing JAXB packages into your application bundles then you can try
registering a custom JAXB provider which is configured as described <a
shape="rect"
href="http://cxf.apache.org/docs/jax-rs.html#JAX-RS-HandlingJAXBbeanswithoutXmlRootElementannotat
ions">here</a>.</p><h4
id="DistributedOSGiReference-RegisteringcustomJAXRSproviders">Registering
custom JAXRS providers</h4><p>Custom JAXRS providers including CXF-specific
providers can be registered like regular OSGI services, for example :</p><div
class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">Object provider = new CustomMessageBodyReaderWriter();
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">Object provider = new CustomMessageBodyReaderWriter();
bundleContext.registerService(
new String[]{"javax.ws.rs.ext.MessageBodyReader",
"javax.ws.rs.ext.MessageBodyReader"}, provider);
</pre>
</div></div><p>Note that when registering a global provider, one may set an
'org.apache.cxf.rs.provider.expected' on a given service description thus
requiring providers to confirm that they will reliably work with CXF JAX-RS by
setting a 'org.apache.cxf.rs.provider' true property during the registration -
this may be needed when multiple JAX-RS implementations are available and some
custom providers depending on JAXRS implementation specific
code.</p><p>Alternatively, one can register per-service specific providers
during the application service registration :</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">CustomMessageBodyReaderWriter provider1 = new
CustomMessageBodyReaderWriter();
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">CustomMessageBodyReaderWriter provider1 = new
CustomMessageBodyReaderWriter();
provider.setCustomProperty(true);
CustomMessageBodyReaderWriter provider2 = new CustomMessageBodyReaderWriter();
provider2.setCustomProperty(false);
@@ -144,10 +144,10 @@ bundleContext.registerService(
new String[]{"org.books.BookService"}, new AdvancedBookServiceImpl(),
properties2);
</pre>
</div></div><p>Finally, one can declare them using
"org.apache.cxf.rs.provider" :</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;"><property name="org.apache.cxf.rs.provider"
value="org.foo.bar.Provider1,org.foo.bar.Provider2"/>
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><property name="org.apache.cxf.rs.provider"
value="org.foo.bar.Provider1,org.foo.bar.Provider2"/>
</pre>
</div></div><p>or, when using declarative services :</p><div class="code panel
pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;"><property name="org.apache.cxf.rs.provider">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"><property name="org.apache.cxf.rs.provider">
org.foo.bar.Provider1
org.foo.bar.Provider2
</property>
Modified: websites/production/cxf/content/docs/22-migration-guide.html
==============================================================================
--- websites/production/cxf/content/docs/22-migration-guide.html (original)
+++ websites/production/cxf/content/docs/22-migration-guide.html Wed Sep 13
15:05:52 2017
@@ -32,8 +32,8 @@
<link type="text/css" rel="stylesheet"
href="/resources/highlighter/styles/shThemeCXF.css">
<script src='/resources/highlighter/scripts/shCore.js'></script>
-<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
<script src='/resources/highlighter/scripts/shBrushBash.js'></script>
+<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
<script>
SyntaxHighlighter.defaults['toolbar'] = false;
SyntaxHighlighter.all();
@@ -130,7 +130,7 @@ Apache CXF -- 2.2 Migration Guide
<h3 id="id-2.2MigrationGuide-Policyengine">Policy engine</h3>
<p>The Policy engine now defaults to on instead of off. Thus, if you are
using WSDL that contains WS-Policy assertions, those assertions will now be
evaluated by default. If you need to turn it off, update your config to
include:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<cxf:bus>
<cxf:features>
<p:policies enabled="false"/>
Modified: websites/production/cxf/content/docs/23-migration-guide.html
==============================================================================
--- websites/production/cxf/content/docs/23-migration-guide.html (original)
+++ websites/production/cxf/content/docs/23-migration-guide.html Wed Sep 13
15:05:52 2017
@@ -32,8 +32,8 @@
<link type="text/css" rel="stylesheet"
href="/resources/highlighter/styles/shThemeCXF.css">
<script src='/resources/highlighter/scripts/shCore.js'></script>
-<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
<script src='/resources/highlighter/scripts/shBrushBash.js'></script>
+<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
<script>
SyntaxHighlighter.defaults['toolbar'] = false;
SyntaxHighlighter.all();
@@ -127,13 +127,13 @@ Apache CXF -- 2.3 Migration Guide
<h2 id="id-2.3MigrationGuide-APIchanges">API changes</h2>
<ul><li>As part of cleaning up the API's and use of generics in the API's, the
InterceptorProvider API changed it's methods from:
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
List<Interceptor> getOutInterceptors();
</pre>
</div></div>
to
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
List<Interceptor<? extends Message>> getOutInterceptors();
</pre>
</div></div>
Modified: websites/production/cxf/content/docs/aegis-21.html
==============================================================================
--- websites/production/cxf/content/docs/aegis-21.html (original)
+++ websites/production/cxf/content/docs/aegis-21.html Wed Sep 13 15:05:52 2017
@@ -32,9 +32,9 @@
<link type="text/css" rel="stylesheet"
href="/resources/highlighter/styles/shThemeCXF.css">
<script src='/resources/highlighter/scripts/shCore.js'></script>
-<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
-<script src='/resources/highlighter/scripts/shBrushXml.js'></script>
<script src='/resources/highlighter/scripts/shBrushBash.js'></script>
+<script src='/resources/highlighter/scripts/shBrushXml.js'></script>
+<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
<script>
SyntaxHighlighter.defaults['toolbar'] = false;
SyntaxHighlighter.all();
@@ -143,7 +143,7 @@ Apache CXF -- Aegis (2.1)
<p>For example, here is a Simple front-end service using Aegis as a data
binding.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<simple:server id="pojoservice" serviceClass="demo.hw.server.HelloWorld"
address="/hello_world">
<simple:serviceBean>
@@ -180,7 +180,7 @@ Apache CXF -- Aegis (2.1)
<p>As of CXF 2.3, the Aegis databinding can leverage the Schema Validation
capabilities built into the Woodstox 4.x Stax parser to validate incoming
requests. To enable this, you must do the following:</p>
<ol><li>Make sure you are using the Woodstox 4.x Stax parser and not a 3.x or
other parser. By default, CXF 2.3 ships with an appropriate version of
Woodstox.</li><li>If not using the CXF bundle jar, (example, if using maven),
you'll need to add the cxf-wstx-msv-validation-2.3.0.jar to the
classpath</li><li>If not using maven or similar to obtain the
cxf-wstx-msv-validation jar, you'll also need to add the msv validation jars as
CXF does not ship them by default. You will need:
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
isorelax-20030108.jar
msv-core-2009.1.jar
relaxngDatatype-20020414.jar
@@ -190,7 +190,7 @@ xsdlib-2009.1.jar
</pre>
</div></div></li><li>If not using a default bus (such as configuring your own
spring context), you'll need to add:
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<import
resource="classpath:META-INF/cxf/cxf-extension-wstx-msv-validation.xml" />
</pre>
</div></div>
@@ -250,7 +250,7 @@ These type attributes allow Aegis to ide
<p>Here's a quick example of Java code setting these options. In Spring you
would do something analogous with properties. </p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
TypeCreationOptions tOpts = new TypeCreationOptions();
tOpts.setDefaultMinOccurs(1);
tOpts.setDefaultNillable(false);
@@ -283,7 +283,7 @@ sFactory.getServiceFactory().setDataBind
<p>Here is a very simple mapping. It takes a property named 'horse', renames
it to 'feathers', and makes it an attribute instead of an element.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings>
<mapping name="">
<property name="horse" mappedName="Feathers" style="attribute"/>
@@ -297,7 +297,7 @@ sFactory.getServiceFactory().setDataBind
<p>You can also specify the full QName of the bean itself. The following
mapping causes a class to have the QName
{urn:north-pole:operations}Employee.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings xmlns:np="urn:north-pole:operations">
<mapping name="np:Employee">
</mapping>
@@ -310,7 +310,7 @@ sFactory.getServiceFactory().setDataBind
<p>This will result in a mapping like so:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<np:Employee xmlns:np="urn:north-pole:operations">
<np:Name>Santa Claus</np:Name>
<np:Title>Chief Present Officer (CPO)</np:Title>
@@ -323,7 +323,7 @@ sFactory.getServiceFactory().setDataBind
<p>If you don't want to serialize a certain property it is easy to ignore
it:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings>
<mapping>
<property name="propertyName" ignore="true"/>
@@ -337,7 +337,7 @@ sFactory.getServiceFactory().setDataBind
<p>The default Aegis mapping is to assume that, since any Java object can be
null, that the corresponding schema elements should have minOccurs of 0 and
nillable of true. There are properties on the mappings for to control this.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings>
<mapping>
<property name='everpresentProperty' minOccurs='1' nillable='false'/>
@@ -353,7 +353,7 @@ sFactory.getServiceFactory().setDataBind
<p>By default, for example, if Aegis maps a property as a Date, it uses the
XML schema type xsd:dateTime. Here is an example that uses xsd:date,
instead.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<mapping>
<property name="birthDate"
@@ -380,7 +380,7 @@ sFactory.getServiceFactory().setDataBind
<p>This example specifies that getUnannotatedStrings returns an element named
UnannotatedStringCollection which is a raw collection of String values. It then
specifies the first parameter of getValues is also a raw collection of String
values.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings>
<mapping>
<method name="getUnannotatedStrings">
Modified: websites/production/cxf/content/docs/aegis-databinding-20x.html
==============================================================================
--- websites/production/cxf/content/docs/aegis-databinding-20x.html (original)
+++ websites/production/cxf/content/docs/aegis-databinding-20x.html Wed Sep 13
15:05:52 2017
@@ -32,9 +32,9 @@
<link type="text/css" rel="stylesheet"
href="/resources/highlighter/styles/shThemeCXF.css">
<script src='/resources/highlighter/scripts/shCore.js'></script>
-<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
-<script src='/resources/highlighter/scripts/shBrushXml.js'></script>
<script src='/resources/highlighter/scripts/shBrushBash.js'></script>
+<script src='/resources/highlighter/scripts/shBrushXml.js'></script>
+<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
<script>
SyntaxHighlighter.defaults['toolbar'] = false;
SyntaxHighlighter.all();
@@ -142,7 +142,7 @@ Apache CXF -- Aegis Databinding (2.0.x)
<p>Most people who use Aegis use the 'Simple' front end. </p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<simple:server id="pojoservice" serviceClass="demo.hw.server.HelloWorld"
address="/hello_world">
<simple:serviceBean>
<bean class="demo.hw.server.HelloWorldImpl" />
@@ -166,7 +166,7 @@ Apache CXF -- Aegis Databinding (2.0.x)
<p>You can also use Aegis with JAX-WS. Here's a Spring configuration example
for that.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<bean id="aegisBean"
class="org.apache.cxf.aegis.databinding.AegisDatabinding"
scope="prototype"/>
<bean id="jaxws-and-aegis-service-factory"
class="org.apache.cxf.jaxws.support.JaxWsServiceFactoryBean"
@@ -205,7 +205,7 @@ Apache CXF -- Aegis Databinding (2.0.x)
<p>Here's a Java configuration using the Simple front end. </p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
import org.apache.cxf.aegis.databinding.AegisDatabinding;
import org.apache.cxf.frontend.ServerFactoryBean;
@@ -221,7 +221,7 @@ sf.create();
parameters names from Java reflection. As always, Java interfaces don't carry
parameter names, and this results in names like 'arg0', 'arg1', etc, which
don't match the service.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
import org.apache.cxf.aegis.databinding.AegisDatabinding;
import org.apache.cxf.frontend.ClientProxyFactoryBean;
@@ -241,7 +241,7 @@ If you need to interoperate with XFire,
an additional service configuration class to your service configuration:
XFireCompatibilityServiceConfiguration (in 2.0.x, AegisServiceConfiguration).
<br clear="none">
The spring example above shows the necessary configuration in a comment. For
the client side in Java, you need to add the service configuration to the
service factory as follows:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
import org.apache.cxf.aegis.databinding.AegisServiceConfiguration;
// for 2.0.x
sf.getServiceFactory().getServiceConfigurations().add(0, new
AegisServiceConfiguration());
@@ -259,7 +259,7 @@ sf.getServiceFactory().getServiceConfigu
<p>Fore example, the java class:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
public class Employee
{
private String name;
@@ -275,7 +275,7 @@ public class Employee
</div></div>
<p>In XML this translates to:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<Employee xmlns="http://xfire.codehaus.org">
<name>Santa Claus</name>
<title>Chief Present Officer (CPO)</title>
@@ -284,7 +284,7 @@ public class Employee
</div></div>
<p>In XML Schema this would become a complex type:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<xsd:complexType name="Employee">
<xsd:sequence>
<xsd:element name="name" type="xsd:string" minOccurs="0"
maxOccurs="1/>
@@ -310,7 +310,7 @@ public class Employee
<p>If you have many properties, and you want most, or all of them, to have a
minOccurs other than 0 or a nillable other than <strong>false</strong>, you can
change the defaults for Aegis from Java code (amongst other places).<br
clear="none">
Here is an example: it extracts the binding provider from the service factory,
and changes the configuration parameters.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
ServerFactoryBean sf = new ServerFactoryBean();
sf.setServiceClass(serviceClass);
sf.setAddress("http://myhost/service");
Modified: websites/production/cxf/content/docs/aegis-mapping-files.html
==============================================================================
--- websites/production/cxf/content/docs/aegis-mapping-files.html (original)
+++ websites/production/cxf/content/docs/aegis-mapping-files.html Wed Sep 13
15:05:52 2017
@@ -32,9 +32,9 @@
<link type="text/css" rel="stylesheet"
href="/resources/highlighter/styles/shThemeCXF.css">
<script src='/resources/highlighter/scripts/shCore.js'></script>
-<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
-<script src='/resources/highlighter/scripts/shBrushXml.js'></script>
<script src='/resources/highlighter/scripts/shBrushBash.js'></script>
+<script src='/resources/highlighter/scripts/shBrushXml.js'></script>
+<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
<script>
SyntaxHighlighter.defaults['toolbar'] = false;
SyntaxHighlighter.all();
@@ -124,7 +124,7 @@ Apache CXF -- Aegis Mapping Files
<p>Mapping files must exist in the same package as your bean or service class
on the class path. In the above example the mapping file would be named
"/org/codehaus/xfire/Employee.aegis.xml", with the following format:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings>
<mapping uri="" name="">
<method name="methodName">
@@ -145,7 +145,7 @@ Apache CXF -- Aegis Mapping Files
<p>Lets pretend that in the above example you would like the elements names to
be capatilized and in the namespace "urn:north-pole:operations". You could
achieve this through a mapping file like so:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings xmlns:np="urn:north-pole:operations">
<mapping name="np:Employee">
<property name="name" mappedName="Name"/>
@@ -158,7 +158,7 @@ Apache CXF -- Aegis Mapping Files
<p>This will result in a mapping like so:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<np:Employee xmlns:np="urn:north-pole:operations">
<np:Name>Santa Claus</np:Name>
<np:Title>Chief Present Officer (CPO)</np:Title>
@@ -170,7 +170,7 @@ Apache CXF -- Aegis Mapping Files
<p>If you don't want to serialize a certain property it is easy to ignore
it:</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings>
<mapping>
<property name="propertyName" ignore="true"/>
@@ -183,7 +183,7 @@ Apache CXF -- Aegis Mapping Files
<p>The default Aegis mapping is to assume that, since any Java object can be
<strong>null</strong>, that the corresponding schema elements should have
minOccurs of 0 and nillable of true. There are properties on the mappings for
to control this.</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings>
<mapping>
<property name='everpresentProperty' minOccurs='1' nillable='false'/>
@@ -197,7 +197,7 @@ Apache CXF -- Aegis Mapping Files
<p>In order to make use of the various types that Aegis provides in the
"org.apache.cxf.aegis.type.basic" package, follow this example which allows the
wsdl to use the "xsd:date" instead of the "xsd:dateTime".</p>
<div class="code panel pdl" style="border-width: 1px;"><div class="codeContent
panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<mappings xmlns:xsd="http://www.w3.org/2001/XMLSchema">
<mapping>
<property name="birthDate"
Modified: websites/production/cxf/content/docs/annotated-aegis-file-schema.html
==============================================================================
--- websites/production/cxf/content/docs/annotated-aegis-file-schema.html
(original)
+++ websites/production/cxf/content/docs/annotated-aegis-file-schema.html Wed
Sep 13 15:05:52 2017
@@ -117,7 +117,7 @@ Apache CXF -- Annotated Aegis File Schem
<!-- Content -->
<div class="wiki-content">
<div id="ConfluenceContent"><div class="code panel pdl" style="border-width:
1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">
<?xml version="1.0" encoding="UTF-8"?>
<!--
Licensed to the Apache Software Foundation (ASF) under one
Modified: websites/production/cxf/content/docs/annotations.html
==============================================================================
--- websites/production/cxf/content/docs/annotations.html (original)
+++ websites/production/cxf/content/docs/annotations.html Wed Sep 13 15:05:52
2017
@@ -32,8 +32,8 @@
<link type="text/css" rel="stylesheet"
href="/resources/highlighter/styles/shThemeCXF.css">
<script src='/resources/highlighter/scripts/shCore.js'></script>
-<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
<script src='/resources/highlighter/scripts/shBrushBash.js'></script>
+<script src='/resources/highlighter/scripts/shBrushJava.js'></script>
<script>
SyntaxHighlighter.defaults['toolbar'] = false;
SyntaxHighlighter.all();
@@ -118,7 +118,7 @@ Apache CXF -- Annotations
<!-- Content -->
<div class="wiki-content">
<div id="ConfluenceContent"><p>CXF provides several custom annotations that
can be used to configure and customize the CXF runtime.</p><h3
id="Annotations-org.apache.cxf.feature.Features">org.apache.cxf.feature.Features</h3><p>The
@Features annotation is used to add <a shape="rect"
href="features.html">Features</a>. See the <a shape="rect"
href="featureslist.html">FeaturesList</a> for the list of Features we provide
"out of the box", but you can easily create your own. In many cases, however,
those features have Annotations themselves which can be used and provide
greater control over configuration.</p><h3
id="Annotations-org.apache.cxf.interceptor.InInterceptors,org.apache.cxf.interceptor.OutInterceptors,org.apache.cxf.interceptor.OutFaultInterceptors,org.apache.cxf.interceptor.InFaultInterceptors">org.apache.cxf.interceptor.InInterceptors,
<br clear="none" class="atl-forced-newline">
org.apache.cxf.interceptor.OutInterceptors, <br clear="none"
class="atl-forced-newline"> org.apach
e.cxf.interceptor.OutFaultInterceptors, <br clear="none"
class="atl-forced-newline">
org.apache.cxf.interceptor.InFaultInterceptors</h3><p>Add interceptors to the
various chains used to process messages. See <a shape="rect"
href="interceptors.html">Interceptors</a> for more detail.</p><p><span
class="confluence-anchor-link"
id="Annotations-WSDLDocumentation"></span></p><h3
id="Annotations-org.apache.cxf.annotations.WSDLDocumentationorg.apache.cxf.annotations.WSDLDocumentationCollection(since2.3)">org.apache.cxf.annotations.WSDLDocumentation
<br clear="none" class="atl-forced-newline">
org.apache.cxf.annotations.WSDLDocumentationCollection (since 2.3)</h3><p>For
"java first" scenarios where the WSDL is derived from the Java interfaces/code,
these annotations allow adding wsd:documentation elements to various locations
in the generated wsdl.</p><p>For example:</p><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">@WebService
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">@WebService
@WSDLDocumentationCollection(
{
@WSDLDocumentation("My portType documentation"),
@@ -136,7 +136,7 @@ public interface MyService {
}
</pre>
</div></div><p><span class="confluence-anchor-link"
id="Annotations-SchemaValidation"></span></p><h3
id="Annotations-org.apache.cxf.annotations.SchemaValidation(since2.3)">org.apache.cxf.annotations.SchemaValidation
(since 2.3)</h3><p>Turns on SchemaValidation for messages. By default, for
performance reasons, CXF does not validate message against the schema. By
turning on validation, problems with messages not matching the schema are
easier to determine.   These annotations can be applied globally to
the SEI, but also can be applied at method level in both the SEI and
Implementation.</p><p> </p><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><td colspan="1" rowspan="1"
class="confluenceTd">IN</td><td colspan="1" rowspan="1"
class="confluenceTd">Apply schema validation to INcoming messages on client and
server</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">REQUEST</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>(Since 2.7.
14, 3.0.3, 3.1</strong>) Apply schema validation to Request messages. 
This annotation will cause validation to be applied to OUTgoing Client
messages, and INcoming Server messages.</td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd">OUT</td><td colspan="1" rowspan="1"
class="confluenceTd">Apply schema validation to OUTgoing messages on Client and
Server</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">RESPONSE</td><td colspan="1" rowspan="1"
class="confluenceTd"><strong>(Since 2.7.14, 3.0.3, 3.1)</strong> Apply schema
validation to Response messages.  This annotation will cause validation to
be applied to INcoming Client messages, and OUTgoing Server
messages.</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">BOTH</td><td colspan="1" rowspan="1"
class="confluenceTd">Apply schema validation to both INcoming and OUTgoing
messages on Client and Server</td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd">NONE</td><td colspan="1" row
span="1" class="confluenceTd">All schema validation is
disabled.</td></tr></tbody></table></div><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: java; gutter: false; theme: Confluence"
style="font-size:12px;">@WebService
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">@WebService
@SchemaValidation(type = SchemaValidationType.BOTH)
public interface MyService {
Foo validateBoth(Bar data);
@@ -157,7 +157,7 @@ public interface MyService {
Foo validateResponse(Bar data);
}</pre>
</div></div><p> </p><p><span class="confluence-anchor-link"
id="Annotations-DataBinding"></span></p><h3
id="Annotations-org.apache.cxf.annotations.DataBinding(since2.2.4)">org.apache.cxf.annotations.DataBinding
(since 2.2.4)</h3><p>Sets the DataBinding class that is associated with the
service. By default, CXF assumes you are using the JAXB data binding. However,
CXF supports different databindings such as XMLBeans, Aegis, SDO, and possibly
more. This annotation can be used in place of configuration to select the
databinding class.</p><div class="code panel pdl" style="border-width:
1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">@DataBinding(org.apache.cxf.sdo.SDODataBinding.class)
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">@DataBinding(org.apache.cxf.sdo.SDODataBinding.class)
public interface MyService {
public commonj.sdo.DataObject echoStruct(
commonj.sdo.DataObject struct
@@ -165,7 +165,7 @@ public interface MyService {
}
</pre>
</div></div><p><span class="confluence-anchor-link"
id="Annotations-Logging"></span></p><h3
id="Annotations-org.apache.cxf.annotations.Logging(since2.3)">org.apache.cxf.annotations.Logging
(since 2.3)</h3><p>Turns on logging for the endpoint. Can be used to control
the size limits of what gets logged as well as the location. It supports the
following attributes:</p><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>limit</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Sets the size limit after which the message is
truncated in the logs. Default is 64K</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>inLocation</p></td><td colspan="1"
rowspan="1" class="confluenceTd"><p>Sets the location to log incoming messages.
Can be <stderr>, <stdout>, <logger>, or a file: URL. Default
is <logger></p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>outLocatio
n</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Sets the
location to log outgoing messages. Can be <stderr>, <stdout>,
<logger>, or a file: URL. Default is
<logger></p></td></tr></tbody></table></div><div class="code panel pdl"
style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">@Logging(limit=16000, inLocation="<stdout>")
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">@Logging(limit=16000, inLocation="<stdout>")
public interface MyService {
String echoString(String s);
@@ -173,7 +173,7 @@ public interface MyService {
}
</pre>
</div></div><p><span class="confluence-anchor-link"
id="Annotations-GZIP"></span></p><h3
id="Annotations-org.apache.cxf.annotations.GZIP(since2.3)">org.apache.cxf.annotations.GZIP
(since 2.3)</h3><p>Enables GZIP compression of on-the-wire data. Supported
attributes:</p><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>threshold</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>the threshold under which messages are not
gzipped</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>force</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>force GZIP compression instead of negotiating via the
Accept-Encoding header</p></td></tr></tbody></table></div><p>GZIP is a
negotiated enhancement. An initial request from a client will not be gzipped,
but an Accept header will be added and if the server supports it, the response
will be gzipped and any subsequent requests will be.</p><p><span class=
"confluence-anchor-link" id="Annotations-FastInfoset"></span></p><h3
id="Annotations-org.apache.cxf.annotations.FastInfoset(since2.3)">org.apache.cxf.annotations.FastInfoset
(since 2.3)</h3><p>Enables FastInfoset of on-the-wire data. Supported
attributes:</p><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>force</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>forces the use of fastinfoset instead of negotiating.
Default is false</p></td></tr></tbody></table></div><p>FastInfoset is a
negotiated enhancement. An initial request from a client will not be in
fastinfoset, but an Accept header will be added and if the server supports it,
the response will be in fastinfoset and any subsequent requests will
be.</p><p><span class="confluence-anchor-link"
id="Annotations-EndpointProperty"></span></p><h3
id="Annotations-org.apache.cxf.annotations.EndpointPropertyorg.apache.cxf.annotations.EndpointProperties(since2.
3)">org.apache.cxf.annotations.EndpointProperty <br clear="none"
class="atl-forced-newline"> org.apache.cxf.annotations.EndpointProperties
(since 2.3)</h3><p>Adds a property to an endpoint. Many things such as
WS-Security related things and such can be configured via endpoint properties.
Traditionally, these would be set via the <jaxws:properties> element on
the <jaxws:endpoint> element in the spring config, but these annotations
allow these properties to be configured into the code.</p><div class="code
panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">@WebService
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">@WebService
@EndpointProperties(
{
@EndpointProperty(key = "my.property", value="some value"),
@@ -184,7 +184,7 @@ public interface MyService {
}
</pre>
</div></div><p><span class="confluence-anchor-link"
id="Annotations-Policy"></span></p><h3
id="Annotations-org.apache.cxf.annotations.Policyorg.apache.cxf.annotations.Policies(since2.3)">org.apache.cxf.annotations.Policy
<br clear="none" class="atl-forced-newline">
org.apache.cxf.annotations.Policies (since 2.3)</h3><p>Used to attach WS-Policy
fragments to a service or operation. The Policy supports the
attributes:</p><div class="table-wrap"><table
class="confluenceTable"><tbody><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>uri</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p><strong>REQUIRED</strong> the location of the file
containing the Policy definition</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>includeInWSDL</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>Whether to include the policy in the generated WSDL
when generating a wsdl. Default is true</p></td></tr><tr><td colspan="1"
rowspan="1" class="confluenceTd"><p>place
ment</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p>Specify where
to place the policy</p></td></tr><tr><td colspan="1" rowspan="1"
class="confluenceTd"><p>faultClass</p></td><td colspan="1" rowspan="1"
class="confluenceTd"><p>if placement is a FAULT, this specifies which fault the
policy would apply to</p></td></tr></tbody></table></div><div
class="confluence-information-macro confluence-information-macro-note"><span
class="aui-icon aui-icon-small aui-iconfont-warning
confluence-information-macro-icon"></span><div
class="confluence-information-macro-body"><p>When using a custom Spring
configuration, you need to import
META-INF/cxf/cxf-extension-policy.xml</p></div></div><div class="code panel
pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;">@Policies({
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;">@Policies({
@Policy(uri = "annotationpolicies/TestInterfacePolicy.xml"),
@Policy(uri = "annotationpolicies/TestImplPolicy.xml",
placement = Policy.Placement.SERVICE_PORT),
@@ -213,7 +213,7 @@ public static interface TestInterface {
</pre>
</div></div><p><span class="confluence-anchor-link"
id="Annotations-Policy"></span></p><h3
id="Annotations-org.apache.cxf.annotations.UseAsyncMethod(since2.6.0)">org.apache.cxf.annotations.UseAsyncMethod
(since 2.6.0)</h3><p>Used on the JAX-WS service implementation object to mark
a method as preferring the 'async' version of the method instead of the
synchronous version. With JAX-WS, services default to the synchronous methods
that require the returning value to be returned from the method. By marking a
method with the @UseAsyncMethod annotation, if the transport supports it, CXF
will call the async version that takes an AsynHandler object and the service
can call that handler when the response is ready. If the transport does not
support the CXF continuations, the synchronous method will be called as
normal.</p><div class="code panel pdl" style="border-width: 1px;"><div
class="codeContent panelContent pdl">
-<pre class="brush: bash; gutter: false; theme: Confluence"
style="font-size:12px;"> @UseAsyncMethod
+<pre class="brush: java; gutter: false; theme: Default"
style="font-size:12px;"> @UseAsyncMethod
public String greetMeSometime(String me) {
LOG.info("Executing operation greetMeSometime synchronously");
System.out.println("Executing operation greetMeSometime
synchronously\n");