<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">










<html>
  <head>
    <title>Apache Rampart - Continuous Integration</title>
    <style type="text/css" media="all">
      @import url("./css/maven-base.css");
      @import url("./css/maven-theme.css");
      @import url("./css/site.css");
    </style>
    <link rel="stylesheet" href="./css/print.css" type="text/css" media="print" />
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
      </head>
  <body class="composite">
    <div id="banner">
                  <a href="images/apache-rampart-logo.jpg" id="bannerLeft">
    
            Apache Rampart
    
            </a>
                        <a href="http://www.apache.org" id="bannerRight">
    
                                            <img src="images/apache-rampart-banner.jpg" alt="" />
    
            </a>
            <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="breadcrumbs">
          
  

  
    
  
  
            <div class="xleft">
        Last Published: 26 Apr 2012
                      </div>
            <div class="xright">      <a href="http://axis.apache.org/axis2/java/core/">Apache Axis2/Java</a>
          
  

  
    
  
  
  </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
    <div id="leftColumn">
      <div id="navcolumn">
           
  

  
    
  
  
                   <h5>Apache Rampart</h5>
        <ul>
              
    <li class="none">
              <a href="index.html">Home</a>
        </li>
              
          
              
      
            
      
              
        <li class="expanded">
              <a href="">Downloads</a>
                <ul>
                  
    <li class="none">
              <a href="download.html">Releases</a>
        </li>
                  
    <li class="none">
              <a href="svn.html">Source Code</a>
        </li>
              </ul>
        </li>
          </ul>
          <h5>Documentation</h5>
        <ul>
              
    <li class="none">
              <a href="quick-start.html">Getting Started</a>
        </li>
              
    <li class="none">
              <a href="samples.html">Samples</a>
        </li>
              
    <li class="none">
              <a href="http://wiki.apache.org/ws/FrontPage/Rampart/FAQ">FAQ</a>
        </li>
              
    <li class="none">
              <a href="rampartconfig-guide.html">Rampart Configuration</a>
        </li>
              
    <li class="none">
              <a href="setting-up-sts.html">STS Configuration</a>
        </li>
              
    <li class="none">
              <a href="developer-guide.html">Developer Guide</a>
        </li>
              
    <li class="none">
              <a href="siteHowTo.html">Build the Site</a>
        </li>
          </ul>
          <h5>Resources</h5>
        <ul>
              
    <li class="none">
              <a href="articles.html">Articles</a>
        </li>
              
    <li class="none">
              <a href="specifications.html">Specifications</a>
        </li>
              
    <li class="none">
              <a href="apidocs/index.html">Online Javadocs</a>
        </li>
          </ul>
          <h5>Project Information</h5>
        <ul>
              
    <li class="none">
              <a href="team-list.html">Project Team</a>
        </li>
              
    <li class="none">
              <a href="http://issues.apache.org/jira/browse/Rampart">Issue Tracking</a>
        </li>
              
    <li class="none">
              <a href="mail-lists.html">Mailing Lists</a>
        </li>
              
    <li class="none">
              <a href="http://svn.apache.org/viewvc/axis/axis2/java/rampart/">Source Code</a>
        </li>
              
    <li class="none">
              <a href="dependencies.html">Dependencies</a>
        </li>
              
    <li class="none">
              <a href="http://www.apache.org/licenses/LICENSE-2.0.html">License</a>
        </li>
          </ul>
                                       <a href="http://maven.apache.org/" title="Built by Maven" id="poweredBy">
            <img alt="Built by Maven" src="./images/logos/maven-feather.png"></img>
          </a>
                       
  

  
    
  
  
        </div>
    </div>
    <div id="bodyColumn">
      <div id="contentBox">
        <a name="Continuous_Integration"></a><div class="section"><h2>Continuous Integration</h2><p>No continuous integration management system is defined. Please check back at a later date.</p></div>
      </div>
    </div>
    <div class="clear">
      <hr/>
    </div>
    <div id="footer">
      <div class="xright">&#169;  
          2005-2012
    
          Apache Software Foundation
          
  

  
    
  
  
  </div>
      <div class="clear">
        <hr/>
      </div>
    </div>
  </body>
</html>
