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 gd...@apache.org on 2001/08/10 18:29:48 UTC

cvs commit: xml-axis/java/src/org/apache/axis/message MessageElement.java

gdaniels    01/08/10 09:29:48

  Modified:    java/docs user-guide.html
               java/samples/userguide/example1 TestClient.java
               java/samples/userguide/example2 CalcClient.java
                        Calculator.java
               java/samples/userguide/example4 Client.java LogHandler.java
                        Service.java
               java/samples/userguide/example5 BeanService.java Client.java
                        Order.java
               java/src/org/apache/axis/message MessageElement.java
  Added:       java/samples/userguide/example3 Client.java MyService.java
                        deploy.xml undeploy.xml
  Log:
  User guide updates from Michael Peterson (doc person at Macromedia)
  
  Add license to userguide samples
  
  Add example3
  
  Throw Exception in MessageElement.getAsDOM() if doc can't be parsed.
  
  Revision  Changes    Path
  1.9       +100 -99   xml-axis/java/docs/user-guide.html
  
  Index: user-guide.html
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/docs/user-guide.html,v
  retrieving revision 1.8
  retrieving revision 1.9
  diff -u -r1.8 -r1.9
  --- user-guide.html	2001/08/08 18:48:59	1.8
  +++ user-guide.html	2001/08/10 16:29:47	1.9
  @@ -29,59 +29,59 @@
     <A href="#DeploymentReference">Deployment Reference</a><br>
     <A href="#Glossary">Glossary</a></p>
   <h2><a name="Introduction"></a>Introduction</h2>
  -<p>Welcome to Axis! This is the <b>alpha 1</b> version, our first publically annouced 
  -  milestone. Please note that this is a work in progress, and although the basic 
  -  functionality is there, there are still a lot of unfinished areas and rough 
  -  edges - so watch your step, and don't expect perfection. That said, we're very 
  -  psyched about the package so far, and would love to get your take on how we 
  -  can make it better. </p>
  +<p>Welcome to Axis, the third generation of Apache SOAP! This is the <b>alpha 
  +  1</b> version, our first publically announced milestone. Please note that Axis 
  +  is a work in progress, and although the basic functionality is there, there 
  +  are still a lot of unfinished areas and rough edges. That said, we're very psyched 
  +  about the package so far and would love to get your take on how we can make 
  +  it better. </p>
  +<h3>What is SOAP?</h3>
  +<p>SOAP is an XML<i>-</i>based communitcation protocol and encoding format for 
  +  inter-application communication. Originally conceived by Microsoft and Userland 
  +  software, it has evolved through several generations and the current spec, <a href="http://w3.org/TR/soap">SOAP 
  +  1.1</a>, is fast growing in popularity and usage. The W3C's XML Protocol working 
  +  group is in the process of turning SOAP into a true open standard, and as of 
  +  this writing has released a working draft of SOAP 1.2, which cleans up some 
  +  of the more confusing areas of the 1.1 spec.</p>
  +<p>SOAP is widely viewed as the backbone to a new generation of cross-platform 
  +  cross-language distributed computing applications, termed Web Services.</p>
   <h3>What is Axis?</h3>
  -<p>Axis is the third generation of Apache SOAP, which began at IBM as "SOAP4J" 
  -  and then became Apache SOAP version 2. The committers on the v2 project began 
  -  some conversations in late 2000 about making the engine much more flexible, 
  -  configurable, and able to handle both SOAP and the upcoming XML Protocol specification 
  -  from the W3C. After a little while, it became clear that a ground-up rearchitecture 
  -  was the way to go. Several of the v2 committers proposed very similar designs, 
  -  all based around configurable "chains" of message "handlers" 
  -  which would implement small bits of functionality in a very flexible and composable 
  -  manner. This system is the result of months of continued discussion and coding 
  -  effort in this direction. Some of the key Axis features include the following:</p>
  +<p>Apache SOAP began at IBM as "SOAP4J" and then became Apache SOAP version 2. 
  +  The committers on the v2 project began some conversations in late 2000 about 
  +  making the engine much more flexible, configurable, and able to handle both 
  +  SOAP and the upcoming XML Protocol specification from the W3C. </p>
  +<p>After a little while, it became clear that a ground-up rearchitecture was the 
  +  way to go. Several of the v2 committers proposed very similar designs, all based 
  +  around configurable "chains" of message "handlers" which would implement small 
  +  bits of functionality in a very flexible and composable manner. Axis is the 
  +  result of months of continued discussion and coding effort in this direction. 
  +  Some of the key Axis features include the following:</p>
   <ul>
  -  <li> Speed. Axis uses SAX (event-based) parsing to acheive significantly greater 
  -    speed than earlier versions of Apache SOAP. 
  -  <li>Flexibility. The Axis architecture gives the developer complete freedom 
  +  <li> <b>Speed.</b> Axis uses SAX (event-based) parsing to acheive significantly 
  +    greater speed than earlier versions of Apache SOAP. 
  +  <li><b>Flexibility.</b> The Axis architecture gives the developer complete freedom 
       to insert extensions into the engine for custom header processing, system 
       management, or anything else you can imagine. 
  -  <li>Component-oriented deployment. You can easily define reusable networks of 
  -    Handlers to implement common patterns of processing for your applications, 
  +  <li><b>Component-oriented deployment.</b> You can easily define reusable networks 
  +    of Handlers to implement common patterns of processing for your applications, 
       or to distribute to partners. 
  -  <li>Transport framework. We have a clean and simple abstraction for designing 
  +  <li><b>Transport framework.</b> We have a clean and simple abstraction for designing 
       transports (i.e. senders and listeners for SOAP over various protocols such 
       as SMTP, FTP, message-oriented middleware, etc), and the core of the engine 
       is completely transport-independent. 
   </ul>
  -<p>We hope you enjoy using Axis, and please note that this is an open-source effort 
  +<p>We hope you enjoy using Axis. Please note that this is an open-source effort 
     - if you feel the code could use some new features or fixes, please get involved 
  -  and lend a hand! The Axis developer community would welcome your participation.</p>
  +  and lend a hand! The Axis developer community welcomes your participation.</p>
   <h4><b>Let us know what you think!</b></h4>
   <p>Please send feedback about the package to "<A href="mailto:axis-dev@xml.apache.org">axis-dev@xml.apache.org</a>". 
     Also, Axis is regsitered in <a href="http://nagoya.apache.org/bugzilla">bugzilla</a>, 
     the Apache bug tracking and feature-request database.</p>
  -<h3>What is SOAP?</h3>
  -<p>SOAP is an XML<i>-</i>based communitcation protocol and encoding format for 
  -  inter-application communication. Originally conceived by Microsoft and Userland 
  -  software, it has evolved through several generations and the current spec, <a href="http://w3.org/TR/soap">SOAP 
  -  1.1</a>, is fast growing in popularity and usage. The W3C's XML Protocol working 
  -  group is in the process of turning SOAP into a true open standard, and as of 
  -  this writing has released a working draft of SOAP 1.2, which cleans up some 
  -  of the more confusing areas of the 1.1 spec.</p>
  -<p>SOAP is widely viewed as the backbone to a new generation of cross-platform 
  -  cross-language distributed computing applications, termed Web Services.</p>
   <h3>What's in this release?</h3>
  -<p>This release contains:</p>
  +<p>This release includes the following features:</p>
   <ul>
  -  <li>A SOAP 1.1 compliant engine 
  -  <li>A flexible configuration / deployment system 
  +  <li>SOAP 1.1 compliant engine 
  +  <li>Flexible configuration / deployment system 
     <li>Support for "drop-in" deployment of SOAP services 
     (JWS) 
     <li>Support for all basic types, and a type mapping 
  @@ -92,33 +92,34 @@
     collections and SOAP Arrays 
     <li>Providers for RPC and message based SOAP services 
     <li>Preliminary security extensions 
  -  <li>An HTTP servlet-based transport 
  -  <li>A standalone version of the server (HTTP) 
  +  <li>HTTP servlet-based transport 
  +  <li>Standalone version of the server (with HTTP support) 
     <li>Examples, including a client and server for the soapbuilders community interoperability 
       tests</li>
   </ul>
   <h3>What's missing?</h3>
   <ul>
     <li>Support for the SOAP with Attachments specification 
  -  <li>Supprt for multi-dimensional and &quot;sparse&quot; arrays 
  +  <li>Supprt for multi-dimensional arrays 
  +  <li>Support for the SOAP actor attribute
     <li>A final deployment descriptor syntax (WSDD)</li>
     <li>WSDL tooling</li>
   </ul>
   <p>All of these items are on the list for the final release.</p>
   <h2><a name="Installation"></a>Installing Axis and Using this Guide</h2>
   <p>See the <a href="install.html">Axis Installation Guide</a> for instructions 
  -  on installing Axis as a webapp on your J2EE server. </p>
  -<p>To run the examples in this guide, you'll need to make sure that &quot;axis.jar&quot; 
  -  is on your classpath. You should find it in the build/lib directory of the distribution.</p>
  +  on installing Axis as a web application on your J2EE server. </p>
  +<p>Before running the examples in this guide, you'll need to make sure that axis.jar 
  +  is in your classpath. You should find it in the build/lib directory of the distribution.</p>
   <h2><a name="Architecture"></a>Axis Architecture - a Brief Primer</h2>
  -<p>(This section may be skipped if you want to dive right in - in many cases using 
  -  the basic features of Axis requires zero knowledge of these topics.)</p>
  +<p>(Skip this section if you want to dive right in - in many cases using the basic 
  +  features of Axis requires zero knowledge of these topics.)</p>
   <p><i><font color="#ff0000">TBD - explanation of Axis architecture, Handlers, 
     Chains, Services... How transports and global chains work, our deployment architecture, 
     etc...</font></i> </p>
   <h2><a name="ConsumingServices"></a>Consuming Web Services with Axis</h2>
   <h3>Basics - Getting Started</h3>
  -<p>Let's take a look at an example Web Service client, which will call the "echoString" 
  +<p>Let's take a look at an example Web Service client that will call the <b>echoString</b> 
     method on the public Axis server at Apache.</p>
   <div class="example">
     <pre>1   import org.apache.axis.client.ServiceClient;
  @@ -150,9 +151,9 @@
     API takes several arguments - first, the XML namespace of the desired service. 
     Second, the method name which should be invoked. Finally, we pass an Object 
     array containing the arguments to the method.</p>
  -<p>You can see what happens to the arguments by looking at the SOAP which goes 
  -  out on the wire (look at the colored bits, and notice they match the values 
  -  in the call above):</p>
  +<p>You can see what happens to the arguments by looking at the SOAP request that 
  +  goes out on the wire (look at the colored sections, and notice they match the 
  +  values in the call above):</p>
     <div class="xml">
     <pre>&lt;?xml version="1.0" encoding="UTF-8"?&gt;
   &lt;SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  @@ -169,15 +170,15 @@
   </div>
   <p>The String argument is automatically serialized into XML, and the server responds 
     with an identical String, which we deserialize and print.</p>
  -<p><i>Note : to actually watch the XML flowing back and forth between a SOAP client 
  -  and server, you can use the included &quot;tcpmon&quot; tool. See the <a href="#tcpmon">appendix</a> 
  +<p><i>Note: to actually watch the XML flowing back and forth between a SOAP client 
  +  and server, you can use the included tcpmon tool. See the <a href="#tcpmon">appendix</a> 
     for an overview.</i></p>
   <h3>Naming Parameters</h3>
  -<p>In the above example, the parameters are in the same order we sent them, but 
  -  since we only passed the objects themselves, Axis automatically named the XML-encoded 
  -  arguments in the SOAP messsage "arg0", "arg1", etc. If you want to change this, 
  -  it's easy! Instead of passing the actual Object value of your argument in the 
  -  arguments array, simply wrap the argument in an RPCParam class like so:</p>
  +<p>In the above example, the parameters are in the order in which we sent them, 
  +  but since we only passed the objects themselves, Axis automatically named the 
  +  XML-encoded arguments in the SOAP message "arg0", "arg1", etc. If you want to 
  +  change this, it's easy! Instead of passing the actual Object value of your argument 
  +  in the arguments array, simply wrap the argument in an RPCParam class like so:</p>
   <div class="example"><pre>  String ret = (String)client.invoke("http://soapinterop.org",
                                        "echoString",
                                        new Object [] { new RPCParam("testParam", "Hello!") };
  @@ -196,16 +197,15 @@
   &lt;/SOAP-ENV:Envelope&gt;</pre>
     
   </div>
  -<p>You'll note the param is now named "testParam" as expected.</p>
  +<p>Note that the param is now named "testParam" as expected.</p>
   <h3>Interoperating with &quot;untyped&quot; servers</h3>
   <p>In the above examples, we've been casting the return type of invoke(), which 
     is Object, to the appropriate &quot;real&quot; type - for instance, we know 
  -  that the &quot;echoString&quot; method returns a String, so we expect to get 
  -  one back from client.invoke(). Let's take a moment and investigate how this 
  -  happens, which sheds light on a potential problem (to which, of course, we have 
  -  a solution - so don't fret :)).</p>
  -<p>Here's what a typical response might look like to the &quot;echoString&quot; 
  -  method: </p>
  +  that the echoString method returns a String, so we expect to get one back from 
  +  client.invoke(). Let's take a moment and investigate how this happens, which 
  +  sheds light on a potential problem (to which, of course, we have a solution 
  +  - so don't fret :)).</p>
  +<p>Here's what a typical response might look like to the echoString method: </p>
   <pre><div class="xml">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
   &lt;SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                      xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  @@ -216,12 +216,12 @@
       &lt;/ns1:echoStringResponse&gt;
     &lt;/SOAP-ENV:Body&gt;
   &lt;/SOAP-ENV:Envelope&gt;</div></pre>
  -<p>Take a look at the bit which we've highlighted in red - that attribute is a 
  -  schema <b>type declaration</b>, which Axis uses to figure out that the contents 
  -  of that element are, in this case, deserializable into a Java String object. 
  -  Many toolkits will put this kind of explicit typing information in the XML, 
  +<p>Take a look at the section which we've highlighted in red - that attribute 
  +  is a schema <b>type declaration</b>, which Axis uses to figure out that the 
  +  contents of that element are, in this case, deserializable into a Java String 
  +  object. Many toolkits put this kind of explicit typing information in the XML 
     to make the message &quot;self-describing&quot;. On the other hand, some toolkits 
  -  will return responses that look like this:</p>
  +  return responses that look like this:</p>
   <pre><div class="xml">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
   &lt;SOAP-ENV:Envelope xmlns:xsd="http://www.w3.org/2001/XMLSchema"
                      xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
  @@ -232,9 +232,9 @@
       &lt;/ns1:echoStringResponse&gt;
     &lt;/SOAP-ENV:Body&gt;
   &lt;/SOAP-ENV:Envelope&gt;</div></pre>
  -<p>There's no type in the message - so how do we know what Java object we should 
  +<p>There's no type in the message, so how do we know what Java object we should 
     deserialize the &lt;result&gt; element into? The answer is <b>metadata</b> - 
  -  data about data. In this case, we need a <b>description</b> of the service which 
  +  data about data. In this case, we need a <b>description</b> of the service that 
     tells us what to expect as the return type. Here's how to do it on the client 
     side in Axis:</p>
   <div class="example">
  @@ -243,12 +243,12 @@
     client.setServiceDescription(sd);</pre>
   </div>
   <p>The ServiceDescription constructor takes a name (can be anything) and a boolean 
  -  as arguments; the boolean indicates if the service is RPC or not - in this case 
  -  it is, so we use &quot;true&quot;. Then we call &quot;setOutputType()&quot;, 
  +  as arguments; the boolean indicates whether the service is RPC or not. In this 
  +  case it is, so we use &quot;true&quot;. Then we call &quot;setOutputType()&quot;, 
     which tells the ServiceDescription that if the return element is not typed, 
     act as if the return value has an xsi:type attribute set to the QName which 
  -  we supply. (you can see an example of this in action in the interop echo-test 
  -  client - samples/echo/TestClient.java)</p>
  +  we supply. (You can see an example of this in action in the interop echo-test 
  +  client - samples/echo/TestClient.java.)</p>
   <p>OK - so now you know the basics of accessing SOAP services as a client. But 
     how do you publish your own services?</p>
   <h2><a name="PublishingServices"></a>Publishing Web Services with Axis</h2>
  @@ -265,7 +265,7 @@
     }
   } 
   </pre>
  -<p>(you'll find this very class in <a href="../samples/userguide/example2/Calculator.java">samples/userguide/example2/Calculator.java</a>)</p>
  +<p>(You'll find this very class in <a href="../samples/userguide/example2/Calculator.java">samples/userguide/example2/Calculator.java</a>.)</p>
   <p>How do we go about making this class available via SOAP? There are a couple 
     of answers to that question, but we'll start with the easiest way Axis provides 
     to do this, which takes almost no effort at all!</p>
  @@ -274,10 +274,11 @@
     rename it "Calculator.jws". So you might do something like this:</p>
   <pre>% copy Calculator.java <i><font color="#0000FF">&lt;your-webapp-root&gt;</font></i>/axis/Calculator.jws</pre>
   <p>Now for step 2... hm, wait a minute. You're done! You should now be able to 
  -  access the service at the following URL (assuming you've mapped the axis webapp to port 80):</p>
  +  access the service at the following URL (assuming you've mapped the Axis web 
  +  application to port 80):</p>
   <p><a href="http://localhost/axis/Calculator.jws">http://localhost/axis/Calculator.jws</a> 
   </p>
  -<p>Axis will automatically locate the file, compile the class, and convert SOAP 
  +<p>Axis automatically locates the file, compiles the class, and converts SOAP 
     calls correctly into Java invocations of your service class. Try it out - there's 
     a calculator client in samples/userguide/example2/CalcClient.java, which you 
     can use like this:</p>
  @@ -295,7 +296,7 @@
     the service gets accessed is pretty limited - you can't specify custom type 
     mappings, or control which Handlers get invoked when people are using your service.</p>
   <h4>Deploying via descriptors</h4>
  -To really use the flexibility available to you in Axis, you'll want to get familiar 
  +To really use the flexibility available to you in Axis, you should get familiar 
   with the Axis <b>deployment descriptor</b> format (<i>note: this particular XML 
   format is just for the alpha release. Axis plans to move to using WSDD (Web Service 
   Deployment Descriptor), a much more robust syntax, in the next release</i>). A 
  @@ -304,12 +305,13 @@
   Web Service, so let's start by taking a look at a deployment descriptor for a 
   basic service (this file is samples/userguide/example3/deploy.xml): 
   <div class="example"> 
  -<pre>&lt;admin:deploy xmlns:admin="AdminService"&gt;
  +  <pre>&lt;admin:deploy xmlns:admin="AdminService"&gt;
    &lt;service name="MyService" pivot="RPCDispatcher"&gt;
  -  &lt;option name="classname" value="samples.userguide.example3.MyService"/&gt;
  -  &lt;option name="methods" value="*"/&gt;
  +  &lt;option name="className" value="samples.userguide.example3.MyService"/&gt;
  +  &lt;option name="methodName" value="*"/&gt;
    &lt;/service&gt;
  -&lt;/admin:deploy&gt;</pre></div>
  +&lt;/admin:deploy&gt;</pre>
  +</div>
   
   <p>Pretty simple, really - the outermost element tells the engine that this is 
     a deployment (other options are "undeploy" and "list" - 
  @@ -327,19 +329,18 @@
     could also have restricted the SOAP-accessible methods by using a space
     or comma separated list of available method names).</p>
   <h4>Using the AdminClient</h4>
  -<p>Once we've got this file, we need to send it to an Axis server in order to 
  -  actually deploy the described service. We do this with the AdminClient, or the 
  -  "org.apache.axis.client.AdminClient" class. An invocation of the AdminClient 
  -  looks like this:</p>
  +<p>Once we have this file, we need to send it to an Axis server in order to actually 
  +  deploy the described service. We do this with the AdminClient, or the "org.apache.axis.client.AdminClient" 
  +  class. An invocation of the AdminClient looks like this:</p>
   <pre>% java org.apache.axis.client.AdminClient deploy.xml
   &lt;admin&gt;done processing&lt;/admin&gt;</pre>
   <p>This command has now made our service accessible via 
   SOAP. Check it out by running the Client class -  it should look like this:</p><PRE>% java samples.userguide.example3.Client "test me!"<BR>You typed : "test me!"<BR>% </PRE>
  -<P>If you want to prove to yourself that the deployment really worked, try 
  -undeploying the service and calling it again!&nbsp; There's an "undeploy.xml" 
  -file in the example3/ directory which you can use just as you did the deploy.xml 
  -file above.&nbsp; Run the AdminClient on that file, then try the service Client 
  -again and see what happens.</P>
  +<P>If you want to prove to yourself that the deployment really worked, try undeploying 
  +  the service and calling it again.&nbsp; There's an "undeploy.xml" file in the 
  +  example3/ directory which you can use just as you did the deploy.xml file above.&nbsp; 
  +  Run the AdminClient on that file, then try the service Client again and see 
  +  what happens.</P>
   <P>You can also use the AdminClient to get a listing of all the deployed 
   components in the server:</P><PRE>% java org.apache.axis.client.AdminClient list<BR>&lt;big XML document returned here&gt;</PRE>
   <P>In there you'll see services, handlers, transports...</P>
  @@ -362,14 +363,14 @@
     &lt;option name="methodName" value="*"/&gt;
    &lt;/service&gt;
   &lt;/admin:deploy&gt;</pre>
  -<p>The first section defines a Handler called "track" which is implemented 
  -  by the class "samples.log.LogHandler". We give this Handler an option 
  -  to let it know which file to write its messages into.</p>
  -<p>Then we define a service, "MyService", which is an RPC server just 
  -  like we saw above in our first example. The difference is the "request" 
  -  attribute - this indicates a Handler (or set of Handlers) which should be invoked 
  -  when the service is invoked, before the pivot handler. By setting this to "track", 
  -  we ensure that the message will be logged each time this service is invoked.<br>
  +<p>The first section defines a Handler called "track" that is implemented by the 
  +  class samples.log.LogHandler. We give this Handler an option to let it know 
  +  which file to write its messages into.</p>
  +<p>Then we define a service, MyService, which is an RPC server just like we saw 
  +  above in our first example. The difference is the "request" attribute - this 
  +  indicates a Handler (or set of Handlers) that should be invoked when the service 
  +  is invoked, before the pivot handler. By setting this to "track", we ensure 
  +  that the message will be logged each time this service is invoked.<br>
   </p>
   <h4>Remote Administration</h4>
   <p>Note that by default, the Axis server is configured to only accept administration 
  
  
  
  1.4       +55 -0     xml-axis/java/samples/userguide/example1/TestClient.java
  
  Index: TestClient.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/userguide/example1/TestClient.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- TestClient.java	2001/08/06 20:21:21	1.3
  +++ TestClient.java	2001/08/10 16:29:47	1.4
  @@ -1,3 +1,58 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Axis" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package samples.userguide.example1;
   
   import org.apache.axis.client.ServiceClient;
  
  
  
  1.3       +55 -0     xml-axis/java/samples/userguide/example2/CalcClient.java
  
  Index: CalcClient.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/userguide/example2/CalcClient.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- CalcClient.java	2001/08/03 21:13:39	1.2
  +++ CalcClient.java	2001/08/10 16:29:47	1.3
  @@ -1,3 +1,58 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Axis" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package samples.userguide.example2;
   
   import org.apache.axis.client.ServiceClient;
  
  
  
  1.3       +55 -0     xml-axis/java/samples/userguide/example2/Calculator.java
  
  Index: Calculator.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/userguide/example2/Calculator.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Calculator.java	2001/08/03 21:13:39	1.2
  +++ Calculator.java	2001/08/10 16:29:47	1.3
  @@ -1,3 +1,58 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Axis" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package samples.userguide.example2;
   
   public class Calculator {
  
  
  
  1.1                  xml-axis/java/samples/userguide/example3/Client.java
  
  Index: Client.java
  ===================================================================
  /*
   * The Apache Software License, Version 1.1
   *
   *
   * Copyright (c) 2001 The Apache Software Foundation.  All rights 
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *    notice, this list of conditions and the following disclaimer. 
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *    notice, this list of conditions and the following disclaimer in
   *    the documentation and/or other materials provided with the
   *    distribution.
   *
   * 3. The end-user documentation included with the redistribution,
   *    if any, must include the following acknowledgment:  
   *       "This product includes software developed by the
   *        Apache Software Foundation (http://www.apache.org/)."
   *    Alternately, this acknowledgment may appear in the software itself,
   *    if and wherever such third-party acknowledgments normally appear.
   *
   * 4. The names "Axis" and "Apache Software Foundation" must
   *    not be used to endorse or promote products derived from this
   *    software without prior written permission. For written 
   *    permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache",
   *    nor may "Apache" appear in their name, without prior written
   *    permission of the Apache Software Foundation.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   */
  
  package samples.userguide.example3;
  
  import org.apache.axis.client.ServiceClient;
  import org.apache.axis.utils.Debug;
  import org.apache.axis.utils.Options;
  
  public class Client
  {
      public static void main(String [] args)
      {
          try {
              Options options = new Options(args);
              
              Debug.setDebugLevel(options.isFlagSet('d'));
              
              String endpointURL = options.getURL();
              String textToSend;
              
              args = options.getRemainingArgs();
              if ((args == null) || (args.length < 1)) {
                  textToSend = "<nothing>";
              } else {
                  textToSend = args[0];
              }
              
              ServiceClient client = new ServiceClient(endpointURL);
              
              String ret = (String)client.invoke("MyService", "serviceMethod",
                                                 new Object [] { textToSend });
              
              System.out.println("You typed : " + ret);
          } catch (Exception e) {
              System.err.println(e.toString());
          }
      }
  }
  
  
  
  1.1                  xml-axis/java/samples/userguide/example3/MyService.java
  
  Index: MyService.java
  ===================================================================
  /*
   * The Apache Software License, Version 1.1
   *
   *
   * Copyright (c) 2001 The Apache Software Foundation.  All rights 
   * reserved.
   *
   * Redistribution and use in source and binary forms, with or without
   * modification, are permitted provided that the following conditions
   * are met:
   *
   * 1. Redistributions of source code must retain the above copyright
   *    notice, this list of conditions and the following disclaimer. 
   *
   * 2. Redistributions in binary form must reproduce the above copyright
   *    notice, this list of conditions and the following disclaimer in
   *    the documentation and/or other materials provided with the
   *    distribution.
   *
   * 3. The end-user documentation included with the redistribution,
   *    if any, must include the following acknowledgment:  
   *       "This product includes software developed by the
   *        Apache Software Foundation (http://www.apache.org/)."
   *    Alternately, this acknowledgment may appear in the software itself,
   *    if and wherever such third-party acknowledgments normally appear.
   *
   * 4. The names "Axis" and "Apache Software Foundation" must
   *    not be used to endorse or promote products derived from this
   *    software without prior written permission. For written 
   *    permission, please contact apache@apache.org.
   *
   * 5. Products derived from this software may not be called "Apache",
   *    nor may "Apache" appear in their name, without prior written
   *    permission of the Apache Software Foundation.
   *
   * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
   * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
   * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
   * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
   * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
   * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
   * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
   * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
   * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
   * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
   * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
   * SUCH DAMAGE.
   * ====================================================================
   *
   * This software consists of voluntary contributions made by many
   * individuals on behalf of the Apache Software Foundation.  For more
   * information on the Apache Software Foundation, please see
   * <http://www.apache.org/>.
   */
  
  package samples.userguide.example3;
  
  public class MyService
  {
      public String serviceMethod(String arg)
      {
          return arg;
      }
  }
  
  
  
  1.1                  xml-axis/java/samples/userguide/example3/deploy.xml
  
  Index: deploy.xml
  ===================================================================
  <admin:deploy xmlns:admin="AdminService">
   <service name="MyService" pivot="RPCDispatcher">
    <option name="className" value="samples.userguide.example3.MyService"/>
    <option name="methodName" value="*"/>
   </service>
  </admin:deploy>
  
  
  
  1.1                  xml-axis/java/samples/userguide/example3/undeploy.xml
  
  Index: undeploy.xml
  ===================================================================
  <admin:undeploy xmlns:admin="AdminService">
   <service name="MyService"/>
  </admin:undeploy>
  
  
  
  1.2       +55 -0     xml-axis/java/samples/userguide/example4/Client.java
  
  Index: Client.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/userguide/example4/Client.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Client.java	2001/08/08 18:48:59	1.1
  +++ Client.java	2001/08/10 16:29:48	1.2
  @@ -1,3 +1,58 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Axis" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package samples.userguide.example4;
   
   import org.apache.axis.client.ServiceClient;
  
  
  
  1.3       +55 -0     xml-axis/java/samples/userguide/example4/LogHandler.java
  
  Index: LogHandler.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/userguide/example4/LogHandler.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- LogHandler.java	2001/08/08 18:48:59	1.2
  +++ LogHandler.java	2001/08/10 16:29:48	1.3
  @@ -1,3 +1,58 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Axis" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package samples.userguide.example4;
   
   import java.io.*;
  
  
  
  1.2       +55 -0     xml-axis/java/samples/userguide/example4/Service.java
  
  Index: Service.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/userguide/example4/Service.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- Service.java	2001/08/08 18:48:59	1.1
  +++ Service.java	2001/08/10 16:29:48	1.2
  @@ -1,3 +1,58 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Axis" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package samples.userguide.example4;
   
   public class Service
  
  
  
  1.3       +55 -0     xml-axis/java/samples/userguide/example5/BeanService.java
  
  Index: BeanService.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/userguide/example5/BeanService.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- BeanService.java	2001/08/03 21:13:39	1.2
  +++ BeanService.java	2001/08/10 16:29:48	1.3
  @@ -1,3 +1,58 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Axis" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package samples.userguide.example5;
   
   public class BeanService
  
  
  
  1.3       +55 -0     xml-axis/java/samples/userguide/example5/Client.java
  
  Index: Client.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/userguide/example5/Client.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Client.java	2001/08/03 21:13:39	1.2
  +++ Client.java	2001/08/10 16:29:48	1.3
  @@ -1,3 +1,58 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Axis" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package samples.userguide.example5;
   
   import org.apache.axis.AxisFault;
  
  
  
  1.3       +55 -0     xml-axis/java/samples/userguide/example5/Order.java
  
  Index: Order.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/samples/userguide/example5/Order.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Order.java	2001/08/03 21:13:39	1.2
  +++ Order.java	2001/08/10 16:29:48	1.3
  @@ -1,3 +1,58 @@
  +/*
  + * The Apache Software License, Version 1.1
  + *
  + *
  + * Copyright (c) 2001 The Apache Software Foundation.  All rights 
  + * reserved.
  + *
  + * Redistribution and use in source and binary forms, with or without
  + * modification, are permitted provided that the following conditions
  + * are met:
  + *
  + * 1. Redistributions of source code must retain the above copyright
  + *    notice, this list of conditions and the following disclaimer. 
  + *
  + * 2. Redistributions in binary form must reproduce the above copyright
  + *    notice, this list of conditions and the following disclaimer in
  + *    the documentation and/or other materials provided with the
  + *    distribution.
  + *
  + * 3. The end-user documentation included with the redistribution,
  + *    if any, must include the following acknowledgment:  
  + *       "This product includes software developed by the
  + *        Apache Software Foundation (http://www.apache.org/)."
  + *    Alternately, this acknowledgment may appear in the software itself,
  + *    if and wherever such third-party acknowledgments normally appear.
  + *
  + * 4. The names "Axis" and "Apache Software Foundation" must
  + *    not be used to endorse or promote products derived from this
  + *    software without prior written permission. For written 
  + *    permission, please contact apache@apache.org.
  + *
  + * 5. Products derived from this software may not be called "Apache",
  + *    nor may "Apache" appear in their name, without prior written
  + *    permission of the Apache Software Foundation.
  + *
  + * THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  + * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  + * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  + * DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  + * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  + * USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  + * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  + * OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  + * OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  + * SUCH DAMAGE.
  + * ====================================================================
  + *
  + * This software consists of voluntary contributions made by many
  + * individuals on behalf of the Apache Software Foundation.  For more
  + * information on the Apache Software Foundation, please see
  + * <http://www.apache.org/>.
  + */
  +
   package samples.userguide.example5;
   
   /** This is a JavaBean which represents an order for some products.
  
  
  
  1.42      +4 -0      xml-axis/java/src/org/apache/axis/message/MessageElement.java
  
  Index: MessageElement.java
  ===================================================================
  RCS file: /home/cvs/xml-axis/java/src/org/apache/axis/message/MessageElement.java,v
  retrieving revision 1.41
  retrieving revision 1.42
  diff -u -r1.41 -r1.42
  --- MessageElement.java	2001/08/10 13:08:22	1.41
  +++ MessageElement.java	2001/08/10 16:29:48	1.42
  @@ -278,6 +278,10 @@
           
           Reader reader = new StringReader(writer.getBuffer().toString());
           Document doc = XMLUtils.newDocument(new InputSource(reader));
  +        if (doc == null)
  +            throw new Exception("Couldn't get DOM document: XML was \"" +
  +                                writer.getBuffer().toString() + "\"");
  +        
           return doc.getDocumentElement();
       }