<html>
<head>
  <meta http-equiv="content-type" content="">
  <title>How To Build Axis Project's Website</title>
  <link href="css/axis-docs.css" rel="stylesheet" type="text/css" media="all">
</head>

<body>
<h1>How to Build the Axis2 Project's Website</h1>

<h2>Installing Maven</h2>

<p>The Axis 2.0 website build system solely depends on <a
href="http://maven.apache.org/">Maven</a>. The build has been specifically
tested to work with Maven version 1.0.1. To install Maven, download the
distributions and follow the instructions in the documentation. Make sure you
don't forget to put MAVEN_HOME/bin directory in the path.</p>

<h2>Checking out Axis 2.0</h2>

<p>Checkout the <a
href="http://svn.apache.org/repos/asf/webservices/axis2/trunk/java">latest
source</a> using your favorite SVN client. If you are a committer, get a <a
href="https://svn.apache.org/repos/asf/webservices/axis2/trunk/java">commiter
check out.</a></p>

<h2>Building the Site</h2>

<p>Type <i>maven multiproject</i> at the root of your project folder. It will
take some time to build the whole site. The built site will be available
under targets/docs.</p>

<h2>FAQ</h2>
<ol>
  <li>How can I update a document in the site ?<br>
    Get a commiter check out. All the documents are in HTML format under the
    xdocs folder, and you can change only the documents found under this
    folder. Change the relevant file and run maven "html2xdoc:transform". New
    documentation will be available under the target folder.</li>
  <li>How can I add a new document?<br>
    Put the new document in the xdocs folder. Change the navigation.xml found
    under the xdocs folder by adding a link to the newly added document.
    Re-generate the site.<br>
    Please make sure you have not included any of the illegal characters and
    your document should be well formed.</li>
</ol>

</body>
</html>
