Added: synapse/site/3_0_1/userguide/samples/setup/tcp_udp.html URL: http://svn.apache.org/viewvc/synapse/site/3_0_1/userguide/samples/setup/tcp_udp.html?rev=1817077&view=auto ============================================================================== --- synapse/site/3_0_1/userguide/samples/setup/tcp_udp.html (added) +++ synapse/site/3_0_1/userguide/samples/setup/tcp_udp.html Mon Dec 4 09:53:57 2017 @@ -0,0 +1,193 @@ +<!DOCTYPE html> +<!-- + | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-12-04 + | Rendered using Apache Maven Fluido Skin 1.6 +--> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> + <head> + <meta charset="UTF-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <meta name="Date-Revision-yyyymmdd" content="20171204" /> + <meta http-equiv="Content-Language" content="en" /> + <title>Apache Synapse – Apache Synapse - TCP/UDP Setup Guide</title> + <link rel="stylesheet" href="../../../css/apache-maven-fluido-1.6.min.css" /> + <link rel="stylesheet" href="../../../css/site.css" /> + <link rel="stylesheet" href="../../../css/print.css" media="print" /> + <script type="text/javascript" src="../../../js/apache-maven-fluido-1.6.min.js"></script> + </head> + <body class="topBarDisabled"> + <div class="container-fluid"> + <div id="banner"> + <div class="pull-left"><div id="bannerLeft"><h2>Apache Synapse</h2> +</div> +</div> + <div class="pull-right"></div> + <div class="clear"><hr/></div> + </div> + + <div id="breadcrumbs"> + <ul class="breadcrumb"> + <li id="publishDate">Last Published: 2017-12-04<span class="divider">|</span> +</li> + <li id="projectVersion">Version: 3.0.1</li> + </ul> + </div> + <div class="row-fluid"> + <div id="leftColumn" class="span2"> + <div class="well sidebar-nav"> +<ul class="nav nav-list"> + <li class="nav-header">Main Menu</li> + <li><a href="../../../index.html" title="Home"><span class="none"></span>Home</a> </li> + <li><a href="../../../download.html" title="Download"><span class="none"></span>Download</a> </li> + <li><a href="../../../history.html" title="History"><span class="none"></span>History</a> </li> + <li><a href="http://www.apache.org/licenses/LICENSE-2.0" class="externalLink" title="License"><span class="none"></span>License</a> </li> + <li><a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks"><span class="none"></span>Thanks</a> </li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship"><span class="none"></span>Sponsorship</a> </li> + <li><a href="http://www.apache.org/security/" class="externalLink" title="Security"><span class="none"></span>Security</a> </li> + <li class="nav-header">Documentation</li> + <li><a href="../../../userguide/installation.html" title="Installation Guide"><span class="none"></span>Installation Guide</a> </li> + <li><a href="../../../userguide/quick_start.html" title="Quick Start Guide"><span class="none"></span>Quick Start Guide</a> </li> + <li><a href="../../../userguide/samples/setup/index.html" title="Samples Setup Guide"><span class="none"></span>Samples Setup Guide</a> </li> + <li><a href="../../../userguide/samples.html" title="Samples Catalog"><span class="none"></span>Samples Catalog</a> </li> + <li><a href="../../../userguide/config.html" title="Configuration Language"><span class="none"></span>Configuration Language</a> </li> + <li><a href="../../../userguide/mediators.html" title="Mediators Catalog"><span class="none"></span>Mediators Catalog</a> </li> + <li><a href="../../../userguide/transports.html" title="Transports Catalog"><span class="none"></span>Transports Catalog</a> </li> + <li><a href="../../../userguide/properties.html" title="Properties Catalog"><span class="none"></span>Properties Catalog</a> </li> + <li><a href="../../../userguide/xpath.html" title="XPath functions and Variables"><span class="none"></span>XPath functions and Variables</a> </li> + <li><a href="../../../userguide/extending.html" title="Extending Synapse"><span class="none"></span>Extending Synapse</a> </li> + <li><a href="../../../userguide/template_library.html" title="Synapse Template Libraries"><span class="none"></span>Synapse Template Libraries</a> </li> + <li><a href="../../../userguide/upgrading.html" title="Upgrading"><span class="none"></span>Upgrading</a> </li> + <li><a href="../../../userguide/deployment.html" title="Deployment"><span class="none"></span>Deployment</a> </li> + <li><a href="../../../apidocs/" title="Javadocs"><span class="none"></span>Javadocs</a> </li> + <li><a href="../../../userguide/faq.html" title="FAQ"><span class="none"></span>FAQ</a> </li> + <li class="nav-header">Developer Resources</li> + <li><a href="../../../dev/developer-guide.html" title="Developer Guide"><span class="none"></span>Developer Guide</a> </li> + <li><a href="../../../dev/best-practices.html" title="Development Best Practices"><span class="none"></span>Development Best Practices</a> </li> + <li><a href="../../../dev/release-process.html" title="Release Process"><span class="none"></span>Release Process</a> </li> + <li class="nav-header">Project Details</li> + <li><a href="../../../project-info.html" title="Overview"><span class="none"></span>Overview</a> </li> + <li><a href="../../../mail-lists.html" title="Mailing Lists"><span class="none"></span>Mailing Lists</a> </li> + <li><a href="../../../source-repository.html" title="Source Repository"><span class="none"></span>Source Repository</a> </li> + <li><a href="../../../issue-tracking.html" title="Issue Tracking"><span class="none"></span>Issue Tracking</a> </li> + <li><a href="../../../dependency-management.html" title="Dependencies"><span class="none"></span>Dependencies</a> </li> + <li><a href="../../../team-list.html" title="Project Team"><span class="none"></span>Project Team</a> </li> + </ul> + <hr /> + <div id="poweredBy"> + <div class="clear"></div> + <div class="clear"></div> + <div class="clear"></div> + <div class="clear"></div> + <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="../../../images/logos/maven-feather.png" /></a> + </div> + </div> + </div> + <div id="bodyColumn" class="span10" > + + + <div class="section"> +<h2><a name="TCPUDP_Setup_Guide"></a>TCP/UDP Setup Guide</h2> + +<p> + This document explains how to setup the transport sender and listener + for TCP/UDP transports required by the samples. + </p> + </div> + +<div class="section"> +<h2><a name="Contents"></a>Contents</h2> + +<ul> + +<li><a href="#intro">Introduction</a></li> + +<li><a href="#tcp">Setting Up the TCP Transport</a></li> + +<li><a href="#udp">Setting Up the UDP Transport</a></li> + </ul> + </div> + <a name="intro"></a> +<div class="section" id="intro"> +<h2><a name="Introduction"></a>Introduction</h2> + +<p> + Apache Synapse is capable of sending and receiving messages over raw TCP and UDP. + Any messages received over these transports can be mediated using the usual set of + mediators and can be forwarded over different protocols such as HTTP ans JMS. The + transport adapters for TCP and UDP are not available in the Synapse binary + distribution by default. This guide will help you to download and setup them in + Synapse ESB. + </p> + </div> + <a name="tcp"></a> +<div class="section" id="tcp"> +<h2><a name="Setting_Up_the_TCP_Transport"></a>Setting Up the TCP Transport</h2> + +<p> + To enable the TCP transport for Synapse, first you need to download the Axis2 TCP + transport jar, and copy it to the 'lib' directory of Synapse. This library can be + downloaded from the <a class="externalLink" href="http://ws.apache.org/commons/transport">WS-Commons Transports</a> + website. Then open up the axis2.xml file and uncomment the TCP transport receiver + and sender configurations. + </p> + +<div class="xmlConf"><transportReceiver name="tcp" class="org.apache.axis2.transport.tcp.TCPServer"> + <parameter name="port">6060</parameter> +</transportReceiver></div> + +<div class="xmlConf"><transportSender name="tcp" class="org.apache.axis2.transport.tcp.TCPTransportSender"/></div> + +<p> + The above configuration enables Synapse to receive raw TCP messages on port 6060. + Since no application level headers are available on such requests, Synapse will be + solely depending on the addressing headers or the XML payload of the messages to + find the target service for TCP requests. + </p> + +<p> + In some of the samples you will have to send raw TCP messages using the sample + Axis2 client. In that case you should enable the TCP transport sender for the + sample client. This can be done by uncommenting the following entry in the + samples/axis2Client/client_repo/conf/axis2.xml file. + </p> + +<div class="xmlConf"><transportSender name="tcp" class="org.apache.axis2.transport.tcp.TCPTransportSender"/></div> + </div> + <a name="udp"></a> +<div class="section" id="udp"> +<h2><a name="Setting_Up_the_UDP_Transport"></a>Setting Up the UDP Transport</h2> + +<p> + Enabling the UDP transport for Synapse is similar to enabling the TCP transport. You + should <a class="externalLink" href="http://ws.apache.org/commons/transport">download</a> the Axis2 UDP + transport jar and copy it into 'lib' directory of Synapse. Then uncomment the + following entries in the repository/conf/axis2.xml file to enable the UDP listener + and sender. + </p> + +<div class="xmlConf"><transportReceiver name="udp" class="org.apache.axis2.transport.udp.UDPListener"/></div> + +<div class="xmlConf"><transportSender name="udp" class="org.apache.axis2.transport.udp.UDPSender"/></div> + +<p> + To send UDP messages from the sample client, enable the UDP transport sender for the + client in samples/axis2Client/client_repo/conf/axis2.xml file. + </p> + </div> + + + </div> + </div> + </div> + <hr/> + <footer> + <div class="container-fluid"> + <div class="row-fluid"> + <p>Copyright ©2005–2017 +<a href="http://www.apache.org/">Apache Software Foundation</a>. +All rights reserved.</p> + </div> + </div> + </footer> + </body> +</html>
Added: synapse/site/3_0_1/userguide/samples/template.html URL: http://svn.apache.org/viewvc/synapse/site/3_0_1/userguide/samples/template.html?rev=1817077&view=auto ============================================================================== --- synapse/site/3_0_1/userguide/samples/template.html (added) +++ synapse/site/3_0_1/userguide/samples/template.html Mon Dec 4 09:53:57 2017 @@ -0,0 +1,156 @@ +<!DOCTYPE html> +<!-- + | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-12-04 + | Rendered using Apache Maven Fluido Skin 1.6 +--> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> + <head> + <meta charset="UTF-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <meta name="Date-Revision-yyyymmdd" content="20171204" /> + <meta http-equiv="Content-Language" content="en" /> + <title>Apache Synapse – Apache Synapse - Sample X</title> + <link rel="stylesheet" href="../../css/apache-maven-fluido-1.6.min.css" /> + <link rel="stylesheet" href="../../css/site.css" /> + <link rel="stylesheet" href="../../css/print.css" media="print" /> + <script type="text/javascript" src="../../js/apache-maven-fluido-1.6.min.js"></script> + </head> + <body class="topBarDisabled"> + <div class="container-fluid"> + <div id="banner"> + <div class="pull-left"><div id="bannerLeft"><h2>Apache Synapse</h2> +</div> +</div> + <div class="pull-right"></div> + <div class="clear"><hr/></div> + </div> + + <div id="breadcrumbs"> + <ul class="breadcrumb"> + <li id="publishDate">Last Published: 2017-12-04<span class="divider">|</span> +</li> + <li id="projectVersion">Version: 3.0.1</li> + </ul> + </div> + <div class="row-fluid"> + <div id="leftColumn" class="span2"> + <div class="well sidebar-nav"> +<ul class="nav nav-list"> + <li class="nav-header">Main Menu</li> + <li><a href="../../index.html" title="Home"><span class="none"></span>Home</a> </li> + <li><a href="../../download.html" title="Download"><span class="none"></span>Download</a> </li> + <li><a href="../../history.html" title="History"><span class="none"></span>History</a> </li> + <li><a href="http://www.apache.org/licenses/LICENSE-2.0" class="externalLink" title="License"><span class="none"></span>License</a> </li> + <li><a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks"><span class="none"></span>Thanks</a> </li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship"><span class="none"></span>Sponsorship</a> </li> + <li><a href="http://www.apache.org/security/" class="externalLink" title="Security"><span class="none"></span>Security</a> </li> + <li class="nav-header">Documentation</li> + <li><a href="../../userguide/installation.html" title="Installation Guide"><span class="none"></span>Installation Guide</a> </li> + <li><a href="../../userguide/quick_start.html" title="Quick Start Guide"><span class="none"></span>Quick Start Guide</a> </li> + <li><a href="../../userguide/samples/setup/index.html" title="Samples Setup Guide"><span class="none"></span>Samples Setup Guide</a> </li> + <li><a href="../../userguide/samples.html" title="Samples Catalog"><span class="none"></span>Samples Catalog</a> </li> + <li><a href="../../userguide/config.html" title="Configuration Language"><span class="none"></span>Configuration Language</a> </li> + <li><a href="../../userguide/mediators.html" title="Mediators Catalog"><span class="none"></span>Mediators Catalog</a> </li> + <li><a href="../../userguide/transports.html" title="Transports Catalog"><span class="none"></span>Transports Catalog</a> </li> + <li><a href="../../userguide/properties.html" title="Properties Catalog"><span class="none"></span>Properties Catalog</a> </li> + <li><a href="../../userguide/xpath.html" title="XPath functions and Variables"><span class="none"></span>XPath functions and Variables</a> </li> + <li><a href="../../userguide/extending.html" title="Extending Synapse"><span class="none"></span>Extending Synapse</a> </li> + <li><a href="../../userguide/template_library.html" title="Synapse Template Libraries"><span class="none"></span>Synapse Template Libraries</a> </li> + <li><a href="../../userguide/upgrading.html" title="Upgrading"><span class="none"></span>Upgrading</a> </li> + <li><a href="../../userguide/deployment.html" title="Deployment"><span class="none"></span>Deployment</a> </li> + <li><a href="../../apidocs/" title="Javadocs"><span class="none"></span>Javadocs</a> </li> + <li><a href="../../userguide/faq.html" title="FAQ"><span class="none"></span>FAQ</a> </li> + <li class="nav-header">Developer Resources</li> + <li><a href="../../dev/developer-guide.html" title="Developer Guide"><span class="none"></span>Developer Guide</a> </li> + <li><a href="../../dev/best-practices.html" title="Development Best Practices"><span class="none"></span>Development Best Practices</a> </li> + <li><a href="../../dev/release-process.html" title="Release Process"><span class="none"></span>Release Process</a> </li> + <li class="nav-header">Project Details</li> + <li><a href="../../project-info.html" title="Overview"><span class="none"></span>Overview</a> </li> + <li><a href="../../mail-lists.html" title="Mailing Lists"><span class="none"></span>Mailing Lists</a> </li> + <li><a href="../../source-repository.html" title="Source Repository"><span class="none"></span>Source Repository</a> </li> + <li><a href="../../issue-tracking.html" title="Issue Tracking"><span class="none"></span>Issue Tracking</a> </li> + <li><a href="../../dependency-management.html" title="Dependencies"><span class="none"></span>Dependencies</a> </li> + <li><a href="../../team-list.html" title="Project Team"><span class="none"></span>Project Team</a> </li> + </ul> + <hr /> + <div id="poweredBy"> + <div class="clear"></div> + <div class="clear"></div> + <div class="clear"></div> + <div class="clear"></div> + <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="../../images/logos/maven-feather.png" /></a> + </div> + </div> + </div> + <div id="bodyColumn" class="span10" > + + + <div class="section"> +<h2><a name="Sample_X:"></a>Sample X: </h2> + +<div class="xmlConf"> + + </div> + +<div class="section"> +<h3><a name="Objective"></a>Objective</h3> + +<p> + + </p> + </div> + +<div class="section"> +<h3><a name="Pre-requisites"></a>Pre-requisites</h3> + +<p> + </p> +<ul> + +<li> + Deploy the SimpleStockQuoteService in the sample Axis2 server and start Axis2 + </li> + +<li> + Start Synapse using the configuration numbered X (repository/conf/sample/synapse_sample_X.xml) + +<div class="command"> + Unix/Linux: sh synapse.sh -sample X<br /> + Windows: synapse.bat -sample X + </div> + </li> + </ul> + + </div> + +<div class="section"> +<h3><a name="Executing_the_Client"></a>Executing the Client</h3> + +<div class="command">ant stockquote -Daddurl=http://localhost:9000/services/SimpleStockQuoteService -Dtrpurl=http://localhost:8280/</div> + + +<div class="consoleOutput">Sat Nov 18 21:01:23 IST 2006 SimpleStockQuoteService :: Generating quote for : IBM</div> + + +<div class="consoleOutput">Standard :: Stock price = $95.26454380258552</div> + </div> + </div> + +<p><a href="../samples.html">Back to Catalog</a></p> + + + </div> + </div> + </div> + <hr/> + <footer> + <div class="container-fluid"> + <div class="row-fluid"> + <p>Copyright ©2005–2017 +<a href="http://www.apache.org/">Apache Software Foundation</a>. +All rights reserved.</p> + </div> + </div> + </footer> + </body> +</html> Added: synapse/site/3_0_1/userguide/template_library.html URL: http://svn.apache.org/viewvc/synapse/site/3_0_1/userguide/template_library.html?rev=1817077&view=auto ============================================================================== --- synapse/site/3_0_1/userguide/template_library.html (added) +++ synapse/site/3_0_1/userguide/template_library.html Mon Dec 4 09:53:57 2017 @@ -0,0 +1,594 @@ +<!DOCTYPE html> +<!-- + | Generated by Apache Maven Doxia Site Renderer 1.7.4 at 2017-12-04 + | Rendered using Apache Maven Fluido Skin 1.6 +--> +<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"> + <head> + <meta charset="UTF-8" /> + <meta name="viewport" content="width=device-width, initial-scale=1.0" /> + <meta name="Date-Revision-yyyymmdd" content="20171204" /> + <meta http-equiv="Content-Language" content="en" /> + <title>Apache Synapse – Apache Synapse - Synapse Template Libraries</title> + <link rel="stylesheet" href="../css/apache-maven-fluido-1.6.min.css" /> + <link rel="stylesheet" href="../css/site.css" /> + <link rel="stylesheet" href="../css/print.css" media="print" /> + <script type="text/javascript" src="../js/apache-maven-fluido-1.6.min.js"></script> + </head> + <body class="topBarDisabled"> + <div class="container-fluid"> + <div id="banner"> + <div class="pull-left"><div id="bannerLeft"><h2>Apache Synapse</h2> +</div> +</div> + <div class="pull-right"></div> + <div class="clear"><hr/></div> + </div> + + <div id="breadcrumbs"> + <ul class="breadcrumb"> + <li id="publishDate">Last Published: 2017-12-04<span class="divider">|</span> +</li> + <li id="projectVersion">Version: 3.0.1</li> + </ul> + </div> + <div class="row-fluid"> + <div id="leftColumn" class="span2"> + <div class="well sidebar-nav"> +<ul class="nav nav-list"> + <li class="nav-header">Main Menu</li> + <li><a href="../index.html" title="Home"><span class="none"></span>Home</a> </li> + <li><a href="../download.html" title="Download"><span class="none"></span>Download</a> </li> + <li><a href="../history.html" title="History"><span class="none"></span>History</a> </li> + <li><a href="http://www.apache.org/licenses/LICENSE-2.0" class="externalLink" title="License"><span class="none"></span>License</a> </li> + <li><a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks"><span class="none"></span>Thanks</a> </li> + <li><a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship"><span class="none"></span>Sponsorship</a> </li> + <li><a href="http://www.apache.org/security/" class="externalLink" title="Security"><span class="none"></span>Security</a> </li> + <li class="nav-header">Documentation</li> + <li><a href="../userguide/installation.html" title="Installation Guide"><span class="none"></span>Installation Guide</a> </li> + <li><a href="../userguide/quick_start.html" title="Quick Start Guide"><span class="none"></span>Quick Start Guide</a> </li> + <li><a href="../userguide/samples/setup/index.html" title="Samples Setup Guide"><span class="none"></span>Samples Setup Guide</a> </li> + <li><a href="../userguide/samples.html" title="Samples Catalog"><span class="none"></span>Samples Catalog</a> </li> + <li><a href="../userguide/config.html" title="Configuration Language"><span class="none"></span>Configuration Language</a> </li> + <li><a href="../userguide/mediators.html" title="Mediators Catalog"><span class="none"></span>Mediators Catalog</a> </li> + <li><a href="../userguide/transports.html" title="Transports Catalog"><span class="none"></span>Transports Catalog</a> </li> + <li><a href="../userguide/properties.html" title="Properties Catalog"><span class="none"></span>Properties Catalog</a> </li> + <li><a href="../userguide/xpath.html" title="XPath functions and Variables"><span class="none"></span>XPath functions and Variables</a> </li> + <li><a href="../userguide/extending.html" title="Extending Synapse"><span class="none"></span>Extending Synapse</a> </li> + <li class="active"><a href="#"><span class="none"></span>Synapse Template Libraries</a> + </li> + <li><a href="../userguide/upgrading.html" title="Upgrading"><span class="none"></span>Upgrading</a> </li> + <li><a href="../userguide/deployment.html" title="Deployment"><span class="none"></span>Deployment</a> </li> + <li><a href="../apidocs/" title="Javadocs"><span class="none"></span>Javadocs</a> </li> + <li><a href="../userguide/faq.html" title="FAQ"><span class="none"></span>FAQ</a> </li> + <li class="nav-header">Developer Resources</li> + <li><a href="../dev/developer-guide.html" title="Developer Guide"><span class="none"></span>Developer Guide</a> </li> + <li><a href="../dev/best-practices.html" title="Development Best Practices"><span class="none"></span>Development Best Practices</a> </li> + <li><a href="../dev/release-process.html" title="Release Process"><span class="none"></span>Release Process</a> </li> + <li class="nav-header">Project Details</li> + <li><a href="../project-info.html" title="Overview"><span class="none"></span>Overview</a> </li> + <li><a href="../mail-lists.html" title="Mailing Lists"><span class="none"></span>Mailing Lists</a> </li> + <li><a href="../source-repository.html" title="Source Repository"><span class="none"></span>Source Repository</a> </li> + <li><a href="../issue-tracking.html" title="Issue Tracking"><span class="none"></span>Issue Tracking</a> </li> + <li><a href="../dependency-management.html" title="Dependencies"><span class="none"></span>Dependencies</a> </li> + <li><a href="../team-list.html" title="Project Team"><span class="none"></span>Project Team</a> </li> + </ul> + <hr /> + <div id="poweredBy"> + <div class="clear"></div> + <div class="clear"></div> + <div class="clear"></div> + <div class="clear"></div> + <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy"><img class="builtBy" alt="Built by Maven" src="../images/logos/maven-feather.png" /></a> + </div> + </div> + </div> + <div id="bodyColumn" class="span10" > + + + <div class="section"> +<h2><a name="Synapse_Template_Libraries"></a>Synapse Template Libraries</h2> + +<p> + Synapse template libraries are a mechanism to group synapse templates and automatically + expose it as a self contained set of function modules. It can be considered as a container + consisting a set of templates grouped in a particular order. Currently a synapse template + library is shipped as a ".zip" file and should be deployed inside + {$SYNAPSE_HOME}/repository/conf/synapse-libs . + If a given template container is successfully deployed, all + templates within the library will be accessible to any Synapse user. + </p> + +<p>Following is a sample skeleton structure of a template library</p> + +<div class="xmlConf">|-- artifacts.xml +|-- com +| `-- synapse +| `-- sample +| `-- SynapseLibTestMediator.class +|-- lib +| `-- test-mediator-1.0.0.jar +|-- template_dir-1 +| |-- artifact.xml +| |-- templ1_ns1.xml +| `-- templ2_ns1.xml +`-- template_dir-2 + |-- artifact.xml + |-- templ1_ns2.xml + `-- templ2_ns2.xml</div> + +<p>Following are these components at an overview.</p> + +<p> + </p> +<ul> + +<li>artifacts.xml + <br /> + This contains synapse library name , package name information and template groupings. + +<div class="xmlConf"><artifacts> + <artifact name="synapse.lib.name" package="synapse.lib.package.name"> + <dependency artifact="template.group.name"/>* + <description>sample synapse library</description>? + </artifact> +</artifacts></div></li> + +<li>artifact.xml + <br /> + This contains information about each individual template group. + <br /> + ie: - names of the templates in the group , corresponding configuration file ,etc. + +<div class="xmlConf"><artifact name="template.group.name" type="synapse/template"> + <subArtifacts> + <artifact name="template.name"> + <file>template_file.xml</file> + <description>a sample synapse library function</description>? + </artifact>* + </subArtifacts> +</artifact></div> + </li> + +<li>template_file.xml + <br /> + This contains the implementation of each individual template configuration + </li> + +<li>./lib + <br /> + This is the directory to add any classes for class loading or can contain the .class files from + the root + level. + </li> + </ul> + + +<p>Also utilizing a synapse library is a three step process.</p> + +<p> + </p> +<ul> + +<li>Create and deploy the library</li> + +<li>Importing the library into synapse + Users should deploy a import_lib_name.xml into + {$SYNAPSE_HOME}/repository/conf/synapse-config/imports + +<div class="xmlConf"><import xmlns="http://ws.apache.org/ns/synapse" name="SampleLibrary" package="synapse.lib"/></div> + </li> + +<li>Execute functions of library using a template invoker. Target template is a + combination of the package of synapse library and the target template name + target == {synapse_lib_package}.{template name} + + +<div class="xmlConf"><call-template target="synapse.lib.pkg.name.template_name"> + <with-param name="..." value="..."/>* +</call-template></div> + </li> + </ul> + + </div> + +<div class="section"> +<h2><a name="Synapse_Enterprise_Integration_Patterns_library"></a>Synapse Enterprise Integration Patterns library</h2> + +<p>Synapse Enterprise Integration Patterns library is a container consisting a set of + templates grouped in a particular order by implementing commonly used + <a class="externalLink" href="http://www.eaipatterns.com">Enterprise + Integration Patterns + </a> + from the set of patterns introduced by Gregor Hohpe and Bobby Woolf. + Users can design their solutions using these well-known patterns and then simply configure + and use these same patterns in Apache Synapse by calling up the function as required. + So this will greatly reduce the effort required when building integrations. + </p> + +<p>Following lists all the built-in patterns of Synapse EIP library currently supports and + describes their usage, functionality and configuration syntax. + This excludes all generic EIP patterns supported by synapse out of the box. + </p> + +<p> + </p> +<ul> + +<li> + <a href="#CalloutBlock">Callout Block</a> + </li> + +<li> + <a href="#Splitter">Splitter</a> + </li> + +<li> + <a href="#Aggregator">Aggregator</a> + </li> + +<li> + <a href="#SplitterAggregator">Splitter-Aggregator</a> + </li> + +<li> + <a href="#ScatterGather">Scatter-Gather</a> + </li> + +<li> + <a href="#WireTap">Wire Tap</a> + </li> + +<li> + <a href="#ContentBasedRouter">Content-Based Router</a> + </li> + +<li> + <a href="#DynamicRouter">Dynamic Router</a> + </li> + +<li> + <a href="#RecipientList">Recipient List</a> + </li> + </ul> + + <a name="CalloutBlock"></a> +<div class="section" id="CalloutBlock"> +<h3><a name="Callout_Block"></a>Callout Block</h3> + +<p> + This pattern is pretty much identical to the + <a class="externalLink" href="http://www.eaipatterns.com/RoutingTable.html">Routing slip pattern</a> + and this blocks + external service invocation during mediation. And useful in scenarios such as service chaining. + As default values are assigned to source and target xpaths, + one can simply utilize this pattern by just defining serviceURL. + <br /> + <br /> + + Call template target - + <b>synapse.lang.eip.callout_block</b> + <br /> + Parameters + <br /> + <b>service_URL</b> + - URL of the service + <br /> + <b>[action]</b> + - SOAP action(Optional) + <br /> + <b>[source_xpath | source_key]</b> + - Payload of the message( either Xpath or key and Optional) + <br /> + <b>[target_xpath | target_key]</b> + - A node to attach the response element ( either Xpath or key and optional) + <br /> + <br /> + Related Sample - <a href="samples/sample850.html">Sample 850</a> + </p> + </div> + <a name="Splitter"></a> +<div class="section" id="Splitter"> +<h3><a name="Splitter"></a>Splitter</h3> + +<p> + The + <a class="externalLink" href="http://www.eaipatterns.com/Sequencer.html">Splitter pattern</a> + breaks out the composite message into a series of individual messages by + finding matching elements for the XPath expression specified and then redirected to the given + endpoint. + <br /> + <br /> + + Call template target - + <b>synapse.lang.eip.splitter</b> + <br /> + Parameters + <br /> + <b>iterate_exp</b> + - Xpath expression from which element you want to split the message. + <br /> + <b>[attach_path]</b> + - Xpath expression to specify which elements needs to be attached to form new messages.( Optional) + <br /> + <b>endpoint_url</b> + - Endpoint which newly created messages are redirected to. + <br /> + <b>[attach_path_enabled]</b> + - Boolean value to enable attach path. Optional and by default this is false. + <br /> + <br /> + Related Sample - <a href="samples/sample851.html">Sample 851</a> + </p> + </div> + + <a name="Aggregator"></a> +<div class="section" id="Aggregator"> +<h3><a name="Aggregator"></a>Aggregator</h3> + +<p> + The + <a class="externalLink" href="http://www.eaipatterns.com/Aggregator.html">Aggregator pattern</a> + builds a single message distilled from the individual messages. + And messages will be merged by using the XPath expression specified for aggregator_exp. + <br /> + <br /> + + Call template target - + <b>synapse.lang.eip.aggregator</b> + <br /> + Parameters + <br /> + <b>aggregator_exp</b> + - An XPath expression specifying based on which elements to aggregate. + <br /> + <b>[sequence_ref]</b> + - target sequence which message should be mediated after aggregation. (Optional and if this is not + specified aggregator will send the aggregated message to the client). + <br /> + <b>[oncomplete_seq_enabled]</b> + - Boolean value to enable target sequence. (Optional and by default this is false) + <br /> + <br /> + Related Sample - <a href="samples/sample851.html">Sample 851</a> + </p> + </div> + + <a name="SplitterAggregator"></a> +<div class="section" id="SplitterAggregator"> +<h3><a name="Splitter-Aggregator"></a>Splitter-Aggregator</h3> + +<p> + This pattern provides the combined functionality of Splitter and Aggregator patterns. + Which is when you specified following parameters this pattern will split the message and + does a synchronized call for the given endpoint and aggregates replies then send back to + client or mediates to the defined target sequence. + <br /> + <br /> + + Call template target - + <b>synapse.lang.eip.splitter_aggregator</b> + <br /> + Parameters + <br /> + <b>iterate_exp</b> + - An Xpath expression from which element you want to split the message. + <br /> + <b>[attach_path]</b> + - An Xpath expression to specify which elements needs to be attached to form new messages.( + Optional) + <br /> + <b>endpoint_url</b> + - Endpoint which newly created messages are redirected to. + <br /> + <b>[attach_path_enabled]</b> + - Boolean value to enable attach path. Optional and by default this is false. + <br /> + <b>aggregator_exp</b> + - An XPath expression specifying based on which elements to aggregate. + <br /> + <b>[sequence_ref]</b> + - Target sequence which message should be mediated after aggregation. (Optional and if this is not + specified aggregator will send the aggregated message to the client). + <br /> + <b>[oncomplete_seq_enabled]</b> + - Boolean value to enable target sequence. (Optional and by default this is false) + <br /> + <br /> + Related Sample - <a href="samples/sample852.html">Sample 852</a> + </p> + </div> + + <a name="ScatterGather"></a> +<div class="section" id="ScatterGather"> +<h3><a name="Scatter-Gather"></a>Scatter-Gather</h3> + +<p> + The + <a class="externalLink" href="http://www.eaipatterns.com/BroadcastAggregate.html">Scatter-Gather pattern</a> + broadcasts a message to multiple recipients and re-aggregates the + responses back into a single message and send back to client or mediates to the defined + target sequence. + <br /> + <br /> + + Call template target - + <b>synapse.lang.eip.scatter_gather</b> + <br /> + Parameters + <br /> + <b>aggregator_exp</b> + - An XPath expression specifying based on which elements to aggregate. + <br /> + <b>[sequence_ref]</b> + - Target sequence which message should be mediated after aggregation. (Optional and if this is not + specified aggregator will send the aggregated message to the client). + <br /> + <b>[oncomplete_seq_enabled]</b> + - Boolean value to enable target sequence. (Optional and by default this is false) + <br /> + <b>recipient_list</b> + - Set of recipient endpoints , which should be specified as comma separated values + <br /> + <br /> + Related Sample - <a href="samples/sample853.html">Sample 853</a> + </p> + </div> + + <a name="WireTap"></a> +<div class="section" id="WireTap"> +<h3><a name="Wire_Tap"></a>Wire Tap</h3> + +<p> + <a class="externalLink" href="http://www.eaipatterns.com/WireTap.html">Wire Tap pattern</a> + enables route messages to a secondary channel while they are being forwarded to the main channel. + <br /> + <br /> + + Call template target - + <b>synapse.lang.eip.wire_tap</b> + <br /> + Parameters + <br /> + <b>destination_uri</b> + - Endpoint of main channel + <br /> + <b>wiretap_uri</b> + - Endpoint of secondary channel + <br /> + <br /> + Related Sample - <a href="samples/sample854.html">Sample 854</a> + </p> + </div> + + <a name="ContentBasedRouter"></a> +<div class="section" id="ContentBasedRouter"> +<h3><a name="Content-Based_Router"></a>Content-Based Router</h3> + +<p> + The + <a class="externalLink" href="http://www.eaipatterns.com/ContentBasedRouter.html">Content Based Router pattern</a> + route messages to the appropriate sequence, according to the message contents. + Routing decision is taken by matching given Xpath expression and Regular Expression. + User can define multiple matching elements as regular expressions and a target sequence where + if any of matching element evaluates to true then it mediates using the target sequence. + If none of the case statements are matching and default case is specified, it will be executed. + <br /> + <br /> + + Call template target - + <b>synapse.lang.eip.content_base_router</b> + <br /> + Parameters + <br /> + <b>routing_exp</b> + - Here you can specify the source xpath to be evaluated + <br /> + <b>match_content</b> + - This is a String which contains the matching conditions. Following is the syntax of it + <b>"IBM:cnd1_seq,MSFT:cnd2_seq;cnd3_seq"</b> + <br /> + User can define multiple matching conditions using "," splitter. regular expressions and + target sequence should be separated by inserting":". And finally default sequence needs to be + defined + after inserting ";". If there is no any target sequence + defined for a particular regular expression , default it will be mediated to the main sequence. + <br /> + <br /> + Related Sample - <a href="samples/sample855.html">Sample 855</a> + </p> + </div> + + <a name="DynamicRouter"></a> +<div class="section" id="DynamicRouter"> +<h3><a name="Dynamic_Router"></a>Dynamic Router</h3> + +<p> + The + <a class="externalLink" href="http://www.eaipatterns.com/DynamicRouter.html">Dynamic Router pattern</a> + route a message consecutively through a series of condition steps, + which is parsed by the “conditions” parameter. The list of sequences through which the message + should pass is decided dynamically at run time. + It checks whether the route condition evaluates to true and mediates using the given sequence and + user can define + routing decision based on the message contents such as HTTP url,HTTP headers or combination of both. + <br /> + <br /> + + Call template target - + <b>synapse.lang.eip.dynamic_router</b> + <br /> + Parameters + <br /> + <b>conditions</b> + - This is a String which contains the routing rules. Following is the syntax of it. + <br /> + <b> + "header=foo:bar.*{AND}url=/services/;seq=seq1,header=header1:bar.*{OR}header=header1:foo.*;seq=seq2,header=header2:foo.*;seq=seq3" + </b> + <br /> + User can define multiple routing rules by using "," splitter. Routing rule contains following + format, + <br /> + To match HTTP headers , use + <b>header=regEx:seqRef</b> + <br /> + header source and regular expression should be separated by inserting ":" + <br /> + To match HTTP url, use + <b>url=/url</b> + <br /> + Then target sequence needs to be defined after inserting ";" + <br /> + + Also you can use<b>"{AND}"</b>as to specify logical AND , + <b>"{OR}"</b> + as to specify logical OR to match + multiple headers and url in your expression. + <br /> + <br /> + Related Sample - <a href="samples/sample856.html">Sample 856</a> + </p> + </div> + + <a name="RecipientList"></a> +<div class="section" id="RecipientList"> +<h3><a name="Recipient_List"></a>Recipient List</h3> + +<p> + The + <a class="externalLink" href="http://www.eaipatterns.com/RecipientList.html">Recipient List pattern</a> + forward the message to all channels associated with the defined set of recipients. + <br /> + <br /> + + Call template target - + <b>synapse.lang.eip.recipient_list</b> + <br /> + Parameters + <br /> + <b>recipient_list</b> + - set of recipient endpoints , which should be specified as comma separated values + <br /> + <br /> + Related Sample - <a href="samples/sample857.html">Sample 857</a> + </p> + </div> + </div> + + + </div> + </div> + </div> + <hr/> + <footer> + <div class="container-fluid"> + <div class="row-fluid"> + <p>Copyright ©2005–2017 +<a href="http://www.apache.org/">Apache Software Foundation</a>. +All rights reserved.</p> + </div> + </div> + </footer> + </body> +</html>