Subversion Repositories XServices

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

<html><head><META http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>User Guide</title><meta content="DocBook XSL-NS Stylesheets V1.76.1" name="generator"><meta name="description" content="Abstract In complex IT environments it is necessary to integrate different information systems with each other, exchange data between tools and automate actions and function calls depending on events arising from user interaction. To meet the requirements of integration building usually means to implement APIs and to create tool-to-tool bridges. Web Services can help to clean up bridges into interfaces as well as to abstract functions from their underlying platform and implementation. These are the major goals of the loosely coupled integration strategy which is in turn one essential idea of a service-oriented architecture (SOA). provide a low level set of functions and web services. These can be orchestrated into services and used in business processes which make up the execution part of a SOA environment. is an add-on to XBridgeNG 2.0. It runs standalone or in combination with XBridgeNG. Pure XBridgeNG has two components: XML Schema for item based data types (e.g. tickets from a bug tracker system or a database record) Set of Apache Ant tasks to function as a bridge between the XBridgeNG XML format at legacy 3rd party software (e.g. HP Quality Center, Serena TeamTrack, ...) The add Web Services (SOAP) wrapper around Apache Ant tasks (since XBridgeNG 2.0) The current focus is on file-based operations. do not contain an integration server or a process execution engine."></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="book"> title="User Guide"><div class="titlepage"><div><div><h1 class="title"><a name="N2000B"></a>User Guide</h1></div><div><div class="author">"#A020F0"><h3 class="author"><span class="firstname">Brian</span> <span class="surname">Rosenberger</span></h3><code class="email">&lt;<a class="email" href="mailto:bru@brutex.de">bru@brutex.de</a>&gt;</code></div></div><div><p class="copyright">Copyright &copy; 2010 </p></div><div><div class="legalnotice" title="Legal Notice"><a name="N2002F"&gt;</a>
                        <p>
                                The copyright holders make no representation about the
                                suitability of
                                this document for any purpose. It is provided
                                <span class="quote">&ldquo;<span class="quote">as is</span>&rdquo;</span>
                                without expressed or implied warranty.
                        </p>
                </div></div><div><div class="legalnotice" title="Legal Notice"><a name="N20038"></a>
                        <p>Apache Tomcat and Apache Ant are trademarks of the Apache
                                Software Foundation.</p>
                </div></div><div><p class="pubdate">1997</p></div><div><div class="abstract" title="Abstract"><p class="title"><b>Abstract</b></p>
                        
                        <p>In complex IT environments it is necessary to integrate
                                different information systems with each other, exchange data
                                between
                                tools and automate actions and function calls depending
                                on events
                                arising from user interaction. To meet the requirements
                                of
                                integration building usually means to implement APIs and to
                                create
                                tool-to-tool bridges. Web Services can help to clean up
                                bridges into
                                interfaces as well as to abstract functions from
                                their underlying
                                platform and implementation.</p>
                        <p>These are the major goals of the loosely coupled
                                integration
                                strategy which is in turn one essential idea of a
                                service-oriented
                                architecture (SOA).</p>
                        <p>provide a low level set of functions and web services.
                                These can
                                be orchestrated into services and used in business
                                processes which
                                make up the execution part of a SOA
                                environment.</p>
                        <p>is an add-on to XBridgeNG 2.0. It runs standalone or in
                                combination with XBridgeNG. Pure XBridgeNG has two
                                components:</p>
                        <p>
                                </p><div class="itemizedlist"><ul class="itemizedlist" type="disc"><li class="listitem">
                                                <p>XML Schema for item based data types (e.g. tickets
                                                        from a bug
                                                        tracker system or a database record)</p>
                                        </li><li class="listitem">
                                                <p>Set of Apache Ant tasks to function as a bridge
                                                        between the
                                                        XBridgeNG XML format at legacy 3rd party
                                                        software (e.g. HP Quality
                                                        Center, Serena TeamTrack,
                                                        ...)</p>
                                        </li><li class="listitem">
                                                <p>The add Web Services (SOAP) wrapper around Apache Ant
                                                        tasks
                                                        (since XBridgeNG 2.0)</p>
                                        </li></ul></div><p>
                        </p>
                        <p>The current focus is on file-based operations. do not
                                contain an
                                integration server or a process execution
                                engine.</p>
                </div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="#N2006C">1. Getting started</a>></span></dt><dd><dl><dt><span class="sect1"><a href="#N20076">Prerequisites</a></span></dt><dt><span class="sect1"><a href="#N20085">Installation</a></span></dt><dd><dl><dt><span class="sect2"><a href="#N20090">Securing with Basic Authentication</a></span></dt><dt><span class="sect2"><a href="#N2009F"ONT>>Limit access to</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#N200B8">2. Available Services</a></span></dt><dd><dl><dt>><span class="section"><a href="#N200C2">ArchiveServices</a></span></dt><dt><span class="section"><a href="#N200CB"></a></span></dt><dd><dl>ONT COLOR="#A020F0"><dt><span class="section"><a href="#N200CD">ExecuteServices</a></span></dt></dl></dd></dl></dd><dt><span class="chapter"><a href="#N20139">3. XML Types</a></span></dt><dd><dl><dt><span class="section"><a href="#N20143">AntProperty type</a></span></dt></dl></dd></dl></div><div class="list-of-tables">><p><b>List of Tables</b></p><dl><dt>2.1. <a href="#N200E4">runCommand input parameters</a></dt></dl></div>
        
        
        <div class="chapter" title="Chapter&nbsp;1.&nbsp;Getting started"><div class="titlepage"><div><div><h2 class="title"><a name="N2006C"></a>Chapter&nbsp;1.&nbsp;Getting started</h2>COLOR="#A020F0"></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="sect1"><a href="#N20076">Prerequisites</a></span></dt>"#A020F0"><dt><span class="sect1"><a href="#N20085">Installation</a></span></dt><dd><dl><dt><span class="sect2"><a href="#N20090">Securing with Basic Authentication</a></span>></dt><dt><span class="sect2"><a href="#N2009F">Limit access to</a></span></dt></dl></dd></dl></div>
                
                
                <p>This chapter describes the installation.</p>
                <div class="sect1" title="Prerequisites"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="N20076"></a>Prerequisites</h2></div>T></div></div>
                        
                        <p>tbd.</p>
                        <p>Sun Java SE 1.6.0</p>
                        <p>Apache Tomcat 6</p>
                </div>
                <div class="sect1" title="Installation"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="N20085"></a>Installation</h2></div></div></div>
                        
                        <p>tbd.</p>
                        <p>In short: Deploy .WAR file to Apache Tomcat</p>
                        <div class="sect2" title="Securing with Basic Authentication"><div class="titlepage"><div><div><h3 class="title"><a name="N20090"></a>Securing with Basic Authentication</h3></div></div>ONT COLOR="#A020F0"></div>
                                
                                <p>There is a quick guide explaining Basic Authentication
                                        for
                                        Tomcat here:</p>
                                <p>
                                        <a class="ulink" href="http://oreilly.com/pub/a/java/archive/tomcat-tips.html?page=1" target="_top">http://oreilly.com/pub/a/java/archive/tomcat-tips.html?page=1</a>
                                </p>
                        </div>
                        <div class="sect2" title="Limit access to"><div class="titlepage"><div><div><h3 class="title"><a name="N2009F"></a>Limit access to</h3></div></div></div>>
                                
                                <p>Sometimes you'll only want to restrict access to to
                                        only
                                        specified host names or IP addresses. This way, only
                                        clients at
                                        those specified addresses can use the web services.
                                        Tomcat provides
                                        two configuration values for that:
                                        RemoteHostValve and
                                        RemoteAddrValve.</p>
                                <p>These Valves allow you to filter requests by host name or
                                        by IP
                                        address, and to allow or deny hosts that match. The
                                        example below
                                        restricts access to the ArchiveService from any
                                        machine that is not
                                        the local host.</p>
                                <pre class="programlisting">&lt;Context
                                        path="/XService/ArchiveService" ...&gt; &lt;Valve
                                        className="org.apache.catalina.valves.RemoteAddrValve"
                                        allow="127.0.0.1" deny=""/&gt; &lt;/Context&gt;</pre>
                                <p>If no allow pattern is given, then patterns that match
                                        the deny
                                        attribute patterns will be rejected, and all others
                                        will be allowed.
                                        Similarly, if no deny pattern is given,
                                        patterns that match the
                                        allow attribute will be allowed, and
                                        all others will be denied.
                                </p>
                                <p>The &lt;context&gt; element must be placed into the
                                        server.xml
                                        file (into &lt;engine&gt;&lt;host&gt;).</p>
                        </div>
                </div>
        </div>
        <div class="chapter" title="Chapter&nbsp;2.&nbsp;Available Services"><div class="titlepage"><div><div><h2 class="title"><a name="N200B8"></a>Chapter&nbsp;2.&nbsp;Available Services</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#N200C2">ArchiveServices</a></span></dt>ONT COLOR="#A020F0"><dt><span class="section"><a href="#N200CB"></a></span></dt><dd><dl><dt><span class="section"><a href="#N200CD">ExecuteServices</a></span></dt></dl></dd></dl></div>
                
                
                <p>List of available web services and their operations.</p>
                <div class="section" title="ArchiveServices"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="N200C2"></a>ArchiveServices</h2></div>;</div></div>
                        
                        <p>The ArchiveService bundles file packing operations. Its
                                WSDL is
                                located at
                                http://server:port/XServices/ArchiveService?wsdl</p>
                </div>
                <div class="section"><div class="titlepage"></div>
                <div class="section" title="ExecuteServices"><div class="titlepage"><div><div><h3 class="title"><a name="N200CD"></a>ExecuteServices</h3></div></div></div>T>
        
        <p>The ExecuteService bundles local and remote command
                execution
                operations. Its WSDL is located at
                http://server:port/XServices/ExecuteService?wsdl</p>
        <div class="section" title="runCommand"><div class="titlepage"><div><div><h4 class="title"><a name="N200D6"></a>runCommand</h4></div></div></div>
                
                <p>Run an executable with arguments on the server providing
                        the
                        web
                        service. The command is run within the environment and
                        under the
                        user
                        privileges of the user who is running the Tomcat
                        Server.</p>
                <div class="section"><div class="titlepage"><div><div><h5 class="title"><a name="N200DE"></a></h5></div></div></div>
                        
                        <p></p>
                        <div class="table"><a name="N200E4"></a><p class="title"><b>Table&nbsp;2.1.&nbsp;runCommand input parameters</b></p><div class="table-contents">
                                
                                <table summary="runCommand input parameters" border="1"><colgroup><col class="parameter"><col class="type"><col class="required"><col class="description"></colgroup><thead><tr><th>parameter</th><th>type</th><th>required</th><th>description</th></tr></thead><tbody><tr><td>executable</td><td>String</td><td>Yes</td><td>Command to be run. The command may be
                                                                specified with full
                                                                path using forward slash
                                                                "/" as path separator.
                                                                        </td></tr><tr><td>argline</td><td>String</td><td>No</td><td>Any command line arguments</td></tr></tbody></table>
                        </div></div><br class="table-break">
                        <p></p>
                </div>
        </div>
