<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia at May 28, 2013
 | Rendered using Apache Maven Fluido Skin 1.3.0
-->
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta name="Date-Revision-yyyymmdd" content="20130528" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Apache Axis - 
        Artifacts and dependencies</title>
    <link rel="stylesheet" href="./css/apache-maven-fluido-1.3.0.min.css" />
    <link rel="stylesheet" href="./css/site.css" />
    <link rel="stylesheet" href="./css/print.css" media="print" />

      
    <script type="text/javascript" src="./js/apache-maven-fluido-1.3.0.min.js"></script>

    
            </head>
        <body class="topBarDisabled">
          
                
                    
    
        <div class="container-fluid">
          <div id="banner">
        <div class="pull-left">
                                <div id="bannerLeft">
                <h2>Axis</h2>
                </div>
                      </div>
        <div class="pull-right">                                <a href="./" id="bannerRight">
                                                                                                <img src="images/axis-small.png"  alt="Apache Axis"/>
                </a>
      </div>
        <div class="clear"><hr/></div>
      </div>

      <div id="breadcrumbs">
        <ul class="breadcrumb">
                
                    
                              <li class="">
                    <a href="http://www.apache.org/" class="externalLink" title="Apache">
        Apache</a>
        </li>
      <li class="divider ">/</li>
            <li class="">
                    <a href="../../" title="Axis">
        Axis</a>
        </li>
      <li class="divider ">/</li>
            <li class="">
                    <a href="../" title="Axis 1.x">
        Axis 1.x</a>
        </li>
      <li class="divider ">/</li>
            <li class="">
                    <a href="./" title="Java">
        Java</a>
        </li>
      <li class="divider ">/</li>
        <li class="">
        Artifacts and dependencies</li>
        
                
                    
                  <li id="publishDate" class="pull-right">Last Published: 2013-05-28</li> <li class="divider pull-right">|</li>
              <li id="projectVersion" class="pull-right">Version: 1.4.1-SNAPSHOT</li>
            
                            </ul>
      </div>

            
      <div class="row-fluid">
        <div id="leftColumn" class="span3">
          <div class="well sidebar-nav">
                
                    
                <ul class="nav nav-list">
                    <li class="nav-header">About</li>
                                
      <li>
    
                          <a href="index.html" title="Introduction">
          <i class="none"></i>
        Introduction</a>
            </li>
                  
      <li>
    
                          <a href="issue-tracking.html" title="Issue Tracking">
          <i class="none"></i>
        Issue Tracking</a>
            </li>
                  
      <li>
    
                          <a href="mail-lists.html" title="Mailing Lists">
          <i class="none"></i>
        Mailing Lists</a>
            </li>
                  
      <li>
    
                          <a href="source-repository.html" title="Source Repository">
          <i class="none"></i>
        Source Repository</a>
            </li>
                  
      <li class="active">
    
            <a href="#"><i class="none"></i>Artifacts & Dependencies</a>
          </li>
                  
      <li>
    
                          <a href="apiDocs/index.html" title="Javadocs">
          <i class="none"></i>
        Javadocs</a>
            </li>
                              <li class="nav-header">Downloads</li>
                                
      <li>
    
                          <a href="releases.html" title="Releases">
          <i class="none"></i>
        Releases</a>
            </li>
                                                                                                                                            
      <li>
    
                          <a href="changelog.html" title="Changelogs">
          <i class="icon-chevron-right"></i>
        Changelogs</a>
                  </li>
                  
      <li>
    
                          <a href="snapshots.html" title="Snapshots">
          <i class="none"></i>
        Snapshots</a>
            </li>
                              <li class="nav-header">Documentation</li>
                                
      <li>
    
                          <a href="overview.html" title="Overview">
          <i class="none"></i>
        Overview</a>
            </li>
                  
      <li>
    
                          <a href="install.html" title="Installation">
          <i class="none"></i>
        Installation</a>
            </li>
                  
      <li>
    
                          <a href="user-guide.html" title="User's Guide">
          <i class="none"></i>
        User's Guide</a>
            </li>
                  
      <li>
    
                          <a href="developers-guide.html" title="Developer's Guide">
          <i class="none"></i>
        Developer's Guide</a>
            </li>
                  
      <li>
    
                          <a href="integration-guide.html" title="Integration Guide">
          <i class="none"></i>
        Integration Guide</a>
            </li>
                  
      <li>
    
                          <a href="architecture-guide.html" title="Architecture Guide">
          <i class="none"></i>
        Architecture Guide</a>
            </li>
                  
      <li>
    
                          <a href="reference.html" title="Reference Guide">
          <i class="none"></i>
        Reference Guide</a>
            </li>
                  
      <li>
    
                          <a href="reading.html" title="Reading Guide">
          <i class="none"></i>
        Reading Guide</a>
            </li>
                              <li class="nav-header">More...</li>
                                
      <li>
    
                          <a href="ant/ant.html" title="Ant Tasks">
          <i class="none"></i>
        Ant Tasks</a>
            </li>
                  
      <li>
    
                          <a href="maven/index.html" title="Maven Plugins">
          <i class="none"></i>
        Maven Plugins</a>
            </li>
                  
      <li>
    
                          <a href="castor/index.html" title="Castor Databinding">
          <i class="none"></i>
        Castor Databinding</a>
            </li>
                  
      <li>
    
                          <a href="xmlbeans/index.html" title="XmlBeans Databinding">
          <i class="none"></i>
        XmlBeans Databinding</a>
            </li>
                  
      <li>
    
                          <a href="transports/jms/index.html" title="JMS Transport">
          <i class="none"></i>
        JMS Transport</a>
            </li>
                  
      <li>
    
                          <a href="transports/http-hc3/index.html" title="HttpClient 3 Transport">
          <i class="none"></i>
        HttpClient 3 Transport</a>
            </li>
                  
      <li>
    
                          <a href="transports/http-javanet/index.html" title="java.net HTTP Transport">
          <i class="none"></i>
        java.net HTTP Transport</a>
            </li>
                  
      <li>
    
                          <a href="standalone-server/index.html" title="Stand-alone Server">
          <i class="none"></i>
        Stand-alone Server</a>
            </li>
                              <li class="nav-header">Apache</li>
                                
      <li>
    
                          <a href="http://www.apache.org/licenses/LICENSE-2.0.html" class="externalLink" title="License">
          <i class="none"></i>
        License</a>
            </li>
                  
      <li>
    
                          <a href="http://www.apache.org/foundation/sponsorship.html" class="externalLink" title="Sponsorship">
          <i class="none"></i>
        Sponsorship</a>
            </li>
                  
      <li>
    
                          <a href="http://www.apache.org/foundation/thanks.html" class="externalLink" title="Thanks">
          <i class="none"></i>
        Thanks</a>
            </li>
                  
      <li>
    
                          <a href="http://www.apache.org/security/" class="externalLink" title="Security">
          <i class="none"></i>
        Security</a>
            </li>
            </ul>
                
                    
                            <form id="search-form" action="http://www.google.com/search" method="get" >
    
  <input value="ws.apache.org/axis/java" name="sitesearch" type="hidden"/>
  <input class="search-query" name="q" id="query" type="text" />
