axis-java-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From chinth...@apache.org
Subject svn commit: r290351 [2/2] - in /webservices/axis2/trunk/java/xdocs: Axis2ArchitectureGuide.html faq.html http-transport.html installationguide.html maven-help.html migration.html rest-ws.html tcp-transport.html webadminguide.html
Date Tue, 20 Sep 2005 04:29:52 GMT
Modified: webservices/axis2/trunk/java/xdocs/maven-help.html
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/xdocs/maven-help.html?rev=290351&r1=290350&r2=290351&view=diff
==============================================================================
--- webservices/axis2/trunk/java/xdocs/maven-help.html (original)
+++ webservices/axis2/trunk/java/xdocs/maven-help.html Mon Sep 19 21:29:37 2005
@@ -1,75 +1,153 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
-<title>Quick Guide to Maven for Axis 2.0</title>
-<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
-</head>
-
-<body>
-<h1 align="center">Quick Guide to Maven for Axis 2.0 </h1>
-<h2 align="left">Introduction</h2>
-<p align="left"><a href="http://maven.apache.org">Maven</a> is used as the build tool of Axis 2.0. This document will provide a quick guide to use maven with your developments.</p>
-<h2 align="left">Commands</h2>
-<table border="1" align="center">
-  <tr>
-    <th scope="col"><div align="left">Command</div></th>
-    <th scope="col"><div align="left">Description</div></th>
-  </tr>
-  <tr>
-    <td><div align="left">maven</div></td>
-    <td><div align="left">download relevant jars, if not available and compile and run tests of the system. </div></td>
-  </tr>
-  <tr>
-    <td>maven clean </td>
-    <td>Clean all the stuff build so far, that are in the target folder. This will not clean the jar repository</td>
-  </tr>
-  <tr>
-    <td><div align="left">maven test </div></td>
-    <td><div align="left">run only the tests. Will do automatic compilation of changed sources as well. This will not run soap interop tests</div></td>
-  </tr>
-<tr>
-    <td><div align="left">maven clean all-tests </div></td>
-    <td><div align="left">Clean up and run all off line and on line tests</div></td>
-  </tr>  
-  <tr>
-    <td><div align="left">maven itest</div></td>
-    <td><div align="left">To run the online-mode tests for say the modules/integration
-     Run "maven itest" from modules/intergration</div></td>
-  </tr>
-  <tr>
-    <td><div align="left">maven test itest</div></td>
-    <td><div align="left">To run all tests for say the modules/integration
-     Run "maven test itest" from modules/integration</div></td>
-  </tr>
-  <tr>
-    <td><div align="left">maven -g </div></td>
-    <td><div align="left">List down all the commands available with maven </div></td>
-  </tr>
-  <tr>
-    <td><div align="left">maven multiproject </div></td>
-    <td><div align="left">generate this site </div></td>
-  </tr>
-  <tr>
-    <td><div align="left">maven idea:multiproject </div></td>
-    <td><div align="left">generate IDEA .ipr, .iml and .iws project files</div></td>
-  </tr>
-  <tr>
-    <td><div align="left">maven -Dmaven.test.skip=true</div></td>
-    <td><div align="left"></div>Builds Axis2 and skips all the tests</td>
-  </tr>
-</table>
-
-<br></br>
-<h2 align="left">Maven FAQ</h2>
-<p><i>1. I have problems with maven 1.1</i></p>
-<p>                        It seems that maven 1.1 doesn't come bundled with the required itest plugin and artifact plugin. Run followings to get it updated<br>
-                                  1. maven plugin:download -DgroupId=maven-itest-plugin
--DartifactId=maven-itest-plugin -Dversion=1.0
--Dmaven.repo.remote=http://www.openejb.org/maven,http://www.ibiblio.org/maven <br>
-                                  2. maven plugin:Download -DgroupId=maven -DartifactId=maven-artifact-plugin 
--Dversion=1.6</p>
-<p align="left">&nbsp;</p>
-<p align="left">&nbsp;</p>
-</body>
-</html>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+"http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+  <title>Quick Guide to Maven for Axis 2.0</title>
+  <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+</head>
+
+<body lang="en">
+<h1 align="center">Quick Guide to Maven for Axis 2.0</h1>
+
+<h2 align="left">Introduction</h2>
+
+<p align="left"><a href="http://maven.apache.org">Maven</a> is used as the
+build tool of Axis 2.0. This document will provide a quick guide to use maven
+with your developments.</p>
+
+<h2 align="left">Commands</h2>
+
+<table border="1" align="center">
+  <tbody>
+    <tr>
+      <th scope="col">
+        <div align="left">
+        Command</div>
+      </th>
+      <th scope="col">
+        <div align="left">
+        Description</div>
+      </th>
+    </tr>
+    <tr>
+      <td>
+        <div align="left">
+        maven</div>
+      </td>
+      <td>
+        <div align="left">
+        download relevant jars, if not available and compile and run tests of
+        the system.</div>
+      </td>
+    </tr>
+    <tr>
+      <td>maven clean</td>
+      <td>Clean all the stuff build so far, that are in the target folder.
+        This will not clean the jar repository</td>
+    </tr>
+    <tr>
+      <td>
+        <div align="left">
+        maven test</div>
+      </td>
+      <td>
+        <div align="left">
+        run only the tests. Will do automatic compilation of changed sources
+        as well. This will not run soap interop tests</div>
+      </td>
+    </tr>
+    <tr>
+      <td>
+        <div align="left">
+        maven clean all-tests</div>
+      </td>
+      <td>
+        <div align="left">
+        Clean up and run all off line and on line tests</div>
+      </td>
+    </tr>
+    <tr>
+      <td>
+        <div align="left">
+        maven itest</div>
+      </td>
+      <td>
+        <div align="left">
+        To run the online-mode tests for say the modules/integration Run
+        "maven itest" from modules/integration</div>
+      </td>
+    </tr>
+    <tr>
+      <td>
+        <div align="left">
+        maven test itest</div>
+      </td>
+      <td>
+        <div align="left">
+        To run all tests for say the modules/integration Run "maven test
+        itest" from modules/integration</div>
+      </td>
+    </tr>
+    <tr>
+      <td>
+        <div align="left">
+        maven -g</div>
+      </td>
+      <td>
+        <div align="left">
+        List down all the commands available with maven</div>
+      </td>
+    </tr>
+    <tr>
+      <td>
+        <div align="left">
+        maven multiproject</div>
+      </td>
+      <td>
+        <div align="left">
+        generate this site</div>
+      </td>
+    </tr>
+    <tr>
+      <td>
+        <div align="left">
+        maven idea:multiproject</div>
+      </td>
+      <td>
+        <div align="left">
+        generate IDEA .ipr, .iml and .iws project files</div>
+      </td>
+    </tr>
+    <tr>
+      <td>
+        <div align="left">
+        maven -Dmaven.test.skip=true</div>
+      </td>
+      <td>
+        <div align="left">
+        </div>
+        Builds Axis2 and skips all the tests</td>
+    </tr>
+  </tbody>
+</table>
+<br>
+
+
+<h2 align="left">Maven FAQ</h2>
+
+<p><i>1. I have problems with maven 1.1</i></p>
+
+<p>It seems that maven 1.1 doesn't come bundled with the required itest
+plugin and artifact plugin. Run followings to get it updated<br>
+1. maven plugin:download -DgroupId=maven-itest-plugin
+-DartifactId=maven-itest-plugin -Dversion=1.0
+-Dmaven.repo.remote=http://www.openejb.org/maven,http://www.ibiblio.org/maven
+<br>
+2. maven plugin:Download -DgroupId=maven -DartifactId=maven-artifact-plugin
+-Dversion=1.6</p>
+
+<p align="left"> </p>
+
+<p align="left"> </p>
+</body>
+</html>

Modified: webservices/axis2/trunk/java/xdocs/migration.html
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/xdocs/migration.html?rev=290351&r1=290350&r2=290351&view=diff
==============================================================================
--- webservices/axis2/trunk/java/xdocs/migration.html (original)
+++ webservices/axis2/trunk/java/xdocs/migration.html Mon Sep 19 21:29:37 2005
@@ -1,107 +1,148 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-
-<html>
-<head>
-  <title>Migrating from Axis 1.x</title>
-</head>
-<body>
-<h1>Migrating from Axis 1.x to Axis 2</h1>
-<h2>Compatibility</h2>
-<p>Axis1.x and Axis2 have been evolved from different architectures.</p>
-<p>Speed - Axis2 is based on StAX API, which gives greater speed than SAX event base parsing that has been used in Axis1.x.</p>
-
-<p>Stability - Axis2 has fixed phases and for extensions an area of user defined phases. This allows far more stability and flexibility than Axis1.x.</p>
-
-<p>Transport framework - Simple abstraction designing of transports (i.e., senders and listeners for SOAP over various protocols such as SMTP, etc), allow far more flexibility and the core of the engine is completely transport-independent.</p>
-
-<p>WSDL Support - Axis2 supports version 1.1 and 2.0, which allow creating stubs and skeletons, to manipulate web service arena.</p>
-
-<p>Component - Oriented Architecture - This is merely through archives (.mar and .aar) . Easily reusable components such as Handlers, Modules allow patterns processing for your applications, or to distribute to partners. Axis2 more concern on the "Module" concept rather Handler concept. Modules contain handlers that have been ordered through phase rules. which being ordered to specific service(s). </p>
-
-<h2>Getting Started</h2>
-<p>Lets look at a simple example of echoing at client API</p>
-<p><b>Axis 1.x</b></p>
-<pre>
-import ..
-public class TestClient {
-	public static void main(String [] args) {
-		try {
-			String endpoint = ...
-			Service service = new Service();
-			Call call = (Call) service.createCall();
-			call.setTargetEndpointAddress( new java.net.URL(endpoint) );
-			call.setOperationName(new QName("http://soapinterop.org/", echoString"));
-			String ret = (String) call.invoke( new Object[] { "Hello!" } );
-			System.out.println("Sent 'Hello!', got '" + ret + "'");
-		} catch (Exception e) {
-			System.err.println(e.toString());
-		}
-	}
-}
-</pre>
-
-<p><b>Axis 2</b></p>
-<pre>
-import ....
-public class EchoBlockingClient {
-	private static EndpointReference targetEPR = new EndpointReference(
-	AddressingConstants.WSA_TO,
-				"http://127.0.0.1:8080/axis2/services/MyService/echo");
-	public static void main(String[] args) {
-		try {
-			OMElement payload = ClientUtil.getEchoOMElement();
-			Call call = new Call();
-			call.setTo(targetEPR);
-			call.setTransportInfo(Constants.TRANSPORT_HTTP,Constants.TRANSPORT_HTTP,false);
-			//Blocking invocation
-			OMElement result = (OMElement) call.invokeBlocking("echo",payload);
-			...
-		} catch (AxisFault axisFault) {
-			axisFault.printStackTrace();
-		} catch (XMLStreamException e) {
-			e.printStackTrace();
-		}
-	}
-}
-</pre>
-
-<p>It has clearly depicted that the invocation in Axis2 is dealt with SOAP body element itself. Here the invocation is synchronous, and Axis2 can handle Asynchronous invocation as well. Above "payload" is the SOAP body element which should go in the Envelop.</p>
-
-<p>Once the service is called through Stub in Axis2, "payload" is according to the data binding framework that will be using. So the extra work of "payload" will be vanished.</p>
-
-<p>Apart from Synchronous invocation, Axis2 support Asynchronous invocation through invokeNonBlocking(). Synchronous/Asynchronous invocations can handle both single/double HTTP connection.</p>
-
-<p>With the advance architecture Axis2 is capable of handling Megabytes of Requests and Responses, which is far form Axis1.x. </p>
-
-<h2>Custom Deployment of Services, Handlers and Modules</h2>
-
-<p>In Axis 1.x deployment of services is via WSDD, which is for my opinion highly cumbersome. Service deployment in Axis2 is straight forward and dynamic. Dynamic behavior is from the Administrator facility given by development in server side. It's just a matter of creating a .aar file, and deploying it ,which more detail is given in the Axis2 user guide.</p>
-
-<p>Axis2 is far way from Handler concept and more into the Module concept, which is abstractly speaking, a collection of handlers with Rules of governing. Modules created as a .mar file. It has module.xml, which is the brain behind manipulating handlers.</p>
-
-<p>When a service is called through a handler, it is just a matter of giving reference to the module that includes the handler in the service.xml. Apart from that a handler can be directly called to a particular service, via service.xml, no module is needed, and several handlers can be invoked when the handlers are registered with the proper phases.</p>
-
-<p>Services are hot deployable in Axis2 and dynamic, but Modules. This is one feature, which is unique to Axis2.</p>
-
-<h2>Transports for HTTP Connection</h2>
-
-<p>Axis2 comes with two  CommonsHTTPTransportSender which is based on commons-httpclient. The configuration of the transport is as follows,</p>
-
-<pre>
-call.setTransportInfo(Constants.TRANSPORT_HTTP, Constants.TRANSPORT_HTTP, false);
-</pre>
-
-<p>It should be noted that axis2.xml should be configured to call the commos transports, with the statement,</p>
-<pre><p align="justify">...</p><p align="left">&lt;transportSender name="commons-http" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"&gt;</p> &lt;parameter name="PROTOCOL" locked="xsd:false"&gt;HTTP/1.1&lt;/parameter&gt;<p align="left"> &lt;parameter name="Transfer-Encoding" locked="xsd:false"&gt;chunked&lt;/parameter&gt;</p><p align="left">&lt;/transportSender&gt;</p><p align="justify">...</p></pre>
-
-<p>In above snippet it should be noted that transport is configured to handle the chunked stream as well. Some web services, such as .NET web service invocations are done through this transport, as it handle all possible HTTP request and responses.</p>
-
-<p>Data Binding Support</p>
-<p>Xml-beans is ued to provide data binding support. In Axis2, xml is manipulated via AXIOM, which is based on StAX API. XML give full schema support. Thus, serialization and deserialization of Xml is handle in Axis2 via xml-data binding framework.</p>
-
-<h2>Best Usage</h2>
-
-<p>Axis1.x and Axis2 have different ways of seen the SOAP stack. So the best way to migrate can be done through following the User guide and Architecture guide properly in Axis2. Axis2 is straight forward and friendly.</p>
-
-</body>
-</head>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+  <meta http-equiv="content-type" content="">
+  <title>Migrating from Axis 1.x</title>
+</head>
+
+<body lang="en">
+<h1>Migrating from Axis 1.x to Axis 2</h1>
+
+<h2>Compatibility</h2>
+
+<p>Axis1.x and Axis2 have been evolved from different architectures.</p>
+
+<p>Speed - Axis2 is based on StAX API, which gives greater speed than SAX
+event base parsing that has been used in Axis1.x.</p>
+
+<p>Stability - Axis2 has fixed phases and for extensions an area of user
+defined phases. This allows far more stability and flexibility than
+Axis1.x.</p>
+
+<p>Transport framework - Simple abstraction designing of transports (i.e.,
+senders and listeners for SOAP over various protocols such as SMTP, etc),
+allow far more flexibility and the core of the engine is completely
+transport-independent.</p>
+
+<p>WSDL Support - Axis2 supports version 1.1 and 2.0, which allow creating
+stubs and skeletons, to manipulate web service arena.</p>
+
+<p>Component - Oriented Architecture - This is merely through archives (.mar
+and .aar) . Easily reusable components such as Handlers, Modules allow
+patterns processing for your applications, or to distribute to partners.
+Axis2 more concern on the "Module" concept rather Handler concept. Modules
+contain handlers that have been ordered through phase rules. which being
+ordered to specific service(s).</p>
+
+<h2>Getting Started</h2>
+
+<p>Lets look at a simple example of echoing at client API</p>
+
+<p><b>Axis 1.x</b></p>
+<pre>import ..
+public class TestClient {
+        public static void main(String [] args) {
+                try {
+                        String endpoint = ...
+                        Service service = new Service();
+                        Call call = (Call) service.createCall();
+                        call.setTargetEndpointAddress( new java.net.URL(endpoint) );
+                        call.setOperationName(new QName("http://soapinterop.org/", echoString"));
+                        String ret = (String) call.invoke( new Object[] { "Hello!" } );
+                        System.out.println("Sent 'Hello!', got '" + ret + "'");
+                } catch (Exception e) {
+                        System.err.println(e.toString());
+                }
+        }
+}</pre>
+
+<p><b>Axis 2</b></p>
+<pre>import ....
+public class EchoBlockingClient {
+        private static EndpointReference targetEPR = new EndpointReference(
+        AddressingConstants.WSA_TO,
+                                "http://127.0.0.1:8080/axis2/services/MyService/echo");
+        public static void main(String[] args) {
+                try {
+                        OMElement payload = ClientUtil.getEchoOMElement();
+                        Call call = new Call();
+                        call.setTo(targetEPR);
+                        call.setTransportInfo(Constants.TRANSPORT_HTTP,Constants.TRANSPORT_HTTP,false);
+                        //Blocking invocation
+                        OMElement result = (OMElement) call.invokeBlocking("echo",payload);
+                        ...
+                } catch (AxisFault axisFault) {
+                        axisFault.printStackTrace();
+                } catch (XMLStreamException e) {
+                        e.printStackTrace();
+                }
+        }
+}</pre>
+
+<p>It has clearly depicted that the invocation in Axis2 is dealt with SOAP
+body element itself. Here the invocation is synchronous, and Axis2 can handle
+Asynchronous invocation as well. Above "payload" is the SOAP body element
+which should go in the Envelop.</p>
+
+<p>Once the service is called through Stub in Axis2, "payload" is according
+to the data binding framework that will be using. So the extra work of
+"payload" will be vanished.</p>
+
+<p>Apart from Synchronous invocation, Axis2 support Asynchronous invocation
+through invokeNonBlocking(). Synchronous/Asynchronous invocations can handle
+both single/double HTTP connection.</p>
+
+<p>With the advance architecture Axis2 is capable of handling Megabytes of
+Requests and Responses, which is far form Axis1.x.</p>
+
+<h2>Custom Deployment of Services, Handlers and Modules</h2>
+
+<p>In Axis 1.x deployment of services is via WSDD, which is for my opinion
+highly cumbersome. Service deployment in Axis2 is straight forward and
+dynamic. Dynamic behavior is from the Administrator facility given by
+development in server side. It's just a matter of creating a .aar file, and
+deploying it ,which more detail is given in the Axis2 user guide.</p>
+
+<p>Axis2 is far way from Handler concept and more into the Module concept,
+which is abstractly speaking, a collection of handlers with Rules of
+governing. Modules created as a .mar file. It has module.xml, which is the
+brain behind manipulating handlers.</p>
+
+<p>When a service is called through a handler, it is just a matter of giving
+reference to the module that includes the handler in the service.xml. Apart
+from that a handler can be directly called to a particular service, via
+service.xml, no module is needed, and several handlers can be invoked when
+the handlers are registered with the proper phases.</p>
+
+<p>Services are hot deployable in Axis2 and dynamic, but Modules. This is one
+feature, which is unique to Axis2.</p>
+
+<h2>Transports for HTTP Connection</h2>
+
+<p>Axis2 comes with two  CommonsHTTPTransportSender which is based on
+commons-httpclient. The configuration of the transport is as follows,</p>
+<pre>call.setTransportInfo(Constants.TRANSPORT_HTTP, Constants.TRANSPORT_HTTP, false);</pre>
+
+<p>It should be noted that axis2.xml should be configured to call the commons
+transports, with the statement,</p>
+<pre>...&lt;transportSender name="commons-http" class="org.apache.axis2.transport.http.CommonsHTTPTransportSender"&gt; &lt;parameter name="PROTOCOL" locked="xsd:false"&gt;HTTP/1.1&lt;/parameter&gt; &lt;parameter name="Transfer-Encoding" locked="xsd:false"&gt;chunked&lt;/parameter&gt;&lt;/transportSender&gt;...</pre>
+
+<p>In above snippet it should be noted that transport is configured to handle
+the chunked stream as well. Some web services, such as .NET web service
+invocations are done through this transport, as it handle all possible HTTP
+request and responses.</p>
+
+<p>Data Binding Support</p>
+
+<p>Xml-beans is used to provide data binding support. In Axis2, xml is
+manipulated via AXIOM, which is based on StAX API. XML give full schema
+support. Thus, serialization and de-serialization of Xml is handle in Axis2
+via xml-data binding framework.</p>
+
+<h2>Best Usage</h2>
+
+<p>Axis1.x and Axis2 have different ways of seen the SOAP stack. So the best
+way to migrate can be done through following the User guide and Architecture
+guide properly in Axis2. Axis2 is straight forward and friendly.</p>
+</body>
+</html>

Modified: webservices/axis2/trunk/java/xdocs/rest-ws.html
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/xdocs/rest-ws.html?rev=290351&r1=290350&r2=290351&view=diff
==============================================================================
--- webservices/axis2/trunk/java/xdocs/rest-ws.html (original)
+++ webservices/axis2/trunk/java/xdocs/rest-ws.html Mon Sep 19 21:29:37 2005
@@ -1,75 +1,96 @@
-<html><head><TITLE>RESTful Web Services Support</TITLE></head>
-<body>
-<h1>RESTful Web Services Support</h1>
-
-<p>REST is providing accses to the resources through the two methods GET and POST. The REST 
-Web services are reduced subset of the usual Web Service stack, and the Axis2 REST implementation 
-assumes following properties. 
-<ol>
-<li>REST Web services are Synchronous, and Request Response in nature.</li>
-<li>When the rest Web Services are accessed via GET the service and the operations are identified based on the url and the parameters are assumed as parameters of the Web Service. In this case the GET based REST web services supports only simple types as arguments.</li>
-<li>POST based web services  do not need a SOAP Envelope or SOAP Body,REST Web Services do not have Headers and the payload is directly sent.</li>
-</ol>
-
-<p>Axis2 can be configured as REST Cantainer and can be used to send and receive restful web services
- requests and responses. The REST Web Services can be access in two ways, using HTTP GET and POST. </p> 
- 
- <h2>Doing REST web services with HTTP POST</h2>   
-<p>REST support can be enabled in the Server side by adding the following line to the axis.xml file.</p>
-
-<font color="blue"> &lt; parameter name="enableREST" locked="xsd:false" &gt; true &lt;/parameter&gt; </font> 
-<p>But it acts both as a REST endpoint as well as a SOAP endpoint. When a Message is received if the 
-content type is text/xml andif the SOAP Action Headers are missing, then the Message is treated as a 
-RESTful Message. Else they are treated as usual SOAP Messages.</p>      
-
-<p>On sending a message out, the fact that the message is RESTful or not, can be decided 
-from the client API or by deployment descriptor of the client.</p>
-<ol>   
-<li> By adding an entry in the client.xml file similar to that of the axis.xml.</li>
-<li>Through client API e.g. <source><pre>call.setDoREST(true);</pre></source></li>
-</ol>
-
-<h3>Sample REST - HTTP POST Client</h3>
-<p>There's a userguide.clients.RESTClient.java which demonstrates the usage of the above, using 
-the <source><pre>echo</pre></source> operation of the <source><pre>userguide.example1.MyService</pre></source> of the samples. 
-And the class source will be as follows
-<source>
-<pre>
-public class MyServiceClient {
-    private static String toEpr = "http://localhost:9080/axis2/services/MyService/echo";
-    
-    public static void main(String[] args) throws AxisFault {
-        OMElement payload = ...
-		Call  call = new Call();
-		call.setTo(new EndpointReference(toEpr));
-		call.setTransportInfo(Constants.TRANSPORT_HTTP,Constants.TRANSPORT_HTTP,false);
-		call.setDoREST(true);
-			
-		OMElement result = call.invokeBlocking("thiscanbeanything", payload);
-		.... use the result
-		call.close();
-	}
-}
-</pre>
-</source>
-
-  <h2>Access a REST Web Service Via HTTP GET</h2>   
-  <p>Axis2 let the users access Web Service that has simple type parameters via the HTTP GET. 
-  For example following URL requests the version service Via HTTP GET. But the Web Services 
-  arrived via GET assumes REST . Other parameter are converted in to the XML and put them in to the SOAP Body.</p> 
-    <source><pre>http://127.0.0.1:8080/axis2/services/Version/getVersion</pre></source>
-    <p>Result can be shown in the browser as follows.</p>   
-    <img src="images/userguide/http-get-ws.png"/>         
-    
-    <p>For an example  request <source><pre>http://127.0.0.1:8080/axis2/services/Version/getVersion</pre></source> 
-    will be converted to the following SOAP Message for processing by Axis2</p>   
-<source>    
-<pre> 
-   &lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"&gt;
-      &lt;soapenv:Body&gt;   
-          &lt;axis2:getVersion xmlns:axis2="http://ws.apache.org/goGetWithREST" /&gt;
-      &lt;/soapenv:Body&gt;
-   &lt;/soapenv:Envelope&gt;
-    </pre>
-</source>
-  </body></html>
+<html>
+<head>
+  <meta http-equiv="content-type" content="">
+  <title>RESTful Web Services Support</title>
+</head>
+
+<body lang="en">
+<h1>RESTful Web Services Support</h1>
+
+<p>REST is providing access to the resources through the two methods GET and
+POST. The REST Web services are reduced subset of the usual Web Service
+stack, and the Axis2 REST implementation assumes following properties.</p>
+<ol>
+  <li>REST Web services are Synchronous, and Request Response in nature.</li>
+  <li>When the rest Web Services are accessed via GET the service and the
+    operations are identified based on the url and the parameters are assumed
+    as parameters of the Web Service. In this case the GET based REST web
+    services supports only simple types as arguments.</li>
+  <li>POST based web services  do not need a SOAP Envelope or SOAP Body,REST
+    Web Services do not have Headers and the payload is directly sent.</li>
+</ol>
+
+<p>Axis2 can be configured as REST Container and can be used to send and
+receive restful web services requests and responses. The REST Web Services
+can be access in two ways, using HTTP GET and POST.</p>
+
+<h2>Doing REST web services with HTTP POST</h2>
+
+<p>REST support can be enabled in the Server side by adding the following
+line to the axis.xml file.</p>
+<font color="blue">&lt; parameter name="enableREST" locked="xsd:false" &gt;
+true &lt;/parameter&gt; </font>
+
+<p>But it acts both as a REST endpoint as well as a SOAP endpoint. When a
+Message is received if the content type is text/xml and if the SOAP Action
+Headers are missing, then the Message is treated as a RESTful Message. Else
+they are treated as usual SOAP Messages.</p>
+
+<p>On sending a message out, the fact that the message is RESTful or not, can
+be decided from the client API or by deployment descriptor of the client.</p>
+<ol>
+  <li>By adding an entry in the client.xml file similar to that of the
+    axis.xml.</li>
+  <li>Through client API e.g. <source>
+    <pre>call.setDoREST(true);</pre>
+    </source></li>
+</ol>
+
+<h3>Sample REST - HTTP POST Client</h3>
+
+<p>There's a userguide.clients.RESTClient.java which demonstrates the usage
+of the above, using the <source></p>
+<pre>echo</pre>
+</source>operation of the <source>
+<pre>userguide.example1.MyService</pre>
+</source>of the samples. And the class source will be as follows <source>
+<pre>public class MyServiceClient {
+    private static String toEpr = "http://localhost:9080/axis2/services/MyService/echo";
+    
+    public static void main(String[] args) throws AxisFault {
+        OMElement payload = ...
+                Call  call = new Call();
+                call.setTo(new EndpointReference(toEpr));
+                call.setTransportInfo(Constants.TRANSPORT_HTTP,Constants.TRANSPORT_HTTP,false);
+                call.setDoREST(true);
+                        
+                OMElement result = call.invokeBlocking("thiscanbeanything", payload);
+                .... use the result
+                call.close();
+        }
+}</pre>
+</source>
+<h2>Access a REST Web Service Via HTTP GET</h2>
+
+<p>Axis2 let the users access Web Service that has simple type parameters via
+the HTTP GET. For example following URL requests the version service Via HTTP
+GET. But the Web Services arrived via GET assumes REST . Other parameter are
+converted in to the XML and put them in to the SOAP Body.</p>
+<source><pre>http://127.0.0.1:8080/axis2/services/Version/getVersion</pre>
+</source>
+<p>Result can be shown in the browser as follows.</p>
+<img src="images/userguide/http-get-ws.png">
+
+<p>For an example  request <source></p>
+<pre>http://127.0.0.1:8080/axis2/services/Version/getVersion</pre>
+</source>will be converted to the following SOAP Message for processing by
+Axis2<source>
+<pre> 
+   &lt;soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"&gt;
+      &lt;soapenv:Body&gt;   
+          &lt;axis2:getVersion xmlns:axis2="http://ws.apache.org/goGetWithREST" /&gt;
+      &lt;/soapenv:Body&gt;
+   &lt;/soapenv:Envelope&gt;
+    </pre>
+</source></body>
+</html>

Modified: webservices/axis2/trunk/java/xdocs/tcp-transport.html
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/xdocs/tcp-transport.html?rev=290351&r1=290350&r2=290351&view=diff
==============================================================================
--- webservices/axis2/trunk/java/xdocs/tcp-transport.html (original)
+++ webservices/axis2/trunk/java/xdocs/tcp-transport.html Mon Sep 19 21:29:37 2005
@@ -1,68 +1,86 @@
 <html>
-<head><title>TCP transport</title></head>
-<body>
-<h1>TCP transport</h1> 
-
-<p>Axis2 supports TCP as a default transport, Axis2 has support for both send and receieve SOAP Messages. 
-TCP transports do not have any Application level Headers and the SOAP Message that sends should be self contained. 
-This make the interaction fast and simple. Yet the main limitation of the TCP transport is absence 
-of the request URI, and the Service dispatching should use a alternative method. There is two main 
-alternatives methods.</p>
-<ol>
-<li>Use the name space URI of the first child element for the dispatching</li>
-<li>Enable the WS-Addressing</li>
-</ol>
-
-
-<p>When the TCP request is sent it is users responsibility either to use addressing or use alternative method.</p>
-
-
-<h2>How to start the TCPServer</h2>
-
-<p>The TCP server can be started by running the class org.apache.axis2.transport.tcp.TCPServer with two parameters 
-<a href="faq.html#b5">repository</a> and port number as argument. This class needed all the axis dependency 
-jars in the classapth. New Services can be added in the usual way by droping the archives to repository, read the
-<a href="userguide.html">User Guide</a> for more information</p>
-<p>Alternatively the TCP Server can be run with tcp-server.bat/ tcp-server.sh file in the bin directory of the Binary distribution of TCP Server.</p> 
-
-<h2>How send SOAP Messages with TCP transport</h2>
-
-<p>The TCP transport can be enabled very easily from the call API, following code segment demonstrate how it can be done.</p>
-<source><pre>
-OMElement payload = ...
-
-org.apache.axis2.clientapi.Call call = new org.apache.axis2.clientapi.Call(serviceContext);
-call.setTo(targetEPR);
-call.engageModule(new QName(Constants.MODULE_ADDRESSING));
-call.setTransportInfo(Constants.TRANSPORT_TCP, Constants.TRANSPORT_TCP, false);
-
-OMElement result =
-        (OMElement) call.invokeBlocking("echo", payload);
-call.close();
-</pre>
-</source>
-<p>The method to note is setTransportInfo that accepts sender transport, Listener transport and should the return path of the TCP Channel need to be used. It is good Idea to engage the addressing module to make the SOAP Message self contained. Only other option I can think of is to use the URI of the first child of the SOAP Body to dispatch the service. The
-Parameter is of the type <a href="faq.html#a2">OMElement</a>, the XML represntation of Axis2.</p>
-
-<h2>Sample</h2>
-<p>Sample for a TCP Client can be found from the samples/userguide/src/userguide/clients/TCPClient.java in the binary distribution, this accsess the same web service explained in the 
-userguide. To try the client first starts the TCPServer with the same repository used for the userguide samples. Since sample is already deployed in the 
-repository while trying the userguide it will be automatically avalible.</p>
-
-<h2>Advanced Topics</h2>
-<p>Axis2 TCP transport has two parts, a transport Listener for receiving the Messages and transport Sender 
-to send the SOAP Messages. Axis2 installation has both the components built in to itself  by default. 
-In the axis2.xml configuration file the two would look like follows. </p>
-<p>If the TCP server is started manually this configuration does not take effect, this affect the transport 
-Listeners starts by Axis2. (e.g. Listener started by the Complete Async interaction)</p>
-<source><pre>
-&lt;transportReceiver name="tcp" class="org.apache.axis2.transport.tcp.TCPServer"&gt;
-    &lt;parameter name="port" locked="xsd:false"&gt:6060&lt;/parameter&gt;
-&lt;/transportReceiver&gt;
-</pre>
-</source>
-<p>Following add the TCPtransport Sender</p>
-<source><pre>&lt;transportSender name="tcp" class="org.apache.axis2.transport.tcp.TCPTransportSender"/&gt;
-</pre></source>
-</body>
-</html>
\ No newline at end of file
+<head>
+  <meta http-equiv="content-type" content="">
+  <title>TCP transport</title>
+</head>
+
+<body lang="en">
+<h1>TCP transport</h1>
+
+<p>Axis2 supports TCP as a default transport, Axis2 has support for both send
+and receive SOAP Messages. TCP transports do not have any Application level
+Headers and the SOAP Message that sends should be self contained. This make
+the interaction fast and simple. Yet the main limitation of the TCP transport
+is absence of the request URI, and the Service dispatching should use a
+alternative method. There is two main alternatives methods.</p>
+<ol>
+  <li>Use the name space URI of the first child element for the
+  dispatching</li>
+  <li>Enable the WS-Addressing</li>
+</ol>
+
+<p>When the TCP request is sent it is users responsibility either to use
+addressing or use alternative method.</p>
+
+<h2>How to start the TCPServer</h2>
+
+<p>The TCP server can be started by running the class
+org.apache.axis2.transport.tcp.TCPServer with two parameters <a
+href="faq.html#b5">repository</a> and port number as argument. This class
+needed all the axis dependency jars in the classpath. New Services can be
+added in the usual way by droping the archives to repository, read the <a
+href="userguide.html">User Guide</a> for more information</p>
+
+<p>Alternatively the TCP Server can be run with tcp-server.bat/ tcp-server.sh
+file in the bin directory of the Binary distribution of TCP Server.</p>
+
+<h2>How send SOAP Messages with TCP transport</h2>
+
+<p>The TCP transport can be enabled very easily from the call API, following
+code segment demonstrate how it can be done.</p>
+<source><pre>OMElement payload = ...
+
+org.apache.axis2.clientapi.Call call = new org.apache.axis2.clientapi.Call(serviceContext);
+call.setTo(targetEPR);
+call.engageModule(new QName(Constants.MODULE_ADDRESSING));
+call.setTransportInfo(Constants.TRANSPORT_TCP, Constants.TRANSPORT_TCP, false);
+
+OMElement result =
+        (OMElement) call.invokeBlocking("echo", payload);
+call.close();</pre>
+</source>
+<p>The method to note is setTransportInfo that accepts sender transport,
+Listener transport and should the return path of the TCP Channel need to be
+used. It is good Idea to engage the addressing module to make the SOAP
+Message self contained. Only other option I can think of is to use the URI of
+the first child of the SOAP Body to dispatch the service. The Parameter is of
+the type <a href="faq.html#a2">OMElement</a>, the XML representation of
+Axis2.</p>
+
+<h2>Sample</h2>
+
+<p>Sample for a TCP Client can be found from the
+samples/userguide/src/userguide/clients/TCPClient.java in the binary
+distribution, this access the same web service explained in the userguide. To
+try the client first starts the TCPServer with the same repository used for
+the userguide samples. Since sample is already deployed in the repository
+while trying the userguide it will be automatically avaliable.</p>
+
+<h2>Advanced Topics</h2>
+
+<p>Axis2 TCP transport has two parts, a transport Listener for receiving the
+Messages and transport Sender to send the SOAP Messages. Axis2 installation
+has both the components built in to itself  by default. In the axis2.xml
+configuration file the two would look like follows.</p>
+
+<p>If the TCP server is started manually this configuration does not take
+effect, this affect the transport Listeners starts by Axis2. (e.g. Listener
+started by the Complete Async interaction)</p>
+<source><pre>&lt;transportReceiver name="tcp" class="org.apache.axis2.transport.tcp.TCPServer"&gt;
+    &lt;parameter name="port" locked="xsd:false"&gt;6060&lt;/parameter&gt;
+&lt;/transportReceiver&gt;</pre>
+</source>
+<p>Following add the TCPTransport Sender</p>
+<source><pre>&lt;transportSender name="tcp" class="org.apache.axis2.transport.tcp.TCPTransportSender"/&gt;</pre>
+</source></body>
+</html>

Modified: webservices/axis2/trunk/java/xdocs/webadminguide.html
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/xdocs/webadminguide.html?rev=290351&r1=290350&r2=290351&view=diff
==============================================================================
--- webservices/axis2/trunk/java/xdocs/webadminguide.html (original)
+++ webservices/axis2/trunk/java/xdocs/webadminguide.html Mon Sep 19 21:29:37 2005
@@ -1,132 +1,172 @@
-<!-- saved from url=(0022)http://internet.e-mail -->
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-
-<html>
-<head>
-<title>Axis2 administartion guide</title>
-</head>
-<body>
-<p><h3>Introduction </h3>
-<p>Axis2 web administration module provides a way to configure axis2 dynamically. 
-Its important to note that this dynamic configuration will NOT be persistent, i.e. if the servlet 
- container is restarted then all the dynamic configuration changes will be lost.</p>
-
- <p><h4><a name="_Toc96698076"></a>Loging into administartion site</h4>
-<p>From axis2 index page you can go to administration page by following 
-Axis2 Administration link, then logging page will appear asking for a user 
-name and a password , the default username is 'admin' (without quotes) and default
-password is 'axis2' (without quotes).
- You can change those two values by changing following two parameters in server.xml as required.  
-<p align="left"><strong><img src="images/parameters.jpg"></strong></p>
-<p align="left"><strong><img src="images/adminloging.jpg" ></strong></p>
-</p>
-<p>If the login succeed you will be see as shown below. This is where you can view the 
-configuration and the state of the running system and dynamically configure it. </p>
- <p align="left"><strong><img src="images/admin.jpg" ></strong></p>
- 
-<h3>Administration Options</h3>
-<ul>
-<b>System components</b>
-<li><a href="#heading1">List available services</a></li>
-<li><a href="#avmodules">List available modules</a></li>
-<li><a href="#globalmodules">List globally engaged modules</a></li>
-<li><a href="#phases">View available phases</a></li>
-<br>
-<b>Execution chains</b>
-<li><a href="#globalchains">Global chanins</a></li>
-<li><a href="#operationchains">Operation specific chains</a></li>
-<br>
-<b>Other</b>
-<li><a href="#engaginmodule">Engage module</a></li>
-<br>
-<b>Edit Service</b>
-<li><a href="#turnoffservice">Turn off a service</a></li>
-<li><a href="#editservicepara">Edit service parameters</a></li>
-</ul> 
-
-
-<h3><a name="heading1"></a>List Available services</h3>
- <p>The functionality of the 'List Available Services' option is almost same 
-	as the functionality of the axis to main page where it displayes the list of 
-	deployed services. But as an additional feature, if there are any
-  modules engaged globally, to services or to operations those details
-	 will be displayed here. </p>
-<p align="left"><strong><img src="images/adminmain.jpg"/></strong></p>
-
-
-<h3><a name="avmodules"></a>List Available modules</h3>
-
-	 <p>To view the available modules in the "repository/modules" you just have
-	  to click the 'Available Modules' then it will show you all the available modules 
-		in the system and those modules can be engaged dynamically. </p>
-
-		<p align="left"><strong><img src="images/modules.jpg" ></strong></p>
-		<br>
-	<h3><a name="globalmodules"></a>List Globally engaged modules</h3>
-		<p>From the globally engaged modules you can see the globally engaged 
-		modules if any , if a module was engaged globally then the 
-		handlers that belong to that module will be executed irrespective of the service. 
-		The 'Globally Engaged Modules' option lists the above list of modules.
-		</p>
-	<br>
-	<h3><a name="phases"></a>View available phases</h3>
-
-		<p>In axis2 there are two levels of phases:</p>
-		<ul>
-		<li>system predefined phases(not allowed to be changed)</li>
-		<li>user defined phases</li>
-		</ul>
-		<p>The main difference	between those two levels of phases is that, in the case of
-		system predefined phases, the phases will be invoked irrespective of the irrespective of the services.
-		When the dispatcher finds the operation then user defined phase list will be invoked. 
-		It should be noted that the module developers and service writers are really required to 
-		have a good understanding of phases and phase ordering.</p>
-		<img src="images/viewphases.jpg" >
-		<br>
-
-		<h3><a name="globalchains"></a>View Global chanins</h3>
-		<p>The most interesting feature of axis2 web admin module is that it provide a very basic 
-		way of viewing the global phase list and handlers inside the phases depending on 
-		both phase and handler orders. This kind of information is extreamly useful in debugging 
-		the system, because there is no way to list out the handlers in the 
-		global chains except this. And if you engage a new module the new handlers 
-		will be added to the global chains and those will be displayed in this page.</p> 
-		
-		<p align="left"><strong><img src="images/globalchain.jpg" ></strong></p>
-		<br>
-		<h3><a name="operationchains"></a>View operation specific chains</h3>
-		<p>The 'Operation Specific Chains' can be used to view the handlers corresponding
-		to a given service in the same order as there in the real execution chain.</p>
-		
-		<p align="left"><strong><img src="images/serviceHandlers.jpg" ></strong></p>
-		<br>
-		
-		<h3><a name="engaginmodule"></a>Engaging modules</h3>
-<p>Modules can be engaged either globally, to a service or to an operation 
-depending on the module implementation. If the module was designed to 
-engage the handlers globally then handlers in the module can be included in any phase in 
-the system. It can be either system predefined or user defined phase.</P>  
-<p>In there other hand if the module was implemented in such a way that is going
- to be deployed to a service or to an operation then the module canNOT be included in 
- any of system predefined phases. So that it can only be included in user defined phases. </p>
-<p>Immediately after engaging the module you can see the status of the engagement 
-, indicating whether it is engaged properly or not.  </p> 
-
-<p align="left"><strong><img src="images/moduleengage.jpg" ></strong></p>
-		<p>&nbsp;</p>	
-
-<br>
-<h3><a name="turnoffservice"></a>Turn off a service</h3>
-<p>
-  This functionality provide a way to remove unnecessary services from the running system, but the removal is transient meaning if you restart the system the service will be available. 
-    <p align="left"><strong><img src="images/removeservice.jpg" ></strong></p>
-</p>
-<br>
-<h3><a name="editservicepara"></a>Edit service parameters</h3>
-<p>
-This functionality provide a way to change parameters in a service or its operations, and those changes will be transient too. 
-<p align="left"><strong><img src="images/editserviecpara.jpg" ></strong></p>
-</p>
-
-</body>
-</html>
+<!-- saved from url=(0022)http://internet.e-mail -->
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
+<html>
+<head>
+  <meta http-equiv="content-type" content="">
+  <title>Axis2 administartion guide</title>
+</head>
+
+<body lang="en">
+<p></p>
+
+<h3>Introduction</h3>
+
+<p>Axis2 web administration module provides a way to configure axis2
+dynamically. Its important to note that this dynamic configuration will NOT
+be persistent, i.e. if the servlet container is restarted then all the
+dynamic configuration changes will be lost.</p>
+
+<p></p>
+
+<h4><a name="_Toc96698076"></a>Loging into administration site</h4>
+
+<p>From axis2 index page you can go to administration page by following Axis2
+Administration link, then logging page will appear asking for a user name and
+a password , the default username is 'admin' (without quotes) and default
+password is 'axis2' (without quotes). You can change those two values by
+changing following two parameters in server.xml as required.</p>
+
+<p align="left"><strong><img src="images/parameters.jpg"></strong></p>
+
+<p align="left"><strong><img src="images/adminloging.jpg"></strong></p>
+
+<p>If the login succeed you will be see as shown below. This is where you can
+view the configuration and the state of the running system and dynamically
+configure it.</p>
+
+<p align="left"><strong><img src="images/admin.jpg"></strong></p>
+
+<h3>Administration Options</h3>
+<ul>
+  <b>System components</b> <ul>
+    <li><a href="#heading1">List available services</a></li>
+    <li><a href="#avmodules">List available modules</a></li>
+    <li><a href="#globalmodules">List globally engaged modules</a></li>
+    <li><a href="#phases">View available phases</a></li>
+  </ul>
+  <br>
+  <b>Execution chains</b> <ul>
+    <li><a href="#globalchains">Global chains</a></li>
+    <li><a href="#operationchains">Operation specific chains</a></li>
+  </ul>
+  <br>
+  <b>Other</b> <ul>
+    <li><a href="#engaginmodule">Engage module</a></li>
+  </ul>
+  <br>
+  <b>Edit Service</b> <ul>
+    <li><a href="#turnoffservice">Turn off a service</a></li>
+    <li><a href="#editservicepara">Edit service parameters</a></li>
+  </ul>
+</ul>
+
+<h3><a name="heading1"></a>List Available services</h3>
+
+<p>The functionality of the 'List Available Services' option is almost same
+as the functionality of the axis to main page where it displays the list of
+deployed services. But as an additional feature, if there are any modules
+engaged globally, to services or to operations those details will be
+displayed here.</p>
+
+<p align="left"><strong><img src="images/adminmain.jpg"></strong></p>
+
+<h3><a name="avmodules"></a>List Available modules</h3>
+
+<p>To view the available modules in the "repository/modules" you just have to
+click the 'Available Modules' then it will show you all the available modules
+in the system and those modules can be engaged dynamically.</p>
+
+<p align="left"><strong><img src="images/modules.jpg"></strong></p>
+<br>
+
+
+<h3><a name="globalmodules"></a>List Globally engaged modules</h3>
+
+<p>From the globally engaged modules you can see the globally engaged modules
+if any , if a module was engaged globally then the handlers that belong to
+that module will be executed irrespective of the service. The 'Globally
+Engaged Modules' option lists the above list of modules.</p>
+<br>
+
+
+<h3><a name="phases"></a>View available phases</h3>
+
+<p>In axis2 there are two levels of phases:</p>
+<ul>
+  <li>system predefined phases(not allowed to be changed)</li>
+  <li>user defined phases</li>
+</ul>
+
+<p>The main difference between those two levels of phases is that, in the
+case of system predefined phases, the phases will be invoked irrespective of
+the irrespective of the services. When the dispatcher finds the operation
+then user defined phase list will be invoked. It should be noted that the
+module developers and service writers are really required to have a good
+understanding of phases and phase ordering.</p>
+<img src="images/viewphases.jpg"> <br>
+
+
+<h3><a name="globalchains"></a>View Global chains</h3>
+
+<p>The most interesting feature of axis2 web admin module is that it provide
+a very basic way of viewing the global phase list and handlers inside the
+phases depending on both phase and handler orders. This kind of information
+is extremely useful in debugging the system, because there is no way to list
+out the handlers in the global chains except this. And if you engage a new
+module the new handlers will be added to the global chains and those will be
+displayed in this page.</p>
+
+<p align="left"><strong><img src="images/globalchain.jpg"></strong></p>
+<br>
+
+
+<h3><a name="operationchains"></a>View operation specific chains</h3>
+
+<p>The 'Operation Specific Chains' can be used to view the handlers
+corresponding to a given service in the same order as there in the real
+execution chain.</p>
+
+<p align="left"><strong><img src="images/serviceHandlers.jpg"></strong></p>
+<br>
+
+
+<h3><a name="engaginmodule"></a>Engaging modules</h3>
+
+<p>Modules can be engaged either globally, to a service or to an operation
+depending on the module implementation. If the module was designed to engage
+the handlers globally then handlers in the module can be included in any
+phase in the system. It can be either system predefined or user defined
+phase.</p>
+
+<p>In there other hand if the module was implemented in such a way that is
+going to be deployed to a service or to an operation then the module canNOT
+be included in any of system predefined phases. So that it can only be
+included in user defined phases.</p>
+
+<p>Immediately after engaging the module you can see the status of the
+engagement , indicating whether it is engaged properly or not.</p>
+
+<p align="left"><strong><img src="images/moduleengage.jpg"></strong></p>
+
+<p> </p>
+<br>
+
+
+<h3><a name="turnoffservice"></a>Turn off a service</h3>
+
+<p>This functionality provide a way to remove unnecessary services from the
+running system, but the removal is transient meaning if you restart the
+system the service will be available.</p>
+
+<p align="left"><strong><img src="images/removeservice.jpg"></strong></p>
+<br>
+
+
+<h3><a name="editservicepara"></a>Edit service parameters</h3>
+
+<p>This functionality provide a way to change parameters in a service or its
+operations, and those changes will be transient too.</p>
+
+<p align="left"><strong><img src="images/editserviecpara.jpg"></strong></p>
+</body>
+</html>



Mime
View raw message