You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by he...@apache.org on 2005/07/01 19:00:27 UTC

svn commit: r208774 - in /webservices/axis/trunk/java: etc/project.xml maven.xml modules/core/project.xml modules/core/src/org/apache/axis2/util/Utils.java modules/samples/project.xml xdocs/rest-ws.html

Author: hemapani
Date: Fri Jul  1 10:00:26 2005
New Revision: 208774

URL: http://svn.apache.org/viewcvs?rev=208774&view=rev
Log:
remove the unused jar files and doc update on REST

Modified:
    webservices/axis/trunk/java/etc/project.xml
    webservices/axis/trunk/java/maven.xml
    webservices/axis/trunk/java/modules/core/project.xml
    webservices/axis/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java
    webservices/axis/trunk/java/modules/samples/project.xml
    webservices/axis/trunk/java/xdocs/rest-ws.html

Modified: webservices/axis/trunk/java/etc/project.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/etc/project.xml?rev=208774&r1=208773&r2=208774&view=diff
==============================================================================
--- webservices/axis/trunk/java/etc/project.xml (original)
+++ webservices/axis/trunk/java/etc/project.xml Fri Jul  1 10:00:26 2005
@@ -9,7 +9,7 @@
   <groupId>axis</groupId>
   <package>org.apache.axis2</package>
 
-  <currentVersion>M2</currentVersion>
+  <currentVersion>0.9</currentVersion>
   
   <!-- details about the organization that 'owns' the project -->
   <organization>

Modified: webservices/axis/trunk/java/maven.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/maven.xml?rev=208774&r1=208773&r2=208774&view=diff
==============================================================================
--- webservices/axis/trunk/java/maven.xml (original)
+++ webservices/axis/trunk/java/maven.xml Fri Jul  1 10:00:26 2005
@@ -378,6 +378,7 @@
 				<ant:exclude name="**servlet**.jar"/>
 				<ant:exclude name="commons-httpclient-*.jar"/>
 				<ant:exclude name="ant*.jar"/>
+				<ant:exclude name="commons-fileupload-*.jar"/>				
 			</ant:fileset> 
 		</ant:copy> 
 		<ant:copy file="target/axis2.war" tofile="${bin.dist.dir}/webapps/axis2.war"/>

Modified: webservices/axis/trunk/java/modules/core/project.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/project.xml?rev=208774&r1=208773&r2=208774&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/project.xml (original)
+++ webservices/axis/trunk/java/modules/core/project.xml Fri Jul  1 10:00:26 2005
@@ -74,26 +74,10 @@
             </properties>
 		<url>http://dist.codehaus.org/stax/jars/</url>
         </dependency>
-	<dependency>
-            <groupId>james</groupId>
-            <artifactId>james</artifactId>
-            <version>3.0a1</version>
-            <properties>
-                <module>true</module>
-            </properties>
-        </dependency>
 	 <dependency>
            <groupId>geronimo-spec</groupId>
            <artifactId>geronimo-spec-servlet</artifactId>
            <version>2.4-rc3</version>
-           <properties>
-               <module>true</module>
-           </properties>
-       </dependency>
-	<dependency>
-           <groupId>commons-net</groupId>
-           <artifactId>commons-net</artifactId>
-           <version>1.3.0</version>
            <properties>
                <module>true</module>
            </properties>

Modified: webservices/axis/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java?rev=208774&r1=208773&r2=208774&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java (original)
+++ webservices/axis/trunk/java/modules/core/src/org/apache/axis2/util/Utils.java Fri Jul  1 10:00:26 2005
@@ -140,7 +140,6 @@
         if (-1 != index) {
             serviceStr = filePart.substring(index + Constants.REQUEST_URL_PREFIX.length() + 1);
             if ((index = serviceStr.indexOf('/')) > 0) {
-
                 values[0] = serviceStr.substring(0, index);
                 int lastIndex = serviceStr.indexOf('?');
                 if(lastIndex >= 0){
@@ -148,9 +147,6 @@
                 }else{
                     values[1] = serviceStr.substring(index + 1);
                 }
-                
-                
-                
             } else {
                 values[0] = serviceStr;
             }

Modified: webservices/axis/trunk/java/modules/samples/project.xml
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/modules/samples/project.xml?rev=208774&r1=208773&r2=208774&view=diff
==============================================================================
--- webservices/axis/trunk/java/modules/samples/project.xml (original)
+++ webservices/axis/trunk/java/modules/samples/project.xml Fri Jul  1 10:00:26 2005
@@ -103,15 +103,6 @@
             </properties>
         </dependency>
         <dependency>
-           <groupId>commons-net</groupId>
-           <artifactId>commons-net</artifactId>
-           <version>1.3.0</version>
-           <properties>
-               <module>true</module>
-           </properties>
-       </dependency>
-	 
-        <dependency>
             <groupId>geronimo-spec</groupId>
             <artifactId>geronimo-spec-activation</artifactId>
             <version>1.0.2-rc3</version>

Modified: webservices/axis/trunk/java/xdocs/rest-ws.html
URL: http://svn.apache.org/viewcvs/webservices/axis/trunk/java/xdocs/rest-ws.html?rev=208774&r1=208773&r2=208774&view=diff
==============================================================================
--- webservices/axis/trunk/java/xdocs/rest-ws.html (original)
+++ webservices/axis/trunk/java/xdocs/rest-ws.html Fri Jul  1 10:00:26 2005
@@ -1,48 +1,72 @@
-<html><head><TITLE>RESTful Web Services Support</TITLE></head><body><h1>RESTful Web Services Support</h1><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="eanbleREST" 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. call.setDoREST(true);</li>
-<code>call.setDoREST(true);</code></ol>
+<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="eanbleREST" 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. <code>call.setDoREST(true);</code>;</li>
+</ol>
 
 <h3>Sample REST - HTTP POST Client</h3>
-<p>There's a sample.axis2rest.MyServiceClient.java which demonstrates the usage of the above, using the <code>echo</code> operation of the <code>userguide.example1.MyService</code> of the samples. And the class source will be as follows
+<p>There's a sample.axis2rest.MyServiceClient.java which demonstrates the usage of the above, using 
+the <code>echo</code> operation of the <code>userguide.example1.MyService</code> of the samples. 
+And the class source will be as follows
 <pre>
 <code>
 public class MyServiceClient {
-
-	private static String toEpr = "http://localhost:8080/axis2/services/MyService";
-	
-	public static void main(String[] args) throws AxisFault {
-		
-			Call  call = new Call();
-			call.setTo(new EndpointReference(AddressingConstants.WSA_TO,toEpr));
-			call.setTransportInfo(Constants.TRANSPORT_HTTP,Constants.TRANSPORT_HTTP,false);
-			call.setDoREST(true);
+    private static String toEpr = "http://localhost:8080/axis2/services/MyService";
+    public static void main(String[] args) throws AxisFault {
+        OMElement payload = ...
+		Call  call = new Call();
+		call.setTo(new EndpointReference(AddressingConstants.WSA_TO,toEpr));
+		call.setTransportInfo(Constants.TRANSPORT_HTTP,Constants.TRANSPORT_HTTP,false);
+		call.setDoREST(true);
 			
-			OMElement result = call.invokeBlocking("echo", getPayload());
-		
-			try {
-				XMLStreamWriter writer = XMLOutputFactory.newInstance().createXMLStreamWriter(System.out);
-				result.serializeWithCache(new OMOutput(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;
+		OMElement result = call.invokeBlocking("echo", payload);
+		.... use the result
+		call.close();
 	}
 }
 </code>
 </pre>
 
-  <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>   <code>http://127.0.0.1:8080/axis2/services/Version/getVersion</code>   <p>Result can be shown in the browser as follows</p>   <img src="images/userguide/http-get-ws.png"/>         <p>For an example  request <code>http://127.0.0.1:8080/axis2/services/Version/getVersion/code> will be converted to the following SOAP Message for processing by Axis2</p>   <pre>   <pre>&lt;soapenv:Envelope 	xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"<br>	xmlns:xsd="http://www.w3.org/2001/XMLSchema" 	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"<br>		xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/03/addressing"&gt;<br>&lt;soapenv:Body&gt;   <br>	&lt;axis2:getVersion xmlns:axis2="http://ws.apache.org/goGetWithREST" &gt;&lt;/axis2:getVersion&gt;<br> &lt;/soapenv:Body&gt;<br>&lt;/soapenv:Envelope&gt;</pre>   </pre></body></html>
+  <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> 
+    <code>http://127.0.0.1:8080/axis2/services/Version/getVersion</code>   
+    <p>Result can be shown in the browser as follows.</p>   
+    <img src="images/userguide/http-get-ws.png"/>         
+    
+    <p>For an example  request <code>http://127.0.0.1:8080/axis2/services/Version/getVersion/code> 
+    will be converted to the following SOAP Message for processing by Axis2</p>   
+    <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>
+  </body></html>