Author: dkulp Date: Mon Sep 11 19:56:29 2017 New Revision: 1018013 Log: Do a manual update
Added: websites/production/cxf/content/cxf-3015-release-notes.html websites/production/cxf/content/cxf-3113-release-notes.html websites/production/cxf/content/docs/using-opentracing.data/ websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-12:41:7.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-13:18:20.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:10:40.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:19:1.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:26:23.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:37:31.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:40:20.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:46:4.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:49:4.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:50:2.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:54:2.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:55:0.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:58:53.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-14:9:7.png (with props) websites/production/cxf/content/docs/using-opentracing.data/image2017-9-10-15:0:49.png (with props) websites/production/cxf/content/docs/using-opentracing.html Modified: websites/production/cxf/content/cache/docs.pageCache websites/production/cxf/content/cache/main.pageCache websites/production/cxf/content/docs/32-migration-guide.html websites/production/cxf/content/docs/cxf-architecture.html websites/production/cxf/content/docs/distributed-tracing.html websites/production/cxf/content/docs/jax-rs-basics.html websites/production/cxf/content/docs/jax-rs-rxjava.html websites/production/cxf/content/docs/jaxrs-services-description.html websites/production/cxf/content/docs/springboot.html websites/production/cxf/content/docs/swagger2feature.html websites/production/cxf/content/docs/using-openzipkin-brave.html websites/production/cxf/content/download.html websites/production/cxf/content/source-repository.html Modified: websites/production/cxf/content/cache/docs.pageCache ============================================================================== Binary files - no diff available. Modified: websites/production/cxf/content/cache/main.pageCache ============================================================================== Binary files - no diff available. Added: websites/production/cxf/content/cxf-3015-release-notes.html ============================================================================== --- websites/production/cxf/content/cxf-3015-release-notes.html (added) +++ websites/production/cxf/content/cxf-3015-release-notes.html Mon Sep 11 19:56:29 2017 @@ -0,0 +1,149 @@ + +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<html> + <head> + +<link type="text/css" rel="stylesheet" href="/resources/site.css"> +<script src='/resources/space.js'></script> + +<meta http-equiv="Content-type" content="text/html;charset=UTF-8"> +<meta name="keywords" content="business integration, EAI, SOA, Service Oriented Architecture, web services, SOAP, JBI, JMS, WSDL, XML, EDI, Electronic Data Interchange, standards support, integration standards, application integration, middleware, software, solutions, services, CXF, open source"> +<meta name="description" content="Apache CXF, Services Framework - CXF 3.0.15 Release Notes"> + + + + + <title> +Apache CXF -- CXF 3.0.15 Release Notes + </title> + </head> +<body onload="init()"> + + +<table width="100%" cellpadding="0" cellspacing="0"> + <tr> + <td id="cell-0-0" colspan="2"> </td> + <td id="cell-0-1"> </td> + <td id="cell-0-2" colspan="2"> </td> + </tr> + <tr> + <td id="cell-1-0"> </td> + <td id="cell-1-1"> </td> + <td id="cell-1-2"> + <!-- Banner --> +<div class="banner" id="banner"><div><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td align="left" colspan="1" nowrap> +<a shape="rect" href="http://cxf.apache.org/" title="Apache CXF"><span style="font-weight: bold; font-size: 170%; color: white">Apache CXF</span></a> +</td><td align="right" colspan="1" nowrap> +<a shape="rect" href="http://www.apache.org/" title="The Apache Software Foundation"><img border="0" alt="ASF Logo" src="http://cxf.apache.org/images/asf-logo.png"></a> +</td></tr></table></div></div> + <!-- Banner --> + <div id="top-menu"> + <table border="0" cellpadding="1" cellspacing="0" width="100%"> + <tr> + <td> + <div align="left"> + <!-- Breadcrumbs --> +<a href="index.html">Index</a> > <a href="download.html">Download</a> > <a href="cxf-3015-release-notes.html">CXF 3.0.15 Release Notes</a> + <!-- Breadcrumbs --> + </div> + </td> + <td> + <div align="right"> + <!-- Quicklinks --> +<div id="quicklinks"><p><a shape="rect" href="download.html">Download</a> | <a shape="rect" href="http://cxf.apache.org/docs/index.html">Documentation</a></p></div> + <!-- Quicklinks --> + </div> + </td> + </tr> + </table> + </div> + </td> + <td id="cell-1-3"> </td> + <td id="cell-1-4"> </td> + </tr> + <tr> + <td id="cell-2-0" colspan="2"> </td> + <td id="cell-2-1"> + <table> + <tr valign="top"> + <td height="100%"> + <div id="wrapper-menu-page-right"> + <div id="wrapper-menu-page-top"> + <div id="wrapper-menu-page-bottom"> + <div id="menu-page"> + <!-- NavigationBar --> +<div id="navigation"><h3 id="Navigation-ApacheCXF"><a shape="rect" href="index.html">Apache CXF</a></h3><ul class="alternate"><li><a shape="rect" href="index.html">Home</a></li><li><a shape="rect" href="download.html">Download</a></li><li><a shape="rect" href="people.html">People</a></li><li><a shape="rect" href="project-status.html">Project Status</a></li><li><a shape="rect" href="roadmap.html">Roadmap</a></li><li><a shape="rect" href="mailing-lists.html">Mailing Lists</a></li><li><a shape="rect" class="external-link" href="http://issues.apache.org/jira/browse/CXF">Issue Reporting</a></li><li><a shape="rect" href="special-thanks.html">Special Thanks</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/licenses/">License</a></li><li><a shape="rect" href="security-advisories.html">Security Advisories</a></li></ul><h3 id="Navigation-Users">Users</h3><ul class="alternate"><li><a shape="rect" href="http://cxf.apache.org/docs/index.html">User's Guide</a></li><li> <a shape="rect" href="support.html">Support</a></li><li><a shape="rect" href="faq.html">FAQ</a></li><li><a shape="rect" href="resources-and-articles.html">Resources and Articles</a></li></ul><h3 id="Navigation-Search">Search</h3><form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse"><div> <input type="hidden" name="cx" value="002890367768291051730:o99qiwa09y4"> <input type="hidden" name="ie" value="UTF-8"> <input type="text" name="q" size="21"> <input type="submit" name="sa" value="Search"> </div> </form> <script type="text/javascript" src="http://www.google.com/cse/brand?form=cse-search-box&lang=en"></script> <h3 id="Navigation-Developers">Developers</h3><ul class="alternate"><li><a shape="rect" href="http://cxf.apache.org/docs/cxf-architecture.html">Architecture Guide</a></li><li><a shape="rect" href="source-repository.html">Source Repository</a></li><li><a shape="rect" href="building.html">Building</a></li><li><a shape="rect" href="automated-builds.html">Automated Builds</a></li><li><a shape="rect" href="testing-debugging.html">Testing-Debugging</a></li><li><a shape="rect" href="coding-guidelines.html">Coding Guidelines</a></li><li><a shape="rect" href="getting-involved.html">Getting Involved</a></li><li><a shape="rect" href="release-management.html">Release Management</a></li></ul><h3 id="Navigation-Subprojects">Subprojects</h3><ul class="alternate"><li><a shape="rect" href="distributed-osgi.html">Distributed OSGi</a></li><li><a shape="rect" href="xjc-utils.html">XJC Utils</a></li><li><a shape="rect" href="build-utils.html">Build Utils</a></li><li><a shape="rect" href="fediz.html">Fediz</a></li></ul><h3 id="Navigation-ASF"><a shape="rect" class="external-link" href="http://www.apache.org">ASF</a></h3><ul class="alternate"><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/how-it-works.html">How Apache Works</a></li><li><a shape="rect" class="external-link" href ="http://www.apache.org/foundation/">Foundation</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/sponsorship.html">Sponsor Apache</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/thanks.html">Thanks</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/security/">Security</a></li></ul><p> </p><p><a shape="rect" class="external-link" href="http://www.apache.org/events/current-event.html"><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource" src="http://www.apache.org/events/current-event-125x125.png" data-image-src="http://www.apache.org/events/current-event-125x125.png"></span></a></p></div> + <!-- NavigationBar --> + </div> + </div> + </div> + </div> + </td> + <td height="100%"> + <!-- Content --> + <div class="wiki-content"> +<div id="ConfluenceContent"><h1 id="CXF3.0.15ReleaseNotes-CXF3.0.15ReleaseNotes">CXF 3.0.15 Release Notes</h1><h2 id="CXF3.0.15ReleaseNotes-Overview">Overview</h2><p>Apache CXF 3.0.15 delivers the latest set of patches and bug fixes for Apache CXF 3.0.x. This release fixes 15 JIRA issues that have been reported by users.</p><h2 id="CXF3.0.15ReleaseNotes-Download">Download</h2><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>MD5</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>Source distribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi?path=/cxf/3.0.15/apache-cxf-3.0.15-src.tar.gz">apache-cxf-3.0.15-src.tar.gz</a></p></td><td colspan="1" rowspan="1" class="conflu enceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/cxf/3.0.15/apache-cxf-3.0.15-src.tar.gz.md5">apache-cxf-3.0.15-src.tar.gz.md5</a></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi?path=/cxf/3.0.15/apache-cxf-3.0.15-src.zip">apache-cxf-3.0.15-src.zip</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/cxf/3.0.15/apache-cxf-3.0.15-src.zip.md5">apache-cxf-3.0.15-src.zip.md5</a></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>Binary distribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi?path=/cxf/3.0.15/apache-cxf-3.0.15.tar.gz">apache-cxf-3.0.15.tar.gz</a></p></td><td colspan="1" rowspan=" 1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/cxf/3.0.15/apache-cxf-3.0.15.tar.gz.md5">apache-cxf-3.0.15.tar.gz.md5</a></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi?path=/cxf/3.0.15/apache-cxf-3.0.15.zip">apache-cxf-3.0.15.zip</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/cxf/3.0.15/apache-cxf-3.0.15.zip.md5">apache-cxf-3.0.15.zip.md5</a></p></td></tr></tbody></table></div><h2 id="CXF3.0.15ReleaseNotes-InstallationPrerequisites">Installation Prerequisites</h2><p>Before installing Apache CXF, make sure the following products,<br clear="none"> with the specified versions, are installed on your system:</p><ul><li>Java 6 Development Kit</li><li>Maven 3.0.6 or later</li></ul><h3 i d="CXF3.0.15ReleaseNotes-Java6DevelopmentKit">Java 6 Development Kit</h3><p>You must install the J2SE Development Kit (JDK) 6.0, which can be downloaded<br clear="none"> from:</p><p><a shape="rect" class="external-link" href="http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html" rel="nofollow">http://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-javase6-419409.html</a></p><p>After installing the JDK, set or modify the following environment variables:</p><ul><li>JAVA_HOME – set this environment variable<br clear="none"> to point at the root directory of the JDK 6.0 installation.</li></ul><ul><li>PATH – make sure that your PATH includes:<br clear="none"> %JAVA_HOME%\bin (Windows) <br clear="none"> $JAVA_HOME/bin (UNIX)</li></ul><h2 id="CXF3.0.15ReleaseNotes-BuildingtheSamples">Building the Samples</h2><p>Building the samples included in the binary distribution is easy. Change to<br clea r="none"> the samples directory and follow the build instructions in the README.txt file <br clear="none"> included with each sample.</p><h2 id="CXF3.0.15ReleaseNotes-ReportingProblems">Reporting Problems</h2><p>If you have any problems or want to send feedback of any kind, please e-mail the<br clear="none"> cxf dev list, d...@cxf.apache.org. You can also file issues in JIRA at:</p><p><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CXF">https://issues.apache.org/jira/browse/CXF</a></p><h2 id="CXF3.0.15ReleaseNotes-Changelog">Changelog</h2><p>For a more detailed view of new features and bug fixes, see the <a shape="rect" class="external-link" href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310511&version=12341024">release notes</a>.</p></div> + </div> + <!-- Content --> + </td> + </tr> + </table> + </td> + <td id="cell-2-2" colspan="2"> </td> + </tr> + <tr> + <td id="cell-3-0"> </td> + <td id="cell-3-1"> </td> + <td id="cell-3-2"> + <div id="footer"> + <!-- Footer --> + <div id="site-footer"> + <a href="http://cxf.apache.org/privacy-policy.html">Privacy Policy</a> - + (<a href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=73637681">edit page</a>) + (<a href="https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=73637681&showComments=true&showCommentArea=true#addcomment">add comment</a>)<br> + Apache CXF, CXF, Apache, the Apache feather logo are trademarks of The Apache Software Foundation.<br> + All other marks mentioned may be trademarks or registered trademarks of their respective owners. + </div> + <!-- Footer --> + </div> + </td> + <td id="cell-3-3"> </td> + <td id="cell-3-4"> </td> + </tr> + <tr> + <td id="cell-4-0" colspan="2"> </td> + <td id="cell-4-1"> </td> + <td id="cell-4-2" colspan="2"> </td> + </tr> +</table> + +<script type="text/javascript"> +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); +</script> +<script type="text/javascript"> +try { +var pageTracker = _gat._getTracker("UA-4458903-1"); +pageTracker._trackPageview(); +} catch(err) {}</script> + +</body> +</html> + Added: websites/production/cxf/content/cxf-3113-release-notes.html ============================================================================== --- websites/production/cxf/content/cxf-3113-release-notes.html (added) +++ websites/production/cxf/content/cxf-3113-release-notes.html Mon Sep 11 19:56:29 2017 @@ -0,0 +1,149 @@ + +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<!-- + + Licensed to the Apache Software Foundation (ASF) under one or more + contributor license agreements. See the NOTICE file distributed with + this work for additional information regarding copyright ownership. + The ASF licenses this file to You under the Apache License, Version 2.0 + (the "License"); you may not use this file except in compliance with + the License. You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> +<html> + <head> + +<link type="text/css" rel="stylesheet" href="/resources/site.css"> +<script src='/resources/space.js'></script> + +<meta http-equiv="Content-type" content="text/html;charset=UTF-8"> +<meta name="keywords" content="business integration, EAI, SOA, Service Oriented Architecture, web services, SOAP, JBI, JMS, WSDL, XML, EDI, Electronic Data Interchange, standards support, integration standards, application integration, middleware, software, solutions, services, CXF, open source"> +<meta name="description" content="Apache CXF, Services Framework - CXF 3.1.13 Release Notes"> + + + + + <title> +Apache CXF -- CXF 3.1.13 Release Notes + </title> + </head> +<body onload="init()"> + + +<table width="100%" cellpadding="0" cellspacing="0"> + <tr> + <td id="cell-0-0" colspan="2"> </td> + <td id="cell-0-1"> </td> + <td id="cell-0-2" colspan="2"> </td> + </tr> + <tr> + <td id="cell-1-0"> </td> + <td id="cell-1-1"> </td> + <td id="cell-1-2"> + <!-- Banner --> +<div class="banner" id="banner"><div><table border="0" cellpadding="0" cellspacing="0" width="100%"><tr><td align="left" colspan="1" nowrap> +<a shape="rect" href="http://cxf.apache.org/" title="Apache CXF"><span style="font-weight: bold; font-size: 170%; color: white">Apache CXF</span></a> +</td><td align="right" colspan="1" nowrap> +<a shape="rect" href="http://www.apache.org/" title="The Apache Software Foundation"><img border="0" alt="ASF Logo" src="http://cxf.apache.org/images/asf-logo.png"></a> +</td></tr></table></div></div> + <!-- Banner --> + <div id="top-menu"> + <table border="0" cellpadding="1" cellspacing="0" width="100%"> + <tr> + <td> + <div align="left"> + <!-- Breadcrumbs --> +<a href="index.html">Index</a> > <a href="download.html">Download</a> > <a href="cxf-3113-release-notes.html">CXF 3.1.13 Release Notes</a> + <!-- Breadcrumbs --> + </div> + </td> + <td> + <div align="right"> + <!-- Quicklinks --> +<div id="quicklinks"><p><a shape="rect" href="download.html">Download</a> | <a shape="rect" href="http://cxf.apache.org/docs/index.html">Documentation</a></p></div> + <!-- Quicklinks --> + </div> + </td> + </tr> + </table> + </div> + </td> + <td id="cell-1-3"> </td> + <td id="cell-1-4"> </td> + </tr> + <tr> + <td id="cell-2-0" colspan="2"> </td> + <td id="cell-2-1"> + <table> + <tr valign="top"> + <td height="100%"> + <div id="wrapper-menu-page-right"> + <div id="wrapper-menu-page-top"> + <div id="wrapper-menu-page-bottom"> + <div id="menu-page"> + <!-- NavigationBar --> +<div id="navigation"><h3 id="Navigation-ApacheCXF"><a shape="rect" href="index.html">Apache CXF</a></h3><ul class="alternate"><li><a shape="rect" href="index.html">Home</a></li><li><a shape="rect" href="download.html">Download</a></li><li><a shape="rect" href="people.html">People</a></li><li><a shape="rect" href="project-status.html">Project Status</a></li><li><a shape="rect" href="roadmap.html">Roadmap</a></li><li><a shape="rect" href="mailing-lists.html">Mailing Lists</a></li><li><a shape="rect" class="external-link" href="http://issues.apache.org/jira/browse/CXF">Issue Reporting</a></li><li><a shape="rect" href="special-thanks.html">Special Thanks</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/licenses/">License</a></li><li><a shape="rect" href="security-advisories.html">Security Advisories</a></li></ul><h3 id="Navigation-Users">Users</h3><ul class="alternate"><li><a shape="rect" href="http://cxf.apache.org/docs/index.html">User's Guide</a></li><li> <a shape="rect" href="support.html">Support</a></li><li><a shape="rect" href="faq.html">FAQ</a></li><li><a shape="rect" href="resources-and-articles.html">Resources and Articles</a></li></ul><h3 id="Navigation-Search">Search</h3><form enctype="application/x-www-form-urlencoded" method="get" id="cse-search-box" action="http://www.google.com/cse"><div> <input type="hidden" name="cx" value="002890367768291051730:o99qiwa09y4"> <input type="hidden" name="ie" value="UTF-8"> <input type="text" name="q" size="21"> <input type="submit" name="sa" value="Search"> </div> </form> <script type="text/javascript" src="http://www.google.com/cse/brand?form=cse-search-box&lang=en"></script> <h3 id="Navigation-Developers">Developers</h3><ul class="alternate"><li><a shape="rect" href="http://cxf.apache.org/docs/cxf-architecture.html">Architecture Guide</a></li><li><a shape="rect" href="source-repository.html">Source Repository</a></li><li><a shape="rect" href="building.html">Building</a></li><li><a shape="rect" href="automated-builds.html">Automated Builds</a></li><li><a shape="rect" href="testing-debugging.html">Testing-Debugging</a></li><li><a shape="rect" href="coding-guidelines.html">Coding Guidelines</a></li><li><a shape="rect" href="getting-involved.html">Getting Involved</a></li><li><a shape="rect" href="release-management.html">Release Management</a></li></ul><h3 id="Navigation-Subprojects">Subprojects</h3><ul class="alternate"><li><a shape="rect" href="distributed-osgi.html">Distributed OSGi</a></li><li><a shape="rect" href="xjc-utils.html">XJC Utils</a></li><li><a shape="rect" href="build-utils.html">Build Utils</a></li><li><a shape="rect" href="fediz.html">Fediz</a></li></ul><h3 id="Navigation-ASF"><a shape="rect" class="external-link" href="http://www.apache.org">ASF</a></h3><ul class="alternate"><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/how-it-works.html">How Apache Works</a></li><li><a shape="rect" class="external-link" href ="http://www.apache.org/foundation/">Foundation</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/sponsorship.html">Sponsor Apache</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/foundation/thanks.html">Thanks</a></li><li><a shape="rect" class="external-link" href="http://www.apache.org/security/">Security</a></li></ul><p> </p><p><a shape="rect" class="external-link" href="http://www.apache.org/events/current-event.html"><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-external-resource" src="http://www.apache.org/events/current-event-125x125.png" data-image-src="http://www.apache.org/events/current-event-125x125.png"></span></a></p></div> + <!-- NavigationBar --> + </div> + </div> + </div> + </div> + </td> + <td height="100%"> + <!-- Content --> + <div class="wiki-content"> +<div id="ConfluenceContent"><h1 id="CXF3.1.13ReleaseNotes-CXF3.1.13ReleaseNotes">CXF 3.1.13 Release Notes</h1><h2 id="CXF3.1.13ReleaseNotes-Overview">Overview</h2><p>Apache CXF 3.1.13 delivers the latest set of patches and bug fixes for Apache CXF 3.1.x. This release fixes over 35 JIRA issues that have been reported by users.</p><h2 id="CXF3.1.13ReleaseNotes-Download">Download</h2><div class="table-wrap"><table class="confluenceTable"><tbody><tr><th colspan="1" rowspan="1" class="confluenceTh"><p>Description</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>File</p></th><th colspan="1" rowspan="1" class="confluenceTh"><p>MD5</p></th></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>Source distribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi?path=/cxf/3.1.13/apache-cxf-3.1.13-src.tar.gz">apache-cxf-3.1.13-src.tar.gz</a></p></td><td colspan="1" rowspan="1" class="c onfluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/cxf/3.1.13/apache-cxf-3.1.13-src.tar.gz.md5">apache-cxf-3.1.13-src.tar.gz.md5</a></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi?path=/cxf/3.1.13/apache-cxf-3.1.13-src.zip">apache-cxf-3.1.13-src.zip</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/cxf/3.1.13/apache-cxf-3.1.13-src.zip.md5">apache-cxf-3.1.13-src.zip.md5</a></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p>Binary distribution</p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi?path=/cxf/3.1.13/apache-cxf-3.1.13.tar.gz">apache-cxf-3.1.13.tar.gz</a></p></td><td colspan="1" rows pan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/cxf/3.1.13/apache-cxf-3.1.13.tar.gz.md5">apache-cxf-3.1.13.tar.gz.md5</a></p></td></tr><tr><td colspan="1" rowspan="1" class="confluenceTd"><p> </p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dyn/closer.cgi?path=/cxf/3.1.13/apache-cxf-3.1.13.zip">apache-cxf-3.1.13.zip</a></p></td><td colspan="1" rowspan="1" class="confluenceTd"><p><a shape="rect" class="external-link" href="http://www.apache.org/dist/cxf/3.1.13/apache-cxf-3.1.13.zip.md5">apache-cxf-3.1.13.zip.md5</a></p></td></tr></tbody></table></div><h2 id="CXF3.1.13ReleaseNotes-InstallationPrerequisites">Installation Prerequisites</h2><p>Before installing Apache CXF, make sure the following products,<br clear="none"> with the specified versions, are installed on your system:</p><ul><li>Java 7 or 8 Development Kit</li><li>Maven 3.1 or later</li></ ul><h3 id="CXF3.1.13ReleaseNotes-JavaDevelopmentKit">Java Development Kit</h3><p>You must install the J2SE Development Kit (JDK) 7.0 or 8.0, which can be downloaded<br clear="none"> from:</p><p><a shape="rect" class="external-link" href="http://www.oracle.com/technetwork/java/javase/downloads/index.html" rel="nofollow">http://www.oracle.com/technetwork/java/javase/downloads/index.html</a></p><p>After installing the JDK, set or modify the following environment variables:</p><ul><li>JAVA_HOME – set this environment variable<br clear="none"> to point at the root directory of the Java installation.</li></ul><ul><li>PATH – make sure that your PATH includes:<br clear="none"> %JAVA_HOME%\bin (Windows) <br clear="none"> $JAVA_HOME/bin (UNIX)</li></ul><h2 id="CXF3.1.13ReleaseNotes-BuildingtheSamples">Building the Samples</h2><p>Building the samples included in the binary distribution is easy. Change to<br clear="none"> the samples directory and follow the build instructions in th e README.txt file <br clear="none"> included with each sample.</p><h2 id="CXF3.1.13ReleaseNotes-ReportingProblems">Reporting Problems</h2><p>If you have any problems or want to send feedback of any kind, please e-mail the<br clear="none"> cxf dev list, d...@cxf.apache.org. You can also file issues in JIRA at:</p><p><a shape="rect" class="external-link" href="https://issues.apache.org/jira/browse/CXF">https://issues.apache.org/jira/browse/CXF</a></p><h2 id="CXF3.1.13ReleaseNotes-Changelog">Changelog</h2><p>For a more detailed view of new features and bug fixes, see the <a shape="rect" class="external-link" href="https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310511&version=12341023">release notes</a>.</p></div> + </div> + <!-- Content --> + </td> + </tr> + </table> + </td> + <td id="cell-2-2" colspan="2"> </td> + </tr> + <tr> + <td id="cell-3-0"> </td> + <td id="cell-3-1"> </td> + <td id="cell-3-2"> + <div id="footer"> + <!-- Footer --> + <div id="site-footer"> + <a href="http://cxf.apache.org/privacy-policy.html">Privacy Policy</a> - + (<a href="https://cwiki.apache.org/confluence/pages/editpage.action?pageId=73637684">edit page</a>) + (<a href="https://cwiki.apache.org/confluence/pages/viewpage.action?pageId=73637684&showComments=true&showCommentArea=true#addcomment">add comment</a>)<br> + Apache CXF, CXF, Apache, the Apache feather logo are trademarks of The Apache Software Foundation.<br> + All other marks mentioned may be trademarks or registered trademarks of their respective owners. + </div> + <!-- Footer --> + </div> + </td> + <td id="cell-3-3"> </td> + <td id="cell-3-4"> </td> + </tr> + <tr> + <td id="cell-4-0" colspan="2"> </td> + <td id="cell-4-1"> </td> + <td id="cell-4-2" colspan="2"> </td> + </tr> +</table> + +<script type="text/javascript"> +var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); +document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); +</script> +<script type="text/javascript"> +try { +var pageTracker = _gat._getTracker("UA-4458903-1"); +pageTracker._trackPageview(); +} catch(err) {}</script> + +</body> +</html> + Modified: websites/production/cxf/content/docs/32-migration-guide.html ============================================================================== --- websites/production/cxf/content/docs/32-migration-guide.html (original) +++ websites/production/cxf/content/docs/32-migration-guide.html Mon Sep 11 19:56:29 2017 @@ -107,7 +107,7 @@ Apache CXF -- 3.2 Migration Guide <td height="100%"> <!-- Content --> <div class="wiki-content"> -<div id="ConfluenceContent"><h3 id="id-3.2MigrationGuide-MajorChanges:">Major Changes:</h3><ul><li>CXF 3.2.x now requires Java 8.  Support for previous versions of Java has been dropped.</li><li>Jetty has been upgraded to 9.3.x.</li><li>Woodstox has been updated to 5.0.x which is in a different group id and has a different artifactId.  It's possible that you may pull in multiple versions of woodstox via other dependencies.</li><li>Swagger 1.x (package com.wordnik) is no longer supported, please update to Swagger 2 (package io.swagger).<br clear="none"> </li></ul><p> </p></div> +<div id="ConfluenceContent"><h3 id="id-3.2MigrationGuide-MajorChanges:">Major Changes:</h3><ul><li>CXF 3.2.x now requires Java 8.  Support for previous versions of Java has been dropped.</li><li>Jetty has been upgraded to 9.4.x.</li><li>Woodstox has been updated to 5.0.x which is in a different group id and has a different artifactId.  It's possible that you may pull in multiple versions of woodstox via other dependencies.</li><li>Swagger 1.x (package com.wordnik) is no longer supported, please update to Swagger 2 (package io.swagger).</li><li>New java2swagger Maven plugin</li><li>JAX-RS support updated to latest 2.1 spec</li><li>New WS-Transfer implementation</li><li>Old management-web module removed</li><li>jibx, sdo, and xmlbeans databindings removed</li><li>"object binding" removed (coloc binding handles most of these use cases)</li><li>Enhanced tracing support<br clear="none"> </li></ul><p> </p></div> </div> <!-- Content --> </td> Modified: websites/production/cxf/content/docs/cxf-architecture.html ============================================================================== --- websites/production/cxf/content/docs/cxf-architecture.html (original) +++ websites/production/cxf/content/docs/cxf-architecture.html Mon Sep 11 19:56:29 2017 @@ -117,11 +117,11 @@ Apache CXF -- CXF Architecture <!-- Content --> <div class="wiki-content"> <div id="ConfluenceContent"><h1 id="CXFArchitecture-ApacheCXFSoftwareArchitectureGuide">Apache CXF Software Architecture Guide</h1><p>This document provides an architectural overview of the Apache CXF services framework.</p><h2 id="CXFArchitecture-TableofContents">Table of Contents</h2><p><style type="text/css">/*<![CDATA[*/ -div.rbtoc1490636832619 {padding: 0px;} -div.rbtoc1490636832619 ul {list-style: outline;margin-left: 0px;} -div.rbtoc1490636832619 li {margin-left: 0px;padding-left: 0px;} +div.rbtoc1505159700292 {padding: 0px;} +div.rbtoc1505159700292 ul {list-style: outline;margin-left: 0px;} +div.rbtoc1505159700292 li {margin-left: 0px;padding-left: 0px;} -/*]]>*/</style></p><div class="toc-macro rbtoc1490636832619"> +/*]]>*/</style></p><div class="toc-macro rbtoc1505159700292"> <ul class="toc-indentation"><li><a shape="rect" href="#CXFArchitecture-ApacheCXFSoftwareArchitectureGuide">Apache CXF Software Architecture Guide</a> <ul class="toc-indentation"><li><a shape="rect" href="#CXFArchitecture-TableofContents">Table of Contents</a></li><li><a shape="rect" href="#CXFArchitecture-ArchitecturalGoalsandConstraints">Architectural Goals and Constraints</a></li><li><a shape="rect" href="#CXFArchitecture-CXF-API">CXF-API</a> <ul class="toc-indentation"><li><a shape="rect" href="#CXFArchitecture-Bus">Bus</a></li><li><a shape="rect" href="#CXFArchitecture-Howservicecallsareprocessed">How service calls are processed</a></li><li><a shape="rect" href="#CXFArchitecture-Front-ends">Front-ends</a></li><li><a shape="rect" href="#CXFArchitecture-Messaging&Interceptors">Messaging & Interceptors</a></li><li><a shape="rect" href="#CXFArchitecture-TheServiceModel">The Service Model</a></li><li><a shape="rect" href="#CXFArchitecture-DataBindings">Data Bindings</a></li><li><a shape="rect" href="#CXFArchitecture-ProtocolBindings">Protocol Bindings</a></li><li><a shape="rect" href="#CXFArchitecture-Transports">Transports</a></li><li><a shape="rect" href="#CXFArchitecture-AJAX-WSexample">A JAX-WS example</a></li></ul> @@ -129,18 +129,18 @@ div.rbtoc1490636832619 li {margin-left: <ul class="toc-indentation"><li><a shape="rect" href="#CXFArchitecture-References">References</a></li></ul> </li></ul> </li></ul> -</div><h2 id="CXFArchitecture-ArchitecturalGoalsandConstraints">Architectural Goals and Constraints</h2><p>The Apache CXF services framework seeks to build the necessary infrastructure components for services. Goals for CXF are many and include:</p><ul><li>Embeddable</li><li>High performance</li><li>Easy configuration</li><li>Intuitive and easy to use</li><li>Clean separation of front-ends from the core code</li><li>Data formats support</li><li>Data bindings support</li><li>Protocol bindings support</li><li>Multiple transports support</li><li>Multiple Programming Languages Support</li><li>WS-* and related specifications support</li><li>Tools for code generation and WSDL validation</li><li>Flexible deployment</li></ul><h2 id="CXFArchitecture-CXF-API">CXF-API</h2><p>The overall CXF architecture is primarily made up of the following parts:</p><ol><li>Bus: Contains a registry of extensions, interceptors and Properties</li><li>Front-end: Front-ends provide a programming model to create s ervices.</li><li>Messaging & Interceptors: These provide the low level message and pipeline layer upon which most functionality is built.</li><li>Service Model: Services host a Service model which is a WSDL-like model that describes the service.</li><li>Pluggable Data Bindings: ...</li><li>Protocol Bindings: Bindings provide the functionality to interpret the protocol.</li><li>Transports: Transportfactory creates Destinations (Receiving) and Conduits (Sending)</li></ol><p>In the upcoming sections, we'll take a look at each layer in turn and examine how they work together.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-thumbnail" src="cxf-architecture.data/cxf_architecture.png"></span></p><h3 id="CXFArchitecture-Bus">Bus</h3><p>The bus, being CXF's backbone, is a provider of shared resources to the CXF runtime. Examples for such shared resources include WSDL managers and binding factory managers. The bus can easily be extende d to include your own custom resources or services, or you can replace default resources like the HTTP destination factory (based on Jetty) with your own (possibly based on another web container such as Apache Tomcat).</p><p>This extensibility is made possible by dependency injection; the default bus implemenation is based on <a shape="rect" class="external-link" href="http://www.springsource.com/developer/spring" rel="nofollow">Spring Framework</a>, which wires the runtime components together for you.</p><p>The <code>SpringBusFactory</code> searches for all bean configuration files in the <code>META-INF/cxf</code> directories on your classpath, and builds an application context from them. The bean configuration files included in the application context construction are:</p><ul><li><code>META-INF/cxf/cxf.xml</code> (e.g., in <code>cxf-rt-core</code> only)</li><li><code>META-INF/cxf/cxf-extension.xml</code> (e.g. in <code>cxf-rt-bindings-soap</code>)</li><li><code>META-INF/cxf/cxf-pr operty-editors.xml</code> (e.g. in <code>cxf-rt-transports-http</code>)</li></ul><p>See <a shape="rect" href="configuration-of-the-bus.html">Configuration of the Bus</a> for an example of how to customize the bus by supplying your own bean configuration file and <a shape="rect" href="configuration-of-runtime-constructed-objects.html">Configuration of Runtime Constructed Objects</a> for more information on the special case of injecting into objects created by the runtime (as opposed to objects created by the IoC container itself).</p><h3 id="CXFArchitecture-Howservicecallsareprocessed">How service calls are processed</h3><p> +</div><h2 id="CXFArchitecture-ArchitecturalGoalsandConstraints">Architectural Goals and Constraints</h2><p>The Apache CXF services framework seeks to build the necessary infrastructure components for services. Goals for CXF are many and include:</p><ul><li>Embeddable</li><li>High performance</li><li>Easy configuration</li><li>Intuitive and easy to use</li><li>Clean separation of front-ends from the core code</li><li>Data formats support</li><li>Data bindings support</li><li>Protocol bindings support</li><li>Multiple transports support</li><li>Multiple Programming Languages Support</li><li>WS-* and related specifications support</li><li>Tools for code generation and WSDL validation</li><li>Flexible deployment</li></ul><h2 id="CXFArchitecture-CXF-API">CXF-API</h2><p>The overall CXF architecture is primarily made up of the following parts:</p><ol><li>Bus: Contains a registry of extensions, interceptors and Properties</li><li>Front-end: Front-ends provide a programming model to create s ervices.</li><li>Messaging & Interceptors: These provide the low level message and pipeline layer upon which most functionality is built.</li><li>Service Model: Services host a Service model which is a WSDL-like model that describes the service.</li><li>Pluggable Data Bindings: ...</li><li>Protocol Bindings: Bindings provide the functionality to interpret the protocol.</li><li>Transports: Transportfactory creates Destinations (Receiving) and Conduits (Sending)</li></ol><p>In the upcoming sections, we'll take a look at each layer in turn and examine how they work together.</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-thumbnail" src="cxf-architecture.data/cxf_architecture.png"></span></p><h3 id="CXFArchitecture-Bus">Bus</h3><p>The bus, being CXF's backbone, is a provider of shared resources to the CXF runtime. Examples for such shared resources include WSDL managers and binding factory managers. The bus can easily be extende d to include your own custom resources or services, or you can replace default resources like the HTTP destination factory (based on Jetty) with your own (possibly based on another web container such as Apache Tomcat).</p><p>This extensibility is made possible by dependency injection; the default bus implementation is based on <a shape="rect" class="external-link" href="http://www.springsource.com/developer/spring" rel="nofollow">Spring Framework</a>, which wires the runtime components together for you.</p><p>The <code>SpringBusFactory</code> searches for all bean configuration files in the <code>META-INF/cxf</code> directories on your classpath, and builds an application context from them. The bean configuration files included in the application context construction are:</p><ul><li><code>META-INF/cxf/cxf.xml</code> (e.g., in <code>cxf-rt-core</code> only)</li><li><code>META-INF/cxf/cxf-extension.xml</code> (e.g. in <code>cxf-rt-bindings-soap</code>)</li><li><code>META-INF/cxf/cxf-p roperty-editors.xml</code> (e.g. in <code>cxf-rt-transports-http</code>)</li></ul><p>See <a shape="rect" href="configuration-of-the-bus.html">Configuration of the Bus</a> for an example of how to customize the bus by supplying your own bean configuration file and <a shape="rect" href="configuration-of-runtime-constructed-objects.html">Configuration of Runtime Constructed Objects</a> for more information on the special case of injecting into objects created by the runtime (as opposed to objects created by the IoC container itself).</p><h3 id="CXFArchitecture-Howservicecallsareprocessed">How service calls are processed</h3><p> -<span class="gliffy-container" id="gliffy-container-25591945-3414" data-fullwidth="1269" data-ceoid="44806" data-edit="${diagramEditLink.getLinkUrl()}" data-full="${diagramZoomLink.getLinkUrl()}" data-filename="MessageFlowOnClientSide"> +<span class="gliffy-container" id="gliffy-container-25591945-3015" data-fullwidth="1269" data-ceoid="44806" data-edit="${diagramEditLink.getLinkUrl()}" data-full="${diagramZoomLink.getLinkUrl()}" data-filename="MessageFlowOnClientSide"> - <map id="gliffy-map-25591945-9767" name="gliffy-map-25591945-9767"></map> + <map id="gliffy-map-25591945-4382" name="gliffy-map-25591945-4382"></map> - <img class="gliffy-image" id="gliffy-image-25591945-3414" width="600" height="274" data-full-width="1269" data-full-height="580" src="https://cwiki.apache.org/confluence/download/attachments/44806/MessageFlowOnClientSide.png?version=4&modificationDate=1298215366000&api=v2" alt="MessageFlowOnClientSide" usemap="#gliffy-map-25591945-9767"> + <img class="gliffy-image" id="gliffy-image-25591945-3015" width="600" height="274" data-full-width="1269" data-full-height="580" src="https://cwiki.apache.org/confluence/download/attachments/44806/MessageFlowOnClientSide.png?version=4&modificationDate=1298215366000&api=v2" alt="MessageFlowOnClientSide" usemap="#gliffy-map-25591945-4382"> - <map class="gliffy-dynamic" id="gliffy-dynamic-map-25591945-3414" name="gliffy-dynamic-map-25591945-3414"></map> + <map class="gliffy-dynamic" id="gliffy-dynamic-map-25591945-3015" name="gliffy-dynamic-map-25591945-3015"></map> </span> @@ -149,18 +149,18 @@ div.rbtoc1490636832619 li {margin-left: -<span class="gliffy-container" id="gliffy-container-25591953-5605" data-fullwidth="1222" data-ceoid="44806" data-edit="${diagramEditLink.getLinkUrl()}" data-full="${diagramZoomLink.getLinkUrl()}" data-filename="MessageFlowOnServerSide"> +<span class="gliffy-container" id="gliffy-container-25591953-4543" data-fullwidth="1222" data-ceoid="44806" data-edit="${diagramEditLink.getLinkUrl()}" data-full="${diagramZoomLink.getLinkUrl()}" data-filename="MessageFlowOnServerSide"> - <map id="gliffy-map-25591953-8767" name="gliffy-map-25591953-8767"></map> + <map id="gliffy-map-25591953-4386" name="gliffy-map-25591953-4386"></map> - <img class="gliffy-image" id="gliffy-image-25591953-5605" width="600" height="295" data-full-width="1222" data-full-height="600" src="https://cwiki.apache.org/confluence/download/attachments/44806/MessageFlowOnServerSide.png?version=4&modificationDate=1298310696000&api=v2" alt="MessageFlowOnServerSide" usemap="#gliffy-map-25591953-8767"> + <img class="gliffy-image" id="gliffy-image-25591953-4543" width="600" height="295" data-full-width="1222" data-full-height="600" src="https://cwiki.apache.org/confluence/download/attachments/44806/MessageFlowOnServerSide.png?version=4&modificationDate=1298310696000&api=v2" alt="MessageFlowOnServerSide" usemap="#gliffy-map-25591953-4386"> - <map class="gliffy-dynamic" id="gliffy-dynamic-map-25591953-5605" name="gliffy-dynamic-map-25591953-5605"></map> + <map class="gliffy-dynamic" id="gliffy-dynamic-map-25591953-4543" name="gliffy-dynamic-map-25591953-4543"></map> </span> </p><p>Server Side</p><h3 id="CXFArchitecture-Front-ends">Front-ends</h3><p>Front-ends provide a programming model to interact with CXF. JAX-WS, JAX-RS, Simple and Javascript front-end APIs are provided by CXF . Each implementation is cleanly separated from the rest of CXF, just like the bindings and the core. Front-ends provide functionality through interceptors that are added to Services and Endpoints. See also <a shape="rect" href="frontends.html">Front-ends</a></p><h3 id="CXFArchitecture-Messaging&Interceptors">Messaging & Interceptors</h3><p>CXF is built on a generic messaging layer comprised of Messages, Interceptors, and InterceptorChains. Interceptors are the fundamental unit of functionality. By dividing up how messages are processed and sent, this gives CXF a very flexible architecture. It can be reconfigured at any point in the processing. This also gives CXF the ability to pause & resume interceptor chains.</p><p>Interceptors have a method, <code>handleMessag e</code>, which allows them to act on the Message.These Interceptors can then be built up into chains of interceptors, straightforwardly called InterceptorChains. Some examples include:</p><ul><li>An interceptor which parses just the headers of a SOAP message into DOM elements</li><li>A WS-Security interceptor which decrypts or authenticates an incoming message.</li><li>An outgoing data binding interceptor which serializes the result</li></ul><p>Interceptors are uni-directional and are inherently unaware of whether they are dealing with a request, response, or fault.</p><h4 id="CXFArchitecture-PhaseInterceptors">Phase Interceptors</h4><p>CXF provides an <code>InterceptorChain</code> implementation called the <code>PhaseInterceptorChain</code>. When Interceptors are added to the chain, they are grouped into ordered phases.  A <code>PhaseInterceptor</code> may provide guidance as to how it is to be ordered within the phase.</p><p>Let us take a hypothetical simplified example (NOT E: these phases and interceptors don't necessarily exist in CXF). Let us say we are parsing a SOAP message. We may want to have two phases. First, a dispatch phase which parses the soap headers and determines which service to route the Message to. Second, an unmarshal phase which binds the SOAP body to JAXB objects. In the first dispatch phase we could implement this via two interceptors, first a ReadHeadersInterceptor which parses the headers and second a WS-AddressingInInterceptor which determines which service we're invoking from the WS-Addressing header. In the second unmarshal phase, we have just a single JAXBUnmarshallerIntercptor. Both the <code>ReadHeadersInterceptor</code> and <code>AddressingInInterceptor</code> would tell the <code>PhaseInterceptorChain</code> they are in the "dispatch" phase by returning "dispatch" when <code>getPhase()</code> is called. Additionally, the <code>ReadHeadersInterceptor</code> could specify that it wants to run before the <code>AddressingIn Interceptor</code> by returning the interceptor id when <code>Interceptor.getBefore()</code> is called.</p><p>Before it was mentioned how chains were very dynamic and flexible. In our above example, we could add interceptors specific to that service once it is resolved. Or we could pause the chain once while we wait for some external chain, like an asynchronous service response.</p><h4 id="CXFArchitecture-FaultHandling">Fault Handling</h4><p>At any point during processing, an interceptor may throw a Fault, or a derivative of a Fault like the <code>SoapFault</code>. This will cause the chain to stop invoking and unwind it. Unwinding consists of calling handleFault on each interceptor that was invoked in reverse order.</p><p>InterceptorChains have the concept of a fault observer. Once the chain is unwound, the fault interceptor is invoked with the message that caused the fault. The fault observer may trigger a new chain which then invokes a specified set of interceptors meant to handl e faults.</p><h4 id="CXFArchitecture-Exchanges">Exchanges</h4><p>In addition to the concept of a Message, there is the concept of the <code>Exchange</code>. The exchange class holds a references to the in, out and fault messages for the current message exchange.</p><p>It also holds properties specific to the exchange, and not just the message. For instance the <code>Exchange</code> holds the <code>Service</code> that is current being invoked in it.</p><h4 id="CXFArchitecture-ReentrantInterceptorChains">Reentrant InterceptorChains</h4><p>An interesting feature of the <code>PhaseInterceptorChain</code> is that it is reentrant. This can be powerful and slightly dangerous. This feature is only used in CXF during the sending of an outgoing message, The <code>SoapOutInterceptor</code> is the best example:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">public void handleMessage(Message m) { +<pre class="brush: bash; gutter: false; theme: Confluence" style="font-size:12px;">public void handleMessage(Message m) { writeSoapEnvelopeStart(); writeSoapBodyStart(); @@ -172,11 +172,11 @@ div.rbtoc1490636832619 li {margin-left: } </pre> </div></div><h3 id="CXFArchitecture-TheServiceModel">The Service Model</h3><p>The Service model is the representation of a service within CXF. It is made up of two parts. First there is the <code>ServiceInfo</code> which contains a WSDL-like model of the service and its operations, bindings, endpoints and schema. Second, there is the Service itself, which contains the <code>ServiceInfo</code>, data-binding information, service interceptors, service properties and more.</p><p>A service can be constructed from many different sources including classes and WSDLs (1.1 or 2.0). Typically front-ends are responsible for creating a service via service factories. Factory components such as <code>ServerFactoryBean</code> and <code>ClientProxyFactoryBean</code> can used with the front-end to create, publish and consume web services. The factory classes build up the service model and configure the service interceptors, data bindings and more.</p><p>The Service model itself is contained in the <c ode>ServiceInfo</code> class. The following image depicts a subset of the Service Model's packaged API:</p><p><span class="confluence-embedded-file-wrapper"><img class="confluence-embedded-image confluence-thumbnail" src="cxf-architecture.data/service_model.png"></span></p><h3 id="CXFArchitecture-DataBindings">Data Bindings</h3><p>Data bindings implement the mapping between XML elements and Java objects. Data bindings convert data to and from XML, produce XML schema, and provide support for wsdl2java code generation. Not all data bindings support all of this functionality. At very least, a data binding must provide the data conversion. See <a shape="rect" href="data-binding-architecture.html">Data Binding Architecture</a> for details. Currently supported data bindings include JAXB 2.x (default), Aegis, Apache XMLBeans, Service Data Objects (SDO) and JiBX (under development).</p><h3 id="CXFArchitecture-ProtocolBindings">Protocol Bindings</h3><p>Bindings provide ways to map concrete f ormats and protocols on top of transports. A binding contains two main parts, a <code>BindingFactory</code> and a <code>Binding</code>. A <code>BindingFactory</code> builds a <code>Binding</code> from the service model's <code>BindingInfo</code>. The binding contains interceptors specific to the binding and also implements the <code>createMessage()</code> method, which creates a <code>Message</code> implementation specific for that binding.</p><p>CXF currently supported the following bindings protocols: SOAP 1.1, SOAP 1.2, REST/HTTP, pure XML and CORBA.</p><h4 id="CXFArchitecture-TheSoapBinding">The Soap Binding</h4><p>The prototypical binding is SOAP. It has its own <code>Message</code> class called the <code>SoapMessage</code>. It adds the ability to hold the current <code>SoapVersion</code> and the headers for the message.</p><p>The <code>Soap</code> binding also adds a special type of interceptor called the <code>SoapInterceptor</code>. The <code>SoapInterceptor</code> adds two methods to the <code>Interceptor</code> class:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">Set<URI> getRoles(); +<pre class="brush: bash; gutter: false; theme: Confluence" style="font-size:12px;">Set<URI> getRoles(); Set<QName> getUnderstoodHeaders(); </pre> </div></div><p>These inform the SOAP interceptors as to what headers and roles the particular SOAP interceptor understands.</p><p>It has many interceptors designed to handle SOAP messages:</p><ol><li><code>StaxInInterceptor</code>: Creates an <code>XMLStreamReader</code> from an incoming <code>InputStream</code></li><li><code>ReadHeadersInterceptor</code>: Reads the headers into the <code>SoapMessage</code></li><li><code>MustUnderstandInterceptor</code>: Checks the <code>MustUnderstand</code> attributes of all the headers against all the <code>SoapInterceptor</code>'s <code>getUnderstoodHeaders</code> method.</li><li><code>SoapOutInterceptor</code>:</li></ol><h4 id="CXFArchitecture-AdditionalBindings">Additional Bindings</h4><p>Other bindings include REST/HTTP binding, pure XML binding, and the CORBA binding.</p><h3 id="CXFArchitecture-Transports">Transports</h3><p>CXF includes its own transport abstraction layer to hide transport specific details from the binding and front end laye rs. Currently supported transports include: HTTP, HTTPs, HTTP-Jetty, HTTP-OSGI, Servlet, local, JMS, In-VM and many others via the Camel transport for CXF such as SMTP/POP3, TCP and Jabber. Learn more about transports <a shape="rect" href="http://cxf.apache.org/docs/transports.html">here</a>.</p><h4 id="CXFArchitecture-Conduits">Conduits</h4><p>Conduits provide the basis for outgoing message sending. A <code>Conduit</code> is created from a <code>ConduitInitiator</code>. Sending a message is a multistep pocess:</p><ol><li>Call conduit.prepare(message): this starts the message sending. At this point a <code>Conduit</code> may initiate a connection and set the OutputStream for the outgoing message.</li><li>Writing of the actual message to the <code>OutputStream</code></li><li>Call to <code>conduit.close(message)</code>: this closes and disposes of any existing resources for the message sending.<br clear="none"> A message sender may also register a <code>MessageObserver</code> with the Conduit. If the <code>Conduit</code> is synchronous, the <code>MessageObserver</code> will be notified once a response has been received.</li></ol><h4 id="CXFArchitecture-Destinations">Destinations</h4><p>Destinations are the basis for receiving incoming messages. A destination is created from a <code>DestinationFactory</code>:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">DestinationFactoryManager dfManager = bus.getExtension(DestinationFactoryManager.class); +<pre class="brush: bash; gutter: false; theme: Confluence" style="font-size:12px;">DestinationFactoryManager dfManager = bus.getExtension(DestinationFactoryManager.class); // Find a DestinationFactory for the SOAP HTTP transport DestinationFactory df = dfManager.getDestinationFactory("http://schemas.xmlsoap.org/wsdl/soap/http"); @@ -186,7 +186,7 @@ EndpointInfo endpointInfo = ...; Destination destination = df.getDestination(endpointInfo); </pre> </div></div><p>MessageObservers can then be registered with Destinations. These listen for incoming messages:</p><div class="code panel pdl" style="border-width: 1px;"><div class="codeContent panelContent pdl"> -<pre class="brush: java; gutter: false; theme: Default" style="font-size:12px;">MessageObserver myObserver = ...; +<pre class="brush: bash; gutter: false; theme: Confluence" style="font-size:12px;">MessageObserver myObserver = ...; destination.setMessageObserver(myObserver); </pre> </div></div><p>The most common <code>MessageObserver</code> used in CXF is the <code>ChainInitiationObserver</code>. This takes the incoming message, creates a message Exchange & <code>PhaseInterceptorChain</code>, then starts the chain.</p><h3 id="CXFArchitecture-AJAX-WSexample">A JAX-WS example</h3><p>Here's a small example of what might happen when we publish a service via the JAX-WS <code>Endpoint.publish()</code> method.</p><ol><li>Call to <code>Endpoint.publish("http://localhost/service", myService)</code></li><li>The <code>EndpointImpl</code> creates a Service from the <code>myService</code> object using the <code>JaxWsServiceFactoryBean</code> using the class and/or WSDL</li><li>An <code>EndpointInfo</code> is created for the <code>Endpoint.publish</code> URL</li><li>A <code>JaxWsEndpointImpl</code> is created from the <code>EndpointInfo</code>. This contains the JAX-WS endpoint specific interceptors</li><li>The <code>JaxWsEndpointImpl</code> creates a <code>Binding</cod e> and <code>Destination</code> to listen on.</li></ol><h2 id="CXFArchitecture-Dependencies">Dependencies</h2><p><a shape="rect" href="http://cxf.apache.org/docs/cxf-dependency-graphs.html">CXF's dependencies</a></p><h2 id="CXFArchitecture-Quality">Quality</h2><p>CXF's Software Quality approach is detailed <a shape="rect" href="http://cxf.apache.org/coding-guidelines.html">here</a>.</p><h3 id="CXFArchitecture-References">References</h3><ul><li><a shape="rect" class="external-link" href="http://en.wikipedia.org/wiki/Software_architecture" rel="nofollow">Software Architecture</a>, <em>Wikipedia</em></li><li><a shape="rect" class="external-link" href="http://www.ecs.csun.edu/~rlingard/COMP684/Example2SoftArch.htm#Logical%20View" rel="nofollow">Sample S/W Architecture Document</a>, <em>Rational Software Corporation</em></li><li><a shape="rect" class="external-link" href="http://www.oreillynet.com/xml/blog/2006/03/documenting_your_software_arch.html" rel="nofollow">Documenting your Softw are Architecture</a>, <em>by Jim Alateras</em> (March 2006)</li></ul></div> Modified: websites/production/cxf/content/docs/distributed-tracing.html ============================================================================== --- websites/production/cxf/content/docs/distributed-tracing.html (original) +++ websites/production/cxf/content/docs/distributed-tracing.html Mon Sep 11 19:56:29 2017 @@ -107,7 +107,7 @@ Apache CXF -- Distributed Tracing <td height="100%"> <!-- Content --> <div class="wiki-content"> -<div id="ConfluenceContent"><h1 id="DistributedTracing-DistributedTracing">Distributed Tracing</h1><p>Since the adoption of SOA/microservice architectures (with REST services taking a central place in them), systems become more and more distributed. The importance of having the visibility of how each request travels from the client to the service and from service to service till the eventual response is being constructed is hard to overestimate. Distributed tracing systems are designed to solve that. The most widely used and known ones are <a shape="rect" class="external-link" href="http://zipkin.io/" rel="nofollow">Twitter Zipkin</a> and <a shape="rect" class="external-link" href="http://htrace.incubator.apache.org/">Apache HTrace</a> (currently in incubation), both built on top of Google's paper <a shape="rect" class="external-link" href="http://research.google.com/pubs/pub36356.html" rel="nofollow">Dapper, a Large-Scale Distributed Systems Tracing Infrastructure</a></p><p><a shap e="rect" href="using-apache-htrace.html">Using Apache HTrace</a></p><p><a shape="rect" href="using-openzipkin-brave.html">Using OpenZipkin Brave</a></p></div> +<div id="ConfluenceContent"><h1 id="DistributedTracing-DistributedTracing">Distributed Tracing</h1><p>Since the adoption of SOA/microservice architectures (with REST services taking a central place in them), systems become more and more distributed. The importance of having the visibility of how each request travels from the client to the service and from service to service till the eventual response is being constructed is hard to overestimate. Distributed tracing systems are designed to solve that. The most widely used and known ones are <a shape="rect" class="external-link" href="http://zipkin.io/" rel="nofollow">Twitter Zipkin</a> and <a shape="rect" class="external-link" href="http://htrace.incubator.apache.org/">Apache HTrace</a> (currently in incubation), both built on top of Google's paper <a shape="rect" class="external-link" href="http://research.google.com/pubs/pub36356.html" rel="nofollow">Dapper, a Large-Scale Distributed Systems Tracing Infrastructure</a></p><p><a shap e="rect" href="using-apache-htrace.html">Using Apache HTrace</a></p><p><a shape="rect" href="using-openzipkin-brave.html">Using OpenZipkin Brave</a></p><p><a shape="rect" href="https://cwiki.apache.org/confluence/display/CXF20DOC/Using+OpenTracing?src=contextnavchildmode" title="Using OpenTracing"><span class="label">Using OpenTracing</span></a></p></div> </div> <!-- Content --> </td>