<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
<meta name="copyright" content="Copyright (c) 2000, 2006 IBM Corporation and others. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html. Contributors: IBM Corporation - initial API and implementation" />
<meta name="DC.rights.owner" content="(C) Copyright 2000, 2006" />
<meta content="public" name="security" />
<meta content="index,follow" name="Robots" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta content="concept" name="DC.Type" />
<meta name="DC.Title" content="Creating Web services with the Apache Axis run-time environment" />
<meta name="abstract" content="This run-time environment is for users who prefer to develop for the open Apache Axis platform. It is for non-production use only. Axis is the third generation of the Apache SOAP implementation. It evolved from Apache SOAP to make the SOAP engine more flexible, configurable, and able to handle both SOAP and the upcoming XML Protocol specification from the W3C open-source effort." />
<meta name="description" content="This run-time environment is for users who prefer to develop for the open Apache Axis platform. It is for non-production use only. Axis is the third generation of the Apache SOAP implementation. It evolved from Apache SOAP to make the SOAP engine more flexible, configurable, and able to handle both SOAP and the upcoming XML Protocol specification from the W3C open-source effort." />
<meta content="Web services, Axis, Web services" name="DC.subject" />
<meta content="Web services, Axis, Web services" name="keywords" />
<meta scheme="URI" name="DC.Relation" content="../../org.eclipse.jst.ws.doc.user/concepts/cws.html" />
<meta scheme="URI" name="DC.Relation" content="../../org.eclipse.jst.ws.doc.user/concepts/cwsinwsa.html" />
<meta scheme="URI" name="DC.Relation" content="../../org.eclipse.jst.ws.doc.user/concepts/cjaxrpc.html" />
<meta scheme="URI" name="DC.Relation" content="../../org.eclipse.jst.ws.doc.user/tasks/toverws.html" />
<meta content="XHTML" name="DC.Format" />
<meta content="axisoverview" name="DC.Identifier" />
<meta content="en-us" name="DC.Language" />
<link href="../../org.eclipse.wst.doc.user/common.css" type="text/css" rel="stylesheet" />
<title>Creating Web services with the Apache Axis run-time environment</title>
</head>
<body id="axisoverview"><a name="axisoverview"><!-- --></a>


<h1 class="topictitle1">Creating Web services with the Apache Axis run-time environment</h1>



<div><p>This run-time environment is for users who prefer to develop for
the open Apache Axis platform. It is for non-production use only. Axis is
the third generation of the Apache SOAP implementation. It evolved from Apache
SOAP to make the SOAP engine more flexible, configurable, and able to handle
both SOAP and the upcoming XML Protocol specification from the W3C open-source
effort.</p>

<div class="section"><h4 class="sectiontitle">Overview</h4><p>Axis is based on JSR 101 Java™ APIs
for XML based RPC (also known as JAX-RPC).  JSR 101 provides a single
interface to any XML-based RPC mechanism, including SOAP.</p>
<p>Web services
application server uses Axis within a servlet to process the incoming message,
extract information from the message headers, and payloads, as well as conforming
to the particular RPC semantics. </p>
<p>The level of Axis currently supported
is 1.0. For more information on Axis, refer to  <a href="http://xml.apache.org/axis" target="_blank">http://xml.apache.org/axis</a>. The User's Guide available
on this site provides more in-depth information about using Web services with
Apache Axis. The Reading Guide lists several documents to further your understanding
of Axis.</p>
<div class="note"><span class="notetitle">Note:</span> The support for Axis is limited to validation that the application
is invoking the Axis emitters correctly. Support for other Axis issues should
be directed to <a href="http://ws.apache.org/axis" target="_blank">http://ws.apache.org/axis</a></div>
</div>

</div>

<div>
<div class="linklist"><strong>Related Concepts</strong><br />

<div><a href="../../org.eclipse.jst.ws.doc.user/concepts/cws.html">Web services</a></div>
<div><a href="../../org.eclipse.jst.ws.doc.user/concepts/cwsinwsa.html">Tools for Web services development</a></div>
<div><a href="../../org.eclipse.jst.ws.doc.user/concepts/cjaxrpc.html">JAX-RPC</a></div></div>

<div class="linklist"><strong>Related Tasks</strong><br />

<div><a href="../../org.eclipse.jst.ws.doc.user/tasks/toverws.html"> Developing Web services</a></div></div>
</div>

</body>
</html>