<!DOCTYPE html>
<!--
 | Generated by Apache Maven Doxia at 2015-07-03
 | 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="20150703" />
    <meta http-equiv="Content-Language" content="en" />
    <title>Apache Axis &#x2013; 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: 2015-07-03</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><a name="Artifacts_and_dependencies"></a>Artifacts and dependencies</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="16">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>EMF Models</td>
                        
<td style="text-align: center"><a href="model/dependencies.html">axis-model</a></td>
                    </tr>
                    
<tr class="a">
                        
<td>Code Generator</td>
                        
<td style="text-align: center"><a href="codegen/dependencies.html">axis-codegen</a></td>
                    </tr>
                    
<tr class="b">
                        
<td>Command Line Tools</td>
                        
<td style="text-align: center"><a href="tools/dependencies.html">axis-tools</a></td>
                    </tr>
                    
<tr class="a">
                        
<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="b">
                        
<td>SOAP Monitor Client</td>
                        
<td style="text-align: center"><a href="soapmonitor/client/dependencies.html">soapmonitor-client</a></td>
                    </tr>
                    
<tr class="a">
                        
<td>TCP Monitor</td>
                        
<td style="text-align: center"><a href="tcpmon/dependencies.html">tcpmon</a></td>
                    </tr>
                    
<tr class="b">
                        
<td>Compatibility Classes</td>
                        
<td style="text-align: center"><a href="compat/dependencies.html">axis-rt-compat</a></td>
                    </tr>
                    
<tr class="a">
                        
<td>Ant Tasks</td>
                        
<td style="text-align: center" colspan="3"><a href="ant/dependencies.html">axis-ant</a></td>
                    </tr>
                    
<tr class="b">
                        
<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="a">
                        
<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="b">
                        
<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-2015
                        <a href="http://www.apache.org/">The Apache Software Foundation</a>.
            All Rights Reserved.      
                    
      </div>

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