You are viewing a plain text version of this content. The canonical link for it is here.
Posted to axis-cvs@ws.apache.org by de...@apache.org on 2006/03/09 07:15:39 UTC
svn commit: r384444 - in /webservices/axis2/trunk/java/xdocs/latest:
index.html rest-ws.html transport_howto.html
Author: deepal
Date: Wed Mar 8 22:15:37 2006
New Revision: 384444
URL: http://svn.apache.org/viewcvs?rev=384444&view=rev
Log:
- docs update for 0.95
Modified:
webservices/axis2/trunk/java/xdocs/latest/index.html
webservices/axis2/trunk/java/xdocs/latest/rest-ws.html
webservices/axis2/trunk/java/xdocs/latest/transport_howto.html
Modified: webservices/axis2/trunk/java/xdocs/latest/index.html
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/xdocs/latest/index.html?rev=384444&r1=384443&r2=384444&view=diff
==============================================================================
--- webservices/axis2/trunk/java/xdocs/latest/index.html (original)
+++ webservices/axis2/trunk/java/xdocs/latest/index.html Wed Mar 8 22:15:37 2006
@@ -1,78 +1,81 @@
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
-"http://www.w3.org/TR/html4/loose.dtd">
-<html>
-<head>
- <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
- <title>Axis2 0.95 Documentation</title>
-</head>
-
-<body>
-<h1>Axis2 version 0.95 Documentation</h1>
-<h2>Getting Started with Axis2</h2>
-<ul>
- <li><a href="installationguide.html">Installation Guide</a></li>
- <li><a href="userguide.html">User's Guide</a></li>
- <li><a href="webadminguide.html">Web Administration Guide</a></li>
-</ul>
-
-<h2>Tools References</h2>
-<ul>
- <li><a href="CodegenToolReference.html">Code Generator Wizard - Command
- Line Tool</a></li>
- <li><a href="CodegenTools-EclipsePlugin.html">Code Generator Wizard -
- Eclipse Plug-in</a></li>
- <li><a href="ServiceArchiveToolReference.html">Service Archive Wizard -
- Eclipse Plug-in</a></li>
- <li><a href="tools/idea/Idea_plug-in_userguide.html">IntelliJ IDEA
- Plug-ins</a></li>
-</ul>
-
-<h2>Additional References</h2>
-<ul>
- <li><a href="http://wiki.apache.org/ws/FrontPage/Axis2">Axis2 Wiki</a></li>
- <li><a href="Axis2ArchitectureGuide.html">Architecture Guide</a></li>
- <li><a href="migration.html">Migrating from Axis 1.x to Axis 2</a></li>
- <li><a href="OMTutorial.html">AXIOM Tutorial</a></li>
- <li><a href="rest-ws.html">REST Support</a></li>
- <li><a href="mtom-guide.html">Handling Binary Data with Axis2</a></li>
- <li><a href="axis2config.html">Axis2 Configuration Guide</a></li>
- <li><a href="api/index.html">Online Java Docs</a></li>
- <li><a href="adb/adb-howto.html">ADB How-to</a></li>
- <li><a href="security-module.html">WS-Security How-to</a></li>
-</ul>
-
-<h2>Other Tutorials</h2>
-
-<h3>Axis2</h3>
-<ul>
- <li><a href="http://www.jaxmag.com/itr/online_artikel/psecom,id,747,nodeid,147.html">Axis2 - The Future of Web Services</a></li>
- <li><a
- href="http://www.developer.com/services/article.php/3525481">Introducing
- Axis2</a></li>
- <li><a href="http://www.onjava.com/pub/a/onjava/2005/07/27/axis2.html">Web
- Services Messaging with Apache Axis2: Concepts and Techniques</a></li>
- <li><a href="http://developer.com/java/web/article.php/3529321">Axis2
- Execution Framework</a></li>
- <li><a
- href="http://jaxmag.com/itr/online_artikel/psecom,id,757,nodeid,147.html">Axis2
- Deployment Model</a></li>
- <li><a
- href="http://www.developer.com/open/article.php/3557741">Undertanding
- Axis2 Deployment Architecture</a></li>
- <li><a
- href="http://www.developer.com/java/other/article.php/3570031">Utilizing
- a Non-Java Web Servive with Axis2</a></li>
-</ul>
-
-<h3>AXIOM</h3>
-<ul>
- <li><a
- href="http://www.jaxmag.com/itr/online_artikel/psecom,id,726,nodeid,147.html">Fast
- and Lightweight Object Model for XML </a> - An Introduction to AXIOM, the
- Open Source API for Working with XML</li>
- <li><a href="http://www-128.ibm.com/developerworks/library/x-axiom/">Get
- the most out of XML processing with AXIOM</a> - Explaining the
- flexibilities of AXIOM in developerworks.</li>
-</ul>
-</body>
-</html>
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
+"http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<head>
+ <meta http-equiv="content-type" content="text/html; charset=iso-8859-1">
+ <title>Axis2 0.95 Documentation</title>
+</head>
+
+<body>
+<h1>Axis2 version 0.95 Documentation</h1>
+<h2>Getting Started with Axis2</h2>
+<ul>
+ <li><a href="installationguide.html">Installation Guide</a></li>
+ <li><a href="userguide.html">User's Guide</a></li>
+ <li><a href="webadminguide.html">Web Administration Guide</a></li>
+</ul>
+
+<h2>Tools References</h2>
+<ul>
+ <li><a href="CodegenToolReference.html">Code Generator Wizard - Command
+ Line Tool</a></li>
+ <li><a href="CodegenTools-EclipsePlugin.html">Code Generator Wizard -
+ Eclipse Plug-in</a></li>
+ <li><a href="ServiceArchiveToolReference.html">Service Archive Wizard -
+ Eclipse Plug-in</a></li>
+ <li><a href="tools/idea/Idea_plug-in_userguide.html">IntelliJ IDEA
+ Plug-ins</a></li>
+</ul>
+
+<h2>Additional References</h2>
+<ul>
+ <li><a href="http://wiki.apache.org/ws/FrontPage/Axis2">Axis2 Wiki</a></li>
+ <li><a href="Axis2ArchitectureGuide.html">Architecture Guide</a></li>
+ <li><a href="migration.html">Migrating from Axis 1.x to Axis 2</a></li>
+ <li><a href="OMTutorial.html">AXIOM Tutorial</a></li>
+ <li><a href="rest-ws.html">REST Support</a></li>
+ <li><a href="mtom-guide.html">Handling Binary Data with Axis2</a></li>
+ <li><a href="axis2config.html">Axis2 Configuration Guide</a></li>
+ <li><a href="api/index.html">Online Java Docs</a></li>
+ <li><a href="adb/adb-howto.html">ADB How-to</a></li>
+ <li><a href="security-module.html">WS-Security How-to</a></li>
+</ul>
+
+<h2>Other Tutorials</h2>
+
+<h3>Axis2</h3>
+<ul>
+ <li><a href="http://www.jaxmag.com/itr/online_artikel/psecom,id,747,nodeid,147.html">Axis2 - The Future of Web Services</a></li>
+ <li><a
+ href="http://www.developer.com/services/article.php/3525481">Introducing
+ Axis2</a></li>
+ <li><a href="http://www.onjava.com/pub/a/onjava/2005/07/27/axis2.html">Web
+ Services Messaging with Apache Axis2: Concepts and Techniques</a></li>
+ <li><a href="http://developer.com/java/web/article.php/3529321">Axis2
+ Execution Framework</a></li>
+ <li><a
+ href="http://jaxmag.com/itr/online_artikel/psecom,id,757,nodeid,147.html">Axis2
+ Deployment Model</a></li>
+ <li><a
+ href="http://www.developer.com/open/article.php/3557741">Undertanding
+ Axis2 Deployment Architecture</a></li>
+ <li><a
+ href="http://www.developer.com/java/other/article.php/3570031">Utilizing
+ a Non-Java Web Servive with Axis2</a></li>
+<li><a
+ href="http://www.developer.com/open/article.php/3589126">Avoiding Mistakes Made Using Axis2
+</a></li>
+</ul>
+
+<h3>AXIOM</h3>
+<ul>
+ <li><a
+ href="http://www.jaxmag.com/itr/online_artikel/psecom,id,726,nodeid,147.html">Fast
+ and Lightweight Object Model for XML </a> - An Introduction to AXIOM, the
+ Open Source API for Working with XML</li>
+ <li><a href="http://www-128.ibm.com/developerworks/library/x-axiom/">Get
+ the most out of XML processing with AXIOM</a> - Explaining the
+ flexibilities of AXIOM in developerworks.</li>
+</ul>
+</body>
+</html>
Modified: webservices/axis2/trunk/java/xdocs/latest/rest-ws.html
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/xdocs/latest/rest-ws.html?rev=384444&r1=384443&r2=384444&view=diff
==============================================================================
--- webservices/axis2/trunk/java/xdocs/latest/rest-ws.html (original)
+++ webservices/axis2/trunk/java/xdocs/latest/rest-ws.html Wed Mar 8 22:15:37 2006
@@ -1,130 +1,129 @@
-<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 provides access to resources through the two methods GET and POST.
-REST Web services are a reduced subset of the usual Web service stack.</p>
-
-<p>The Axis2 REST implementation assumes the following properties:</p>
-<ol>
- <li>REST Web services are Synchronous and Request Response in nature.</li>
- <li>When REST Web services are accessed via GET, the service and the
- operations are identified based on the URL. 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 a SOAP Body.
- REST Web Services do not have Headers and the payload is sent
- directly.</li>
-</ol>
-
-<p>Axis2 can be configured as a REST Container and can be used to send and
-receive RESTful Web services requests and responses. REST Web services can be
-accessed in two ways, i.e. using HTTP GET and POST.</p>
-
-<h2>Doing REST web services with HTTP POST</h2>
-
-<p>The REST default HTTP interface is POST. It can be enabled in the
-Server/Client side by adding the following line to the axis2.xml file.</p>
-<font color="blue">< parameter name="enableREST" locked="false" > true
-</parameter> </font>
-
-<p>It however acts as both a REST endpoint and 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 it is
-treated as a usual SOAP Message.</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 repositories axis2.xml file.</li>
- <li>Setting as a property in client API e.g. <source>
- <pre>...
-Options options = new Options();
-options.setProperty(Constants.Configuration.ENABLE_REST, Constants.VALUE_TRUE);
-...</pre>
- </source></li>
-</ol>
-
-<h3>Sample REST - HTTP POST Client</h3>
-
-<p>There is an example named, userguide.clients.RESTClient.java which
-demonstrates the usage of the above, using the "echo"operation of the
- </p>
-<pre>userguide.example1.MyService </pre>
-
-<p>of the samples.The class source will be as follows:</p>
-
-<source>
-<pre>public class RESTClient {
-
- private static String toEpr = "http://localhost:8080/axis2/services/MyService";
-
- public static void main(String[] args) throws AxisFault {
-
- Options options = new Options();
- options.setTo(new EndpointReference(toEpr));
- options.setListenerTransportProtocol(Constants.TRANSPORT_HTTP);
- options.setUseSeparateListener(false);
- options.setProperty(Constants.Configuration.ENABLE_REST, Constants.VALUE_TRUE);
-
- Call call = new Call();
- call.setClientOptions(options);
-
- OMElement result = call.invokeBlocking("echo", getPayload());
-
- try {
- XMLStreamWriter writer = XMLOutputFactory.newInstance()
- .createXMLStreamWriter(System.out);
- result.serialize(writer);
- writer.flush();
- } catch (XMLStreamException e) {
- e.printStackTrace();
- } catch (FactoryConfigurationError e) {
- e.printStackTrace();
- }
- }
-
- private static OMElement getPayload() {
- OMFactory fac = OMAbstractFactory.getOMFactory();
- OMNamespace omNs = fac.createOMNamespace(
- "http://example1.org/example1", "example1");
- OMElement method = fac.createOMElement("echo", omNs);
- OMElement value = fac.createOMElement("Text", omNs);
- value.addChild(fac.createText(value, "Axis2 Echo String "));
- method.addChild(value);
-
- return method;
- }
-}</pre>
-</source>
-<h2>Access a REST Web Service Via HTTP GET</h2>
-
-<p>Axis2 allow users to access Web services that have simple type parameters
-via HTTP GET. For example the following URL requests the Version Service via
-HTTP GET. But the Web service arriving via GET assumes REST. Other parameters
-are converted in to XML and put 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" alt="" />
-
-<p>For example, the following request, </p><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.<source>
-<pre>
- <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
- <soapenv:Body>
- <axis2:getVersion xmlns:axis2="http://ws.apache.org/goGetWithREST" />
- </soapenv:Body>
- </soapenv:Envelope>
- </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 provides access to resources through the two methods GET and POST.
+REST Web services are a reduced subset of the usual Web service stack.</p>
+
+<p>The Axis2 REST implementation assumes the following properties:</p>
+<ol>
+ <li>REST Web services are Synchronous and Request Response in nature.</li>
+ <li>When REST Web services are accessed via GET, the service and the
+ operations are identified based on the URL. 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 a SOAP Body.
+ REST Web Services do not have Headers and the payload is sent
+ directly.</li>
+</ol>
+
+<p>Axis2 can be configured as a REST Container and can be used to send and
+receive RESTful Web services requests and responses. REST Web services can be
+accessed in two ways, i.e. using HTTP GET and POST.</p>
+
+<h2>Doing REST web services with HTTP POST</h2>
+
+<p>The REST default HTTP interface is POST. It can be enabled in the
+Server/Client side by adding the following line to the axis2.xml file.</p>
+<font color="blue">< parameter name="enableREST" locked="false" > true
+</parameter> </font>
+
+<p>It however acts as both a REST endpoint and 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 it is
+treated as a usual SOAP Message.</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 repositories axis2.xml file.</li>
+ <li>Setting as a property in client API e.g. <source>
+ <pre>...
+Options options = new Options();
+options.setProperty(Constants.Configuration.ENABLE_REST, Constants.VALUE_TRUE);
+...</pre>
+ </source></li>
+</ol>
+
+<h3>Sample REST - HTTP POST Client</h3>
+
+<p>There is an example named, userguide.clients.RESTClient.java which
+demonstrates the usage of the above, using the "echo"operation of the
+ </p>
+<pre>userguide.example1.MyService </pre>
+
+<p>of the samples.The class source will be as follows:</p>
+
+<source>
+<pre>public class RESTClient {
+
+ private static String toEpr = "http://localhost:8080/axis2/services/MyService";
+
+ public static void main(String[] args) throws AxisFault {
+
+ Options options = new Options();
+ options.setTo(new EndpointReference(toEpr));
+ options.setTransportInProtocol(Constants.TRANSPORT_HTTP);
+
+ options.setProperty(Constants.Configuration.ENABLE_REST, Constants.VALUE_TRUE);
+
+ ServiceClient sender = new ServiceClient();
+ sender.engageModule(new QName(Constants.MODULE_ADDRESSING));
+ sender.setOptions(options);
+ OMElement result = sender.sendReceive(getPayload());
+
+ try {
+ XMLStreamWriter writer = XMLOutputFactory.newInstance()
+ .createXMLStreamWriter(System.out);
+ result.serialize(writer);
+ writer.flush();
+ } catch (XMLStreamException e) {
+ e.printStackTrace();
+ } catch (FactoryConfigurationError e) {
+ e.printStackTrace();
+ }
+ }
+ private static OMElement getPayload() {
+ OMFactory fac = OMAbstractFactory.getOMFactory();
+ OMNamespace omNs = fac.createOMNamespace(
+ "http://example1.org/example1", "example1");
+ OMElement method = fac.createOMElement("echo", omNs);
+ OMElement value = fac.createOMElement("Text", omNs);
+ value.addChild(fac.createText(value, "Axis2 Echo String "));
+ method.addChild(value);
+
+ return method;
+ }
+}</pre>
+</source>
+<h2>Access a REST Web Service Via HTTP GET</h2>
+
+<p>Axis2 allow users to access Web services that have simple type parameters
+via HTTP GET. For example the following URL requests the Version Service via
+HTTP GET. But the Web service arriving via GET assumes REST. Other parameters
+are converted in to XML and put 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" alt="" />
+
+<p>For example, the following request, </p><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.<source>
+<pre>
+ <soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/">
+ <soapenv:Body>
+ <axis2:getVersion xmlns:axis2="http://ws.apache.org/goGetWithREST" />
+ </soapenv:Body>
+ </soapenv:Envelope>
+ </pre>
+</source>
+
+</body>
+</html>
Modified: webservices/axis2/trunk/java/xdocs/latest/transport_howto.html
URL: http://svn.apache.org/viewcvs/webservices/axis2/trunk/java/xdocs/latest/transport_howto.html?rev=384444&r1=384443&r2=384444&view=diff
==============================================================================
--- webservices/axis2/trunk/java/xdocs/latest/transport_howto.html (original)
+++ webservices/axis2/trunk/java/xdocs/latest/transport_howto.html Wed Mar 8 22:15:37 2006
@@ -1,6 +1,6 @@
<html>
<head>
- <meta http-equiv="Content-Type" content="">
+ <meta http-equiv="content-type" content="">
<title></title>
</head>
@@ -37,10 +37,10 @@
<p>Broadly speaking a transport inside Axis2 can be classified as a way of
getting a messages that arrive though some channel into the Axis2 engine. The
-core of Axis2 is transport independent. All data that is transport
-specific is striped out of the incoming message and inserted into the
-MessageContext and on the outgoing message all transport specific information
-like headers are added and sent.</p>
+core of Axis2 is transport independent. All data that is transport specific
+is striped out of the incoming message and inserted into the MessageContext
+and on the outgoing message all transport specific information like headers
+are added and sent.</p>
<p>To write your own transport you will need to primarily write two classes,
one is the TransportSender and the other is the TransportReceiver. To
@@ -70,22 +70,23 @@
should ideally be only done once for the lifetime of the Transport
receiver.</p>
-<p><source>
+<p><source></p>
<pre>try {
//Create a factory
ConfigurationContextFactory factory = new ConfigurationContextFactory();
//Use the factory and an Axis2 repository to create a new Configuration Context
- configurationContext = factory.buildConfigurationContext(repository_directory);
+ configurationContext = ConfigurationContextFactory.createConfigurationContextFromFileSystem(repository_directory,
+axis2xmllocation);
} catch (Exception e) {
log.info(e.getMessage());
}</pre>
</source>
-</p>
<p>Now we need some kind of a listener to listen to the requests that come
in. This you will need to implement according to the transport that you are
trying to build. After a message is received at the receiver you can use the
following code to process the request and then forward the message context to
-the engine using thing the engine.receive(msgContext) method.{Following code snippet extracted from MailListener as an example}</p>
+the engine using thing the engine.receive(msgContext) method.{Following code
+snippet extracted from MailListener as an example}</p>
<source><pre>AxisEngine engine = new AxisEngine(configurationContext);
MessageContext msgContext = null;
// create and initialize a message context