You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@servicemix.apache.org by ch...@apache.org on 2006/11/08 20:03:52 UTC
svn commit: r472593 - in /incubator/servicemix/site/main:
jbi-components.html servicemix-eip.html
Author: chirino
Date: Wed Nov 8 11:03:52 2006
New Revision: 472593
URL: http://svn.apache.org/viewvc?view=rev&rev=472593
Log:
Latest export from confluence
Modified:
incubator/servicemix/site/main/jbi-components.html
incubator/servicemix/site/main/servicemix-eip.html
Modified: incubator/servicemix/site/main/jbi-components.html
URL: http://svn.apache.org/viewvc/incubator/servicemix/site/main/jbi-components.html?view=diff&rev=472593&r1=472592&r2=472593
==============================================================================
--- incubator/servicemix/site/main/jbi-components.html (original)
+++ incubator/servicemix/site/main/jbi-components.html Wed Nov 8 11:03:52 2006
@@ -36,7 +36,7 @@
<TR>
<TD align="left" valign="middle" nowrap="">
<DIV id="site-breadcrumbs">
-<A href="home.html" title="ServiceMix">ServiceMix</A> > <A href="home.html" title="Home">Home</A> > <A href="documentation.html" title="Documentation">Documentation</A> > <A href="components.html" title="Components">Components</A> > <A href="" title="JBI Components">JBI Components</A>
+<A href="home.html" title="ServiceMix">ServiceMix</A> > <A href="home.html" title="Home">Home</A> > <A href="documentation.html" title="Documentation">Documentation</A> > <A href="components-list.html" title="Components list">Components list</A> > <A href="" title="JBI Components">JBI Components</A>
</DIV>
</TD>
<TD align="right" valign="middle" nowrap="">
Modified: incubator/servicemix/site/main/servicemix-eip.html
URL: http://svn.apache.org/viewvc/incubator/servicemix/site/main/servicemix-eip.html?view=diff&rev=472593&r1=472592&r2=472593
==============================================================================
--- incubator/servicemix/site/main/servicemix-eip.html (original)
+++ incubator/servicemix/site/main/servicemix-eip.html Wed Nov 8 11:03:52 2006
@@ -36,7 +36,7 @@
<TR>
<TD align="left" valign="middle" nowrap="">
<DIV id="site-breadcrumbs">
-<A href="home.html" title="ServiceMix">ServiceMix</A> > <A href="home.html" title="Home">Home</A> > <A href="documentation.html" title="Documentation">Documentation</A> > <A href="components.html" title="Components">Components</A> > <A href="jbi-components.html" title="JBI Components">JBI Components</A> > <A href="" title="servicemix-eip">servicemix-eip</A>
+<A href="home.html" title="ServiceMix">ServiceMix</A> > <A href="home.html" title="Home">Home</A> > <A href="documentation.html" title="Documentation">Documentation</A> > <A href="components-list.html" title="Components list">Components list</A> > <A href="jbi-components.html" title="JBI Components">JBI Components</A> > <A href="" title="servicemix-eip">servicemix-eip</A>
</DIV>
</TD>
<TD align="right" valign="middle" nowrap="">
@@ -198,7 +198,26 @@
This pattern implements the <SPAN class="nobr"><A href="http://www.enterpriseintegrationpatterns.com/ContentBasedRouter.html" title="Visit page outside Confluence" rel="nofollow">Content-Based Router<SUP><IMG class="rendericon" src="http://goopen.org/confluence/images/icons/linkext7.gif" height="0" width="0" align="absmiddle" alt="" border="0"></SUP></A></SPAN> pattern.</P>
<P><IMG src="http://www.enterpriseintegrationpatterns.com/img/ContentBasedRouter.gif" align="absmiddle" border="0"></P>
-
+<DIV class="code"><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag"><eip:content-based-router service=<SPAN class="code-quote">"test:router"</SPAN> endpoint=<SPAN class="code-quote">"endpoint"</SPAN>></SPAN>
+ <SPAN class="code-tag"><eip:rules></SPAN>
+ <SPAN class="code-tag"><eip:routing-rule></SPAN>
+ <SPAN class="code-tag"><eip:predicate></SPAN>
+ <SPAN class="code-tag"><eip:xpath-predicate xpath=<SPAN class="code-quote">"count(/test:echo) = 1"</SPAN> namespaceContext=<SPAN class="code-quote">"#nsContext"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:predicate></SPAN>
+ <SPAN class="code-tag"><eip:target></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target uri=<SPAN class="code-quote">"endpoint:http://test/pipeline/endpoint"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:target></SPAN>
+ <SPAN class="code-tag"></eip:routing-rule></SPAN>
+ <SPAN class="code-tag"><eip:routing-rule></SPAN>
+ <SPAN class="code-tag"><SPAN class="code-comment"><!-- there is no predicate, so this is the default destination --></SPAN></SPAN>
+ <SPAN class="code-tag"><eip:target></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:recipients"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:target></SPAN>
+ <SPAN class="code-tag"></eip:routing-rule></SPAN>
+ <SPAN class="code-tag"></eip:rules></SPAN>
+<SPAN class="code-tag"></eip:content-based-router></SPAN></PRE>
+</DIV></DIV>
<H3><A name="servicemix-eip-MessageFilter"></A>Message Filter</H3>
@@ -206,14 +225,32 @@
This pattern implements the <SPAN class="nobr"><A href="http://www.enterpriseintegrationpatterns.com/Filter.html" title="Visit page outside Confluence" rel="nofollow">Message Filter<SUP><IMG class="rendericon" src="http://goopen.org/confluence/images/icons/linkext7.gif" height="0" width="0" align="absmiddle" alt="" border="0"></SUP></A></SPAN> pattern.</P>
<P><IMG src="http://www.enterpriseintegrationpatterns.com/img/MessageFilter.gif" align="absmiddle" border="0"></P>
-
+<DIV class="code"><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag"><eip:message-filter service=<SPAN class="code-quote">"test:messageFilter"</SPAN> endpoint=<SPAN class="code-quote">"endpoint"</SPAN>></SPAN>
+ <SPAN class="code-tag"><eip:target></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:trace3"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:target></SPAN>
+ <SPAN class="code-tag"><eip:filter></SPAN>
+ <SPAN class="code-tag"><eip:xpath-predicate xpath=<SPAN class="code-quote">"count(/test:world) = 1"</SPAN> namespaceContext=<SPAN class="code-quote">"#nsContext"</SPAN>/></SPAN>
+ <SPAN class="code-tag"></eip:filter></SPAN>
+<SPAN class="code-tag"></eip:message-filter></SPAN></PRE>
+</DIV></DIV>
<H3><A name="servicemix-eip-Pipeline"></A>Pipeline</H3>
<P>The Pipeline component is a bridge between an In-Only (or Robust-In-Only) MEP and an In-Out MEP. When the Pipeline receives an In-Only MEP, it will send the input in an In-Out MEP to the tranformer destination and forward the response in an In-Only MEP to the target destination.</P>
<P>The old org.apache.servicemix.components.util.PipelineComponent will be deprecated. This one offers the same feature but can be safely clustered and use in a transactional enviromnent.</P>
-
+<DIV class="code"><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag"><eip:pipeline service=<SPAN class="code-quote">"test:pipeline"</SPAN> endpoint=<SPAN class="code-quote">"endpoint"</SPAN>></SPAN>
+ <SPAN class="code-tag"><eip:transformer></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:routingSlip"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:transformer></SPAN>
+ <SPAN class="code-tag"><eip:target></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:trace2"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:target></SPAN>
+<SPAN class="code-tag"></eip:pipeline></SPAN></PRE>
+</DIV></DIV>
<H3><A name="servicemix-eip-StaticRecipientList"></A>Static Recipient List</H3>
@@ -221,7 +258,14 @@
This component implements the <SPAN class="nobr"><A href="http://www.enterpriseintegrationpatterns.com/RecipientList.html" title="Visit page outside Confluence" rel="nofollow">Recipient List<SUP><IMG class="rendericon" src="http://goopen.org/confluence/images/icons/linkext7.gif" height="0" width="0" align="absmiddle" alt="" border="0"></SUP></A></SPAN> pattern, with the limitation that the recipient list is static.</P>
<P><IMG src="http://www.enterpriseintegrationpatterns.com/img/RecipientList.gif" align="absmiddle" border="0"></P>
-
+<DIV class="code"><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag"><eip:static-recipient-list service=<SPAN class="code-quote">"test:recipients"</SPAN> endpoint=<SPAN class="code-quote">"endpoint"</SPAN>></SPAN>
+ <SPAN class="code-tag"><eip:recipients></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:messageFilter"</SPAN> /></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:trace4"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:recipients></SPAN>
+<SPAN class="code-tag"></eip:static-recipient-list></SPAN></PRE>
+</DIV></DIV>
<H3><A name="servicemix-eip-StaticRoutingSlip"></A>Static Routing Slip</H3>
@@ -230,7 +274,14 @@
This component only uses In-Out MEPs and errors or faults sent by targets are reported back to the consumer, thus interrupting the routing process.</P>
<P><IMG src="http://www.enterpriseintegrationpatterns.com/img/RoutingTableSimple.gif" align="absmiddle" border="0"></P>
-
+<DIV class="code"><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag"><eip:static-routing-slip service=<SPAN class="code-quote">"test:routingSlip"</SPAN> endpoint=<SPAN class="code-quote">"endpoint"</SPAN>></SPAN>
+ <SPAN class="code-tag"><eip:targets></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:echo"</SPAN> /></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:echo"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:targets></SPAN>
+<SPAN class="code-tag"></eip:static-routing-slip></SPAN></PRE>
+</DIV></DIV>
<H3><A name="servicemix-eip-WireTap"></A>Wire Tap</H3>
@@ -241,14 +292,30 @@
In the case of an In-Out MEP, this means that the WireTap needs to be configured to send the exchange along to the destination service.</P>
<P><IMG src="http://www.enterpriseintegrationpatterns.com/img/WireTap.gif" align="absmiddle" border="0"></P>
-
+<DIV class="code"><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag"><eip:wire-tap service=<SPAN class="code-quote">"test:wireTap"</SPAN> endpoint=<SPAN class="code-quote">"endpoint"</SPAN>></SPAN>
+ <SPAN class="code-tag"><eip:target></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:xpathSplitter"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:target></SPAN>
+ <SPAN class="code-tag"><eip:inListener></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:trace1"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:inListener></SPAN>
+<SPAN class="code-tag"></eip:wire-tap></SPAN></PRE>
+</DIV></DIV>
<H3><A name="servicemix-eip-XPathSplitter"></A>XPath Splitter</H3>
<P>The XPathSplitter component implements the <SPAN class="nobr"><A href="http://www.enterpriseintegrationpatterns.com/Sequencer.html" title="Visit page outside Confluence" rel="nofollow">Splitter<SUP><IMG class="rendericon" src="http://goopen.org/confluence/images/icons/linkext7.gif" height="0" width="0" align="absmiddle" alt="" border="0"></SUP></A></SPAN> pattern using an xpath expression to split the incoming xml.</P>
<P><IMG src="http://www.enterpriseintegrationpatterns.com/img/Sequencer.gif" align="absmiddle" border="0"></P>
-
+<DIV class="code"><DIV class="codeContent">
+<PRE class="code-xml"><eip:xpath-splitter service=<SPAN class="code-quote">"test:xpathSplitter"</SPAN> endpoint=<SPAN class="code-quote">"endpoint"</SPAN>
+ xpath=<SPAN class="code-quote">"/*/*"</SPAN> namespaceContext=<SPAN class="code-quote">"#nsContext"</SPAN>>
+ <SPAN class="code-tag"><eip:target></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target uri=<SPAN class="code-quote">"service:http://test/router"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:target></SPAN>
+<SPAN class="code-tag"></eip:xpath-splitter></SPAN></PRE>
+</DIV></DIV>
<H3><A name="servicemix-eip-SplitAggregator"></A>SplitAggregator</H3>
@@ -256,7 +323,13 @@
It relies on several properties that should be set on the exchanges (count, index, correlationId).</P>
<P><IMG src="http://www.enterpriseintegrationpatterns.com/img/Aggregator.gif" align="absmiddle" border="0"></P>
-
+<DIV class="code"><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag"><eip:split-aggregator service=<SPAN class="code-quote">"test:aggregator"</SPAN> endpoint=<SPAN class="code-quote">"endpoint"</SPAN>></SPAN>
+ <SPAN class="code-tag"><eip:target></SPAN>
+ <SPAN class="code-tag"><eip:exchange-target service=<SPAN class="code-quote">"test:trace5"</SPAN> /></SPAN>
+ <SPAN class="code-tag"></eip:target></SPAN>
+<SPAN class="code-tag"></eip:split-aggregator></SPAN></PRE>
+</DIV></DIV>
<H2><A name="servicemix-eip-Tips"></A>Tips</H2>
@@ -302,7 +375,13 @@
<H3><A name="servicemix-eip-NamespaceContext"></A>NamespaceContext</H3>
<P>Some patterns use XPath expression. To use such expressions on an xml with namespaces, you need to define a NamespaceContext.</P>
-
+<DIV class="code"><DIV class="codeContent">
+<PRE class="code-xml"><SPAN class="code-tag"><eip:namespace-context id=<SPAN class="code-quote">"nsContext"</SPAN>></SPAN>
+ <SPAN class="code-tag"><eip:namespaces></SPAN>
+ <SPAN class="code-tag"><eip:namespace prefix=<SPAN class="code-quote">"test"</SPAN>></SPAN>http://test<SPAN class="code-tag"></eip:namespace></SPAN>
+ <SPAN class="code-tag"></eip:namespaces></SPAN>
+<SPAN class="code-tag"></eip:namespace-context></SPAN></PRE>
+</DIV></DIV>
<P>This NamespaceContext can be referenced by a <B>namespaceContext</B> attribute as shown in the XPathSplitter or MessageFilter examples.</P>
<H3><A name="servicemix-eip-Predicates"></A>Predicates</H3>
@@ -328,8 +407,8 @@
</DIV>
<DIV id="site-footer">
Added by <A href="http://goopen.org/confluence/users/viewuserprofile.action?username=gnt">gnt</A>,
- last edited by <A href="http://goopen.org/confluence/users/viewuserprofile.action?username=georg_dembowski">Georg Dembowski</A> on Oct 04, 2006
- (<A href="http://goopen.org/confluence/pages/diffpages.action?pageId=1915&originalId=13950">view change</A>)
+ last edited by <A href="http://goopen.org/confluence/users/viewuserprofile.action?username=gnodet">Guillaume Nodet</A> on Nov 12, 2006
+ (<A href="http://goopen.org/confluence/pages/diffpages.action?pageId=1915&originalId=14935">view change</A>)
(<A href="http://goopen.org/confluence/pages/editpage.action?pageId=1915">edit page</A>)
</DIV>