</form>
<script type="text/javascript" src="http://www.google.com/coop/cse/brand?form=search-form"></script>
          
          <hr class="divider" />

           <div id="poweredBy">
                            <div class="clear"></div>
                            <div class="clear"></div>
                            <div class="clear"></div>
                             <a href="http://maven.apache.org/" title="Built by Maven" class="poweredBy">
        <img class="builtBy" alt="Built by Maven" src="./images/logos/maven-feather.png" />
      </a>
                  </div>
          </div>
        </div>
        
                
        <div id="bodyColumn"  class="span9" >
                                  
            <!-- ~ Licensed to the Apache Software Foundation (ASF) under one
  ~ or more contributor license agreements. See the NOTICE file
  ~ distributed with this work for additional information
  ~ regarding copyright ownership. The ASF licenses this file
  ~ to you under the Apache License, Version 2.0 (the
  ~ "License"); you may not use this file except in compliance
  ~ with the License. You may obtain a copy of the License at
  ~
  ~ http://www.apache.org/licenses/LICENSE-2.0
  ~
  ~ Unless required by applicable law or agreed to in writing,
  ~ software distributed under the License is distributed on an
  ~ "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
  ~ KIND, either express or implied. See the License for the
  ~ specific language governing permissions and limitations
  ~ under the License. -->
    
        <div class="section"><h2>Artifacts and dependencies<a name="Artifacts_and_dependencies"></a></h2>
            <p>
                Axis 1.4 was packaged into four JAR artifacts: <tt>axis-saaj</tt>, <tt>axis-jaxrpc</tt>, <tt>axis</tt> and <tt>axis-ant</tt>
                (respectively named <tt>saaj.jar</tt>, <tt>jaxrpc.jar</tt>, <tt>axis.jar</tt> and <tt>axis-ant.jar</tt> in the
                Axis 1.4 binary distribution).
                In Axis 1.4.1, the <tt>axis</tt> JAR has been split into several smaller artifacts. This reduces the volume of
                code that needs to be added to the dependencies of an Axis based project and makes dependency management easier (provided
                that the project is built using Maven or a tool that can access Maven repositories). It also makes security auditing easier:
                e.g. the <tt>axis</tt> artifact contains the code for the SOAP monitor, which may be considered as a security risk if it is not properly
                disabled in production systems.
            </p>
            <p>
                Nevertheless, Axis 1.4.1 also contains an all-in-one <tt>axis</tt> JAR that contains the same components
                as in Axis 1.4. This can be used as a drop-in replacement for the <tt>axis.jar</tt> from earlier versions,
                although it is strongly recommended to use the new modularized artifacts.
                The table below shows the relationships between the new modularized artifacts and the all-in-one JAR in Axis 1.4.1,
                and the artifacts included in Axis 1.4.
                Note that new components introduced in Axis 1.4.1 are not included in the all-in-one JAR.
            </p>
            <p>
                To see the dependencies of an artifact, click on the artifact's name.
            </p>
            <table border="0" class="table table-bordered" style="width: auto">
                <col width="25%" />
                <col width="25%" />
                <col width="25%" />
                <col width="25%" />
                <thead>
                    <tr class="a">
                        <td rowspan="2"></td>
                        <td style="text-align: center; vertical-align:middle" rowspan="2">Axis 1.4</td>
                        <td style="text-align: center" colspan="2">Axis 1.4.1</td>
                    </tr>
                    <tr class="b">
                        <td style="text-align: center">All-in-one</td>
                        <td style="text-align: center">Modularized</td>
                    </tr>
                </thead>
                <tbody>
                    <tr class="a">
                        <td>SAAJ API</td>
                        <td style="text-align: center" colspan="3"><a href="saaj/dependencies.html">axis-saaj</a></td>
                    </tr>
                    <tr class="b">
                        <td>JAX-RPC API</td>
                        <td style="text-align: center" colspan="3"><a href="jaxrpc/dependencies.html">axis-jaxrpc</a></td>
                    </tr>
                    <tr class="a">
                        <td>Runtime Core</td>
                        <td style="text-align: center; vertical-align:middle" colspan="2" rowspan="15">axis</td>
                        <td style="text-align: center"><a href="core/dependencies.html">axis-rt-core</a></td>
                    </tr>
                    <tr class="b">
                        <td>Castor Databinding</td>
                        <td style="text-align: center"><a href="castor/dependencies.html">axis-rt-databinding-castor</a></td>
                    </tr>
                    <tr class="a">
                        <td>XmlBeans Databinding</td>
                        <td style="text-align: center"><a href="xmlbeans/dependencies.html">axis-rt-databinding-xmlbeans</a></td>
                    </tr>
                    <tr class="b">
                        <td>JWS Support</td>
                        <td style="text-align: center"><a href="jws/dependencies.html">axis-rt-jws</a></td>
                    </tr>
                    <tr class="a">
                        <td>JMX Support</td>
                        <td style="text-align: center"><a href="jmx/dependencies.html">axis-rt-management</a></td>
                    </tr>
                    <tr class="b">
                        <td>BSF Provider</td>
                        <td style="text-align: center"><a href="bsf/dependencies.html">axis-rt-provider-bsf</a></td>
                    </tr>
                    <tr class="a">
                        <td>JMS Transport</td>
                        <td style="text-align: center"><a href="transports/jms/dependencies.html">axis-rt-transport-jms</a></td>
                    </tr>
                    <tr class="b">
                        <td>HttpClient 3 Transport</td>
                        <td style="text-align: center"><a href="transports/http-hc3/dependencies.html">axis-rt-transport-http-hc3</a></td>
                    </tr>
                    <tr class="a">
                        <td>Mail Transport</td>
                        <td style="text-align: center"><a href="transports/mail/dependencies.html">axis-rt-transport-mail</a></td>
                    </tr>
                    <tr class="b">
                        <td>Code Generator</td>
                        <td style="text-align: center"><a href="codegen/dependencies.html">axis-codegen</a></td>
                    </tr>
                    <tr class="a">
                        <td>Command Line Tools</td>
                        <td style="text-align: center"><a href="tools/dependencies.html">axis-tools</a></td>
                    </tr>
                    <tr class="b">
                        <td>SOAP Monitor Handler/Service</td>
                        <td style="text-align: center"><a href="soapmonitor/runtime/dependencies.html">axis-rt-soapmonitor</a></td>
                    </tr>
                    <tr class="a">
                        <td>SOAP Monitor Client</td>
                        <td style="text-align: center"><a href="soapmonitor/client/dependencies.html">soapmonitor-client</a></td>
                    </tr>
                    <tr class="b">
                        <td>TCP Monitor</td>
                        <td style="text-align: center"><a href="tcpmon/dependencies.html">tcpmon</a></td>
                    </tr>
                    <tr class="a">
                        <td>Compatibility Classes</td>
                        <td style="text-align: center"><a href="compat/dependencies.html">axis-rt-compat</a></td>
                    </tr>
                    <tr class="b">
                        <td>Ant Tasks</td>
                        <td style="text-align: center" colspan="3"><a href="ant/dependencies.html">axis-ant</a></td>
                    </tr>
                    <tr class="a">
                        <td>SOAP Monitor Applet</td>
                        <td style="text-align: center">N/A (not included in any JAR)</td>
                        <td style="text-align: center" colspan="2"><a href="soapmonitor/applet/dependencies.html">soapmonitor-applet</a></td>
                    </tr>
                    <tr class="b">
                        <td>Stand-alone Server</td>
                        <td style="text-align: center; vertical-align:middle" rowspan="2">N/A (added in Axis 1.4.1)</td>
                        <td style="text-align: center" colspan="2"><a href="standalone-server/dependencies.html">axis-standalone-server</a></td>
                    </tr>
                    <tr class="a">
                        <td>java.net HTTP Transport</td>
                        <td style="text-align: center" colspan="2"><a href="transports/http-javanet/dependencies.html">axis-rt-transport-http-javanet</a></td>
                    </tr>
                </tbody>
            </table>
            <p>
                All artifacts and dependencies are available from the <a class="externalLink" href="http://search.maven.org/">Maven Central Repository</a>.
            </p>
        </div>
    

                  </div>
            </div>
          </div>

    <hr/>

    <footer>
            <div class="container-fluid">
              <div class="row span12">Copyright &copy;                    2000-2013
                        <a href="http://www.apache.org/">The Apache Software Foundation</a>.
            All Rights Reserved.      
                    
      </div>

        
        
                </div>
    </footer>
  </body>
</html>