<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ 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.
  -->
<document xmlns="http://maven.apache.org/XDOC/2.0"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xsi:schemaLocation="http://maven.apache.org/XDOC/2.0 http://maven.apache.org/xsd/xdoc-2.0.xsd">
    <properties>
        <title>Service Archive Generator Wizard Guide for Eclipse Plug-in</title>
    </properties>
    <body>
        <h1>Service Archive Generator Wizard Guide for Eclipse Plug-in</h1>
        <p>This document will guide you through the installation and usage
        of the archive generator Eclipse plug-in.</p>
        <p><a href="../../download.html">[Download Plugin Tool]</a></p>
        <macro name="toc"/>
        <section name="Introduction">
            <p>As part of the Axis2 tool set, the service archive generator is
            an important tool that allows the generation of service archives
            ("aar" file or a "jar" files) that can be deployed as a web
            services to the Axis2.</p>
        </section>
        <section name="Installation">
            <p>
                Installation instructions for the plugin can be found
                <a href="plugin-installation.html">here</a>.
            </p>
        </section>
        <section name="Operation">
            <p>If the plug-in is properly installed you should see a new wizard
            under the "New" section. (Use the File -&gt; New -&gt; Other or
            Ctrl + N )</p>
            <p align="center"><img alt="ServiceWizardSelection" src=
            "images/ServiceWizardSelection.jpg" /></p>
            <p>Selecting the wizard and pressing the "Next" button will start
            the service generator wizard. Following is the first page of the
            wizard.</p>
            <p><strong>Page 1:</strong></p>
            <p align="center"><img alt="ServicePage1" src=
            "images/ServicePage1.jpg" /></p>
            <p>Once the class file folder(which should be a folder in the
            file system) is browsed and selected, the "Next" button will be
            enabled and you can move to the next page. Note that you have the
            option of either including all the files or the class files only of
            the folder on page 1.</p>
            <p><strong>Page 2:</strong></p>
            <p>Page 2 of the wizard as seen below requires you to locate/browse
            the WSDL file. If you do not wish to add a WSDL file to the service
            archive, select skip WSDL, else you can select the location of the
            WSDL file by selecting the select WSDL option.</p>
            <p align="center"><img alt="service_page2" src=
            "images/service_page2.jpg" /></p>
            <p><strong>Page 3:</strong></p>
            <p>Select the services.xml file on this wizard page by browsing or
            select the option of generating service xml automatically, after
            which you can click "Next" button to go to the next page. Notice
            how the browsing option disables when the "Generate service xml
            automatically" check box is ticked.</p>
            <p align="center"><img alt="service_page3" src=
            "images/service_page3.jpg" /></p>
            <!--
            <p>Note that The service XML file can be generated if needed. To proceed
            to the service generation page, check the "generate automatically" checkbox. </p>
            <p align="center"><img border="0" src="service_page3_hl.jpg"></p>
            
            <p>If the automatic mode is not selected then the wizard
            will directly jump to the library selection page. However if the automatic mode is selected the wizard will show the
            following page</p>
            <p align="center"><img border="0" src="service_page4_plain.JPG" width="500" height="500"></p>
            <p>This is a somewhat complicated page. The service name textbox should include the name of the service that you
            wish to give this service. 
            For the implementation class type in the fully qualified class name and hit the load button to view the operations</p>
            <p align="center"><img border="0" src="service_page4_load.JPG" ></p>
            <p> The loaded operations should be displayed in a table. Once this is displayed you can filter the methods by selecting/deselecting the methods using the checkbox at each row.</p>
            <p align="center"><img border="0" src="service_page4_table.JPG" width="500" height="500"></p>
            <p>Further filtering can be achieved by using the "search declared methods" only checkbox</p>
            <p align="center"><img border="0" src="service_page4_search_declared.JPG" ></p>
            <p>Once the method selection is complete the wizard has enough information to generate a basic services.xml file. If further customization is required, there's no choice but to manually edit it!</p>
            
            -->
            <p><strong>Page 4:</strong></p>
            <!--START-->
            <p>The next step is to add the libraries. The library addition page
            looks like this :</p>
            <p align="center"><img alt="service_page5" src=
            "images/service_page5.jpg" /></p>
            <p>The library name (with full path) can be either typed on the
            text box or browsed for using the "Browse" button.</p>
            <p align="center"><img alt="service_page5_browsed" src=
            "images/service_page5_browsed.jpg" /></p>
            <p>Once there is a library name with full path on the text box, hit
            the "Add" button to add the library to the list. Added libraries
            should be displayed in the "Added libraries" list box. This way you
            can add as many external libraries as you wish. See the screen
            shots below.</p>
            <p align="center"><img alt="service_page5_hl" src=
            "images/service_page5_hl.jpg" /></p>
            <p align="center"><img alt="service_page5_added" src=
            "images/service_page5_added.jpg" /></p>
            <p>If any added library needs to be removed, highlight it or in
            other words, select it from the "Added libraries" list and hit on
            the "Remove" button as shown below. Click on the "Next" button to
            proceed to the last page of the wizard if the user did not select
            to auto generate the services.xml file. If user select to auto
            generate the services.xml file then the services.xml option page
            will be displayed.</p>
            <p align="center"><img alt="service_page5_remove" src=
            "images/service_page5_remove.jpg" /></p>
            <p><strong>Page 5:</strong></p>
            <p>This page only appears if the user select to generate the
            services.xml at page 3 of the wizard. If the user have selected a
            services.xml then the user will be directed to the last page of the
            wizard.</p>
            <p>After entering the correct service name and valid fully
            qualified class name, try to load the existing methods of that
            class by clicking the load button.</p>
            <p align="center"><img alt="service_page4_load" src=
            "images/service_page4_load.jpg" /></p>
            <p>If successfully loaded the user will be presented with a table
            at the bottom of the page with the details of the loaded class. By
            checking and unchecking the user can select the necessary methods
            to include in the services.xml</p>
            <p align="center"><img alt="service_page4_table" src=
            "images/service_page4_table.jpg" /></p>
            <p>By clicking on the search declared method only check box, the
            user can remove the inherited methods from the class. Click on the
            "Next" button to proceed to the last page of the wizard</p>
            <p align="center"><img alt="service_page4_search_declared" src=
            "images/service_page4_search_declared.jpg" /></p>
            <p><strong>Page 6:</strong></p>
            <p>The last page of the wizard asks for the output file location
            and the output archive file name. To be able to finish the wizard,
            user must enter valid output file location and output file
            name.</p>
            <p align="center"><img alt="service_page6" src=
            "images/service_page6.jpg" /></p>
            <p>Once all the parameters are filled, hit the "Finish" button to
            complete the wizard and generate the service archive.</p>
            <p align="center"><img alt="success_msg" src=
            "images/success_msg.jpg" /></p>
            <p>If you see the above message, then you've successfully generated
            the service archive! This service archive can be hot deployed
            (deployed at run time) to the axis2</p>
        </section>
        <section name="Appendix">
            <ul>
            <li>Eclipse reference - <a href="http://www.eclipse.org/">http://www.eclipse.org/</a></li>
            <li>Custom Ant Tasks - <a href=
            "http://ant.apache.org/manual/develop.html">http://ant.apache.org/manual/develop.html</a></li>
            </ul>
        </section>
    </body>
</document>
