ws-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Apache Wiki <wikidi...@apache.org>
Subject [Ws Wiki] Update of "Synapse/UserGuide" by PaulFremantle
Date Mon, 12 Dec 2005 05:18:30 GMT
Dear Wiki user,

You have subscribed to a wiki page or wiki category on "Ws Wiki" for change notification.

The following page has been changed by PaulFremantle:
http://wiki.apache.org/ws/Synapse/UserGuide

------------------------------------------------------------------------------
  Although there is a cleanly defined division between Synapse and Axis2, the Synapse system
relies on Axis2 to run. Firstly, it uses the AXIOM object model, and secondly it uses Axis2
as a listener and sender for Web service requests.
  There are two ways to set up the Synapse server.
   1.	''synapse.war'' which can be deployed in a servlet container.
-  1.	A lightweight server which can be run under Axis2’s SimpleHTTPServer (a simple lightweight
HTTP server option that does not require a Servlet Engine)
+  1.	A lightweight server which runs with its own HTTP server  (it uses Axis2’s SimpleHTTPServer
which is a simple lightweight HTTP server option that does not require a Servlet Engine)
  
  You can either download these or build them using Maven.
  
@@ -29, +29 @@

  If you wish to use the standalone server, unzip the Synapse-M1-SNAPSHOT.zip. In the bin
directory you will find a script called:
  
  {{{
- synapse-lightweight [.sh or .bat]
+ synapse [.sh or .bat]
  }}}
  
- You should also see a directory called {{{synapse-repository}}}. In there you should find
the axis2.xml and synapse.xml config files. The axis2.xml should not need to be modified.
+ You should also see a directory called {{{synapse-repository}}}. In there you should find
the axis2.xml and synapse.xml config files. The axis2.xml should not need to be modified,
but if you know what you are doing you can of course!
  
  The command line for synapse-lightweight takes the repository directory and listening port,
so:
  {{{
- sh bin/synapse-lightweight.sh synapse-repository 8080 [Linux]
+ sh bin/synapse.sh synapse-repository 8080 [Linux]
  
- bin\synapse-lightweight synapse-repository 8080 [Win]
+ bin\synapse synapse-repository 8080 [Win]
  
  }}}}
+ 
+ == Deployment models == 
+ 
+ Synapse can intermediate in a number of different models:
+  * Transparent mode
+ 
+   - In this mode, Synapse acts as an HTTP Proxy. 
+ 
+   - Clients are configured with the Synapse endpoint URL as the HTTP Proxy URL. 
+ 
+   - Synapse can work with both WS-A and non-WS-A SOAP messages in this model.
+ 
+  * Gateway mode
+ 
+   - In this mode, the client explicitly sends a message to Synapse (with or without WS-A
headers)
+ 
+   - The synapse.xml must include enough routing information to correctly set the WS-A To
and then Synapse forwards the message
+ 
+  * Smart client mode
+ 
+   - In this mode, the client sends the message to Synapse but sets the WSA headers to the
ultimate destination
+ 
  
  == Processing model ==
  Synapse has an overall model under which there are two ways to extend the framework.
@@ -66, +88 @@

  {{{
  <stage name="stage1-all">
     	<!--This enables the addressing module which looks at wsa headers -->
- <addressing/>
+         <engage-addressing-in/>
  
  <!—Logs the message -->
          <log/>
@@ -121, +143 @@

  The SynapseMessage interface is based on the Axis2 MessageContext interface. It uses the
Axis2 EndpointReference and SOAPEnvelope classes/interfaces. 
  
  The purpose of this interface is to capture a message as it flows through the system. As
you will see the messages are represented using the SOAP infoset. Binary messages can be embedded
in the Envelope using the MTOM support built into Axis2's AXIOM object model. 
- 
  
  === Mediator interface ===
  The second key interface for mediator writers is the Mediator interface:
@@ -292, +313 @@

  
  == Samples ==
  
- Logging
+ === Logging ===
  The system ships with a couple of samples. These include sample clients and appropriate
synapse.xml intermediary configurations.
  
  The first sample demonstrates the logging facility. Here is a simple synapse.xml:
  {{{
  <synapse xmlns="http://ws.apache.org/ns/synapse">
-    <addressing/>
+    <engage-addressing-in/>
     <log/>
     <send/>
  </synapse>

Mime
View raw message