</div>
                        </div>
        </div>

        <div class="chapter" title="Chapter&nbsp;3.&nbsp;XML Types"><div class="titlepage"><div><div><h2 class="title"><a name="N20139"></a>Chapter&nbsp;3.&nbsp;XML Types</h2></div></div></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="section"><a href="#N20143">AntProperty type</a></span></dt></dl></div>
                
                
                <p>This chapter bundles the documentation for common xml types
                        used
                        by XServices web service.</p>
                <div class="section" title="AntProperty type"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="N20143"></a>AntProperty type</h2></div&gt;</div></div>
                        
                        <p>The AntProperty type defines a list of key/value pairs.</p>
                        <p>
                                The defining Java class is
                                <a class="ulink" href="javadoc/net/brutex/xservices/types/AntProperty.html" target="_top">
                                        <code class="classname">net.brutex.xservices.types.AntProperty</code>
                                </a>
                                .
                        </p>
                        
                        <pre class="programlisting">
&lt;xs:complexType name="antProperty"&gt;
   &lt;xs:sequence&gt;
      &lt;xs:element name="name" type="xs:string"/&gt;
      &lt;xs:element name="value" type="xs:string"/&gt;
   &lt;/xs:sequence&gt;
&lt;/xs:complexType&gt;
                        </pre>
                        
                        <pre class="programlisting">
&lt;AntProperty&gt;
    &lt;name&gt;key2&lt;/name&gt;
    &lt;value&gt;value2&lt;/value&gt;
&lt;/AntProperty&gt;
                        </pre>
                </div>
        </div>
</div></body></html>

Generated by GNU Enscript 1.6.5.90.