Virgo Documentation v2.1.1.RELEASE is not referenced by the website.
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/apa.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/apa.html
deleted file mode 100644
index 5832580..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/apa.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Appendix A. Further Resources</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="prev" href="ch07s07.html" title="7.7 Deploying the application"><link rel="next" href="apas02.html" title="A.2 Documentation"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix A. Further Resources</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s07.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="apas02.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="further.resources"></a>Appendix A. Further Resources</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="further.resources.projects"></a>A.1 Projects</h2></div></div></div><div class="orderedlist"><ol type="a"><li><p>Virgo
- (<a class="ulink" href="http://www.eclipse.org/virgo" target="_top">http://www.eclipse.org/virgo</a>) — homepage for Virgo.</p></li><li><p>SpringSource.org
- (<a class="ulink" href="http://www.springsource.org" target="_top">http://www.springsource.org</a>) — homepage for Spring Framework.</p></li><li><p>OSGi
- (<a class="ulink" href="http://www.osgi.org" target="_top">http://www.osgi.org</a>) — homepage for OSGi.</p></li><li><p>H2 Database
- (<a class="ulink" href="http://www.h2database.com" target="_top">http://www.h2database.com</a> — homepage for the H2 database.</p></li><li><p>FreeMarker
- (<a class="ulink" href="http://freemarker.sourceforge.net" target="_top">http://freemarker.sourceforge.net</a>) — homepage for FreeMarker templating
- engine.</p></li><li><p>Commons DBCP
- (<a class="ulink" href="http://commons.apache.org/dbcp" target="_top">http://commons.apache.org/dbcp</a>) — homepage for Commons DBCP.</p></li><li><p>Eclipse IDE
- (<a class="ulink" href="http://www.eclipse.org/eclipse" target="_top">http://www.eclipse.org/eclipse</a>) — homepage for Eclipse IDE.</p></li><li><p>EclipseLink
- (<a class="ulink" href="http://www.eclipse.org/eclipselink" target="_top">http://www.eclipse.org/eclipselink</a>) — homepage for EclipseLink JPA.</p></li></ol></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s07.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="apas02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.7 Deploying the application </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> A.2 Documentation</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/apas02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/apas02.html
deleted file mode 100644
index ea3aef1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/apas02.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>A.2 Documentation</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="apa.html" title="Appendix A. Further Resources"><link rel="prev" href="apa.html" title="Appendix A. Further Resources"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">A.2 Documentation</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apa.html">Prev</a> </td><th width="60%" align="center">Appendix A. Further Resources</th><td width="20%" align="right"> </td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="further.resources.documentation"></a>A.2 Documentation</h2></div></div></div><div class="orderedlist"><ol type="a"><li><p>Virgo Web Server Documentation
- (<a class="ulink" href="http://www.eclipse.org/virgo/documentation" target="_top">http://www.eclipse.org/virgo/documentation</a>) – cover page for all Virgo documentation.
- </p></li><li><p>Spring DM Reference Guide
- (<a class="ulink" href="http://static.springsource.org/osgi/docs/1.2.0/reference/html/" target="_top">http://static.springsource.org/osgi/docs/1.2.0/reference/html/</a>).
- </p></li><li><p>Spring Framework 3.0 documentation
- (<a class="ulink" href="http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/" target="_top">http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/</a>).
- </p></li><li><p>FreeMarker documentation
- (<a class="ulink" href="http://freemarker.sourceforge.net/docs" target="_top">http://freemarker.sourceforge.net/docs</a>).</p></li><li><p>Eclipse IDE documentation
- (<a class="ulink" href="http://www.eclipse.org/documentation" target="_top">http://www.eclipse.org/documentation</a>).</p></li><li><p>EclipseLink documentation wiki
- (<a class="ulink" href="http://wiki.eclipse.org/EclipseLink/UserManual" target="_top">http://wiki.eclipse.org/EclipseLink/UserManual</a>).</p></li><li><p>Maven PAR plugin
- (<a class="ulink" href="http://blog.springsource.com/2009/06/24/maven-par-plugin-100m1/" target="_top">http://blog.springsource.com/2009/06/24/maven-par-plugin-100m1/</a>).</p></li></ol></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="apa.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="apa.html">Up</a></td><td width="40%" align="right"> </td></tr><tr><td width="40%" align="left" valign="top">Appendix A. Further Resources </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> </td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch01.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch01.html
deleted file mode 100644
index b3743ec..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch01.html
+++ /dev/null
@@ -1,202 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>1. Concepts</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="prev" href="pr01.html" title="Preface"><link rel="next" href="ch01s02.html" title="1.2 Spring DM concepts"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">1. Concepts</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="pr01.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch01s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="concepts"></a>1. Concepts</h2></div></div></div><p>
- Virgo Web Server is a Java application server composed of a
- collection of modules which supports applications which are also composed of a
- collection of modules.
- These may be traditional Java web applications packaged as Web ARchive (<code class="literal">.war</code>)
- files as well as other modular applications.
- Modules may be shared between applications and multiple versions of modules
- can co-exist.
-</p><p>This chapter introduces concepts
-necessary for developing Web Server applications.
-These concepts will become clearer as the GreenPages application is explored
-in later chapters.</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="concepts.osgi"></a>1.1 OSGi concepts</h2></div></div></div><p>Modules in Virgo are represented using a standard Java
-module system known as <span class="emphasis"><em>OSGi</em></span>.
-Modules consist of programs and resources organised by Java package together
-with metadata which declares imported and exported packages.
-A module <span class="emphasis"><em>exports</em></span> a package to make the corresponding programs and resources
-available for use by other modules.
-A module <span class="emphasis"><em>imports</em></span> a package to use the corresponding programs and resources of
-another module.</p><p>
- Representing a program as a collection of modules makes it easier for the
- programmer to manage it and modify it and for teams of programmers to divide
- responsibilities between themselves.
- A module is similar to a Java class in this respect. Design principles similar to those for
- organising data and programs into classes can be applied
- to organising applications into modules.
-</p><p>
- An industry consortium known as the
- <span class="emphasis"><em>OSGi Alliance</em></span> (see <a class="xref" href="apa.html#further.resources.projects" title="A.1 Projects">the appendix Projects</a>) develops OSGi
- specifications, reference implementations, and compliance tests.
- Virgo Web Server is built on the Equinox OSGi framework which is also
- the reference implementation for the OSGi framework specification.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e164"></a>Bundles</h3></div></div></div><p>Modules in OSGi are known as <span class="emphasis"><em>bundles</em></span>.
-Each bundle is stored in a file which conforms to the JAR file format and
-can contain Java classes, a manifest (in <code class="literal">META-INF/MANIFEST.MF</code>),
-and further resource files.</p><p>The OSGi framework enables bundles to be installed and run.</p><p>OSGi identifies bundles “<span class="quote">by name</span>” or “<span class="quote">by identifier</span>” (id).</p><p>The <span class="emphasis"><em>symbolic name</em></span> and
-<span class="emphasis"><em>version</em></span> of a bundle is an attribute of the bundle itself and uniquely identifies that bundle (by name) in an OSGi framework.
-A bundle usually declares its <span class="emphasis"><em>symbolic name</em></span> and <span class="emphasis"><em>version</em></span>
-in its manifest (a file called <code class="literal">MANIFEST.MF</code>) like this:
-</p><pre class="programlisting">Bundle-SymbolicName: org.foo.bundle
-Bundle-Version: 1.2.3.BUILD-2009-06-04
-</pre><p>
-</p><p>Additionally, the OSGi framework
-assigns a distinct number, known as a <span class="emphasis"><em>bundle id</em></span>, to each bundle
-as it is installed. Bundles may be referred to “<span class="quote">by identifier</span>” using this number.
-The OSGi framework itself resides in a
-bundle with bundle id <code class="literal">0</code>.</p><p>The
-dependencies between bundles are expressed statically in terms of packages and
-dynamically in terms of services. A package is familiar to Java programmers.
-For example, a Java program may depend on a class <code class="literal">org.foo.X</code>,
-from package <code class="literal">org.foo</code>, and a bundle
-containing that program
-would either need to contain <code class="literal">org.foo.X</code> or depend on the
-package <code class="literal">org.foo</code>.
-Package dependencies are specified in the bundle manifest, for example:
-</p><pre class="programlisting">Import-Package: org.foo
-</pre><p>
-</p><p>A bundle which provides a package for use by other bundles <span class="emphasis"><em>must</em></span>
-export the package in its manifest. For example:
-</p><pre class="programlisting">Export-Package: org.foo
-</pre><p>
-</p><p>The OSGi framework ensures that a given bundle’s package dependencies
-can be <span class="emphasis"><em>satisfied</em></span> before the bundle runs. This process is known as
-<span class="emphasis"><em>resolution</em></span>.</p><p>After a bundle is resolved, its classes and resources are available for
-loading.
-In OSGi, bundles and their packages do not appear on the application classpath.
-Instead, each bundle has a class loader which loads its own classes and loads classes belonging to each of its
-imported packages by deferring to the bundle class loader that exports the package.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e252"></a>Life cycle</h3></div></div></div><p>The OSGi framework manages the <span class="emphasis"><em>life cycle</em></span> of each bundle. A bundle is
-first of all <span class="emphasis"><em>install</em></span>ed and will be in the INSTALLED state.
-If a request is made to <span class="emphasis"><em>start</em></span> the bundle, the OSGi framework <span class="emphasis"><em>resolve</em></span>s the bundle
-and, if resolution was successful, will subsequently move the bundle to the ACTIVE state.
-If a request is made to <span class="emphasis"><em>stop</em></span> the bundle, the OSGi framework will move the
-bundle back to the RESOLVED state. A request may then be made to <span class="emphasis"><em>uninstall</em></span>
-the bundle.</p><p>While the bundle is INSTALLED, ACTIVE or RESOLVED, it may be <span class="emphasis"><em>updated</em></span> to pick up
-some changes. These changes are not detected by bundles which were depending
-on the bundle before it was updated.
-A “<span class="quote">refresh packages</span>” operation may be performed to ripple the
-changes out to those bundles. (See <a class="xref" href="ch01.html#concepts.services" title="Services">Services concepts</a>.)</p><p>The life cycle of a bundle can be summarised by a state transition diagram.
-This diagram shows some more of the intermediate states of a bundle not described in the overview above:
-</p><div class="figure"><a name="d0e287"></a><p class="title"><b>Figure 1.1. Bundle life cycle</b></p><div class="figure-contents"><div class="mediaobject" align="center"><img src="images/concepts/bundle-lifecycle.png" align="middle" alt="Bundle life cycle"></div></div></div><p><br class="figure-break"></p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="concepts.services"></a>Services</h3></div></div></div><p>Bundles may publish Java objects, known as <span class="emphasis"><em>services</em></span>,
-to a registry managed by the OSGi framework. Other bundles running in
-the same OSGi framework can then find and use those services. Services
-are typically instances of some shared Java interface. A bundle which
-provides a service need not then export the package containing the
-<span class="emphasis"><em>implementation</em></span>
-class of the service.
-</p><p>For example, a bundle could export a package containing the interface
-<code class="literal">org.bar.SomeInterface</code>, thus:
-
-</p><pre class="programlisting">Export-Package: org.bar
-</pre><p>
-</p><p>…implement the interface with a class <code class="literal">SomeImpl</code>:
-
-</p><pre class="programlisting">package org.bar.impl;
-
-class SomeImpl implements SomeInterface {
- …
-}
-</pre><p>
-</p><p>…create an instance of <code class="literal">SomeImpl</code> and
-then publish this instance (as an instance of the interface <code class="literal">SomeInterface</code>).
-</p><p>An OSGi framework publishes a number of standard services. For example, the
-<span class="emphasis"><em>Package Admin</em></span> service provides the “<span class="quote">refresh packages</span>” life cycle operation
-mentioned above.</p><p>OSGi provides an <em class="glossterm">API</em> which can be used to publish and find services,
-but it is much simpler to use Spring DM to accomplish this. (See <a class="xref" href="ch01s02.html" title="1.2 Spring DM concepts">Spring DM concepts</a>.)</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e347"></a>Versioning</h3></div></div></div><p>
- OSGi allows different versions of bundles, packages, and several
- other entities, to co-exist in the same framework
- and provides some mechanisms for managing these versions.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e352"></a>Version numbers</h4></div></div></div><p>An OSGi <span class="emphasis"><em>version number</em></span> consists of up to three numeric components,
-or exactly three
-numeric components followed by a string component. These components are
-separated by a period (“<span class="quote"><code class="literal">.</code></span>”) and
-are called the <span class="emphasis"><em>major</em></span>, <span class="emphasis"><em>minor</em></span>, <span class="emphasis"><em>micro</em></span>,
-and <span class="emphasis"><em>qualifier</em></span> components, respectively.
-</p><p>For example, the version <code class="literal">2.4.1.ga</code> has major component <code class="literal">2</code>, minor component
-<code class="literal">4</code>, micro component <code class="literal">1</code>,
-and a qualifier component <code class="literal">ga</code>. (There are restrictions on the characters that can appear in
-a qualifier. For example: letters, digits, underscores and hyphens are allowed; periods and commas are not.)</p><p>Trailing components may be omitted along with their period (<code class="literal">.</code>). So, for example, the version
-numbers <code class="literal">2</code>, <code class="literal">2.0</code>, and <code class="literal">2.0.0</code>
-all denote the same version. This example demonstrates that <code class="literal">0</code> is assumed if a numeric component is omitted,
-and the empty string is assumed for an omitted qualifier.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e410"></a>Version ranges</h4></div></div></div><p>Dependencies on bundles and packages have an associated <span class="emphasis"><em>version range</em></span>
-which is specified using an interval notation: a square bracket
-“<span class="quote"><code class="literal">[</code></span>” or “<span class="quote"><code class="literal">]</code></span>” denotes
-an <span class="emphasis"><em>inclusive</em></span> end of the range and a round bracket
-“<span class="quote"><code class="literal">(</code></span>” or “<span class="quote"><code class="literal">)</code></span>” denotes
-an <span class="emphasis"><em>exclusive</em></span> end of the range. Where one end of the range is to be included and the other excluded, it is permitted to
-pair a round bracket with a square bracket.
-The examples below make this clear.</p><p>If a single version number is used where a version <span class="emphasis"><em>range</em></span> is
-required this does <span class="emphasis"><em>not</em></span> indicate a single version, but the range <span class="emphasis"><em>starting</em></span> from that version and
-including all higher versions.</p><p>There are three common cases:
-
-</p><div class="itemizedlist"><ul type="disc"><li><p>A “<span class="quote">strict</span>” version range, such as <code class="literal">[1.2,1.2]</code>, which
-denotes that version and only that version.</p></li><li><p>A “<span class="quote">half-open</span>” range, such as
-<code class="literal">[1.2,2)</code>, which has an inclusive lower limit
-and an exclusive upper limit, denoting version <code class="literal">1.2.0</code> and any version after this, up
-to, <span class="emphasis"><em>but not including</em></span>, version <code class="literal">2.0.0</code>.
-</p></li><li><p>An “<span class="quote">unbounded</span>” version range, such as <code class="literal">1.2</code>, which
-denotes version <code class="literal">1.2</code> and <span class="emphasis"><em>all</em></span> later versions.</p></li></ul></div><p>
-
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e497"></a>Versioning policies</h4></div></div></div><p>A <span class="emphasis"><em>versioning policy</em></span> is a way of using version numbers to indicate compatible
-and incompatible changes.
-OSGi does not mandate a particular versioning policy.
-Instead, a specific versioning policy may be implemented using version ranges.</p><p>Strict and half-open version ranges are most useful in representing versioning
-policies.
-Unbounded version ranges can lead to problems as they (unrealistically) assume that
-compatibility will be preserved indefinitely.</p><p>For example, a conservative versioning policy might assume that any change, other than
-in the qualifier component of a version, implies an incompatible
-change to the object.
-Such a policy would employ version ranges such as <code class="literal">[1.2.1.beta,1.2.2)</code>
-which accept any version from <code class="literal">1.2.1.beta</code> (inclusive) up to but not including
-<code class="literal">1.2.2</code> (exclusive).
-</p><p>Alternatively, a relaxed versioning policy might assume that only changes in the major component of
-a version denote an incompatible change.
-Such a policy would employ version ranges such as <code class="literal">[1.2,2)</code> to capture this.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e524"></a>Bundle version</h4></div></div></div><p>Each bundle has a version.
-The bundle’s version may be specified in the manifest using a
-<code class="literal">Bundle-Version</code> header:
-
-</p><div class="informalexample"><pre class="programlisting">Bundle-Version: 1.4.3.BUILD-20090302
-</pre></div><p>
-If not specified the bundle version is assumed to be <code class="literal">0</code>.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e540"></a>Package version</h4></div></div></div><p>Each exported package has a version.
-The exported package’s version may be specified on the Export-Package manifest header. For example
-
-</p><div class="informalexample"><pre class="programlisting">Export-Package: org.foo;version="2.9",org.bar;version="1"
-</pre></div><p>
-
-exports two packages: <code class="literal">org.foo</code>, at version <code class="literal">2.9.0</code> and
-<code class="literal">org.bar</code>, at version <code class="literal">1.0.0</code>.
-</p><p>If the version attribute is omitted the version is assumed to be <code class="literal">0</code>.</p><p>Each package <span class="emphasis"><em>import</em></span> has a version <span class="emphasis"><em>range</em></span>.
-The package import version range may be specified on the <code class="literal">Import-Package</code> manifest header.
-If interval notation is used, the version range must be enclosed in double quotes, for example:
-</p><div class="informalexample"><pre class="programlisting">Import-Package: org.foo;version="[2,3)",org.bar;version="[1,1]"</pre></div><p>
-seeks to import a package <code class="literal">org.foo</code> in the range <code class="literal">[2.0.0,3.0.0)</code> and a package
-<code class="literal">org.bar</code> with the (exact) version <code class="literal">1.0.0</code>.
-</p><p>If a version range is not specified on an import, the range <code class="literal">0</code> is assumed, meaning that
-any version of this package would satisfy the import.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e599"></a>Bundle manifest version</h4></div></div></div><p>Bundle manifests have a version which is <code class="literal">1</code> by default,
-indicating OSGi Release 3 semantics.
-Web Server is based on OSGi Release 4 and therefore expects bundle manifests to be
-at version <code class="literal">2</code>, indicating OSGi Release 4 semantics. (See <a class="xref" href="apa.html#further.resources.projects" title="A.1 Projects">the appendix Projects</a>.)
-The bundle manifest’s version should be specified on the Bundle-ManifestVersion manifest header, exactly as follows:
-</p><div class="informalexample"><pre class="programlisting">Bundle-ManifestVersion: 2
-</pre></div><p>
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e617"></a>Manifest version</h4></div></div></div><p>Manifests themselves also have a version which <span class="emphasis"><em>must</em></span> be specified as <code class="literal">1.0</code>.
-This is not an OSGi definition but part of the JAR file specification
-(<a class="ulink" href="http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html" target="_top">http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html</a>).
-
-</p><div class="informalexample"><pre class="programlisting">Manifest-Version: 1.0
-</pre></div><p>
-
-</p></div></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="pr01.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch01s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Preface </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 1.2 Spring DM concepts</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch01s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch01s02.html
deleted file mode 100644
index 926b9fd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch01s02.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>1.2 Spring DM concepts</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch01.html" title="1. Concepts"><link rel="prev" href="ch01.html" title="1. Concepts"><link rel="next" href="ch01s03.html" title="1.3 Grouping bundles in Web Server"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">1.2 Spring DM concepts</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch01.html">Prev</a> </td><th width="60%" align="center">1. Concepts</th><td width="20%" align="right"> <a accesskey="n" href="ch01s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="concepts.springdm"></a>1.2 Spring DM concepts</h2></div></div></div><p>Spring DM is a project which enables <span class="emphasis"><em>services</em></span> to be published and consumed
-using descriptions written in XML.
-Web Server has Spring DM built-in.</p><p>The XML descriptions reside in files with extension <code class="literal">.xml</code> in the
-bundle’s <code class="literal">META-INF/spring</code> sub-directory.</p><p>
- To publish a service, an <code class="literal"><osgi:service></code> tag is used, specifying the
- implementation class of the service and the interface class to be used.
- Spring DM constructs an instance of the implementation class and
- publishes that instance in the OSGi service registry under the interface when the bundle is started.
-</p><p>To consume a service, an <code class="literal"><osgi:reference></code> tag is used and the
-service may be passed into other Spring beans using Spring’s dependency
-injection facilities.</p><p>Spring DM automatically creates proxies for OSGi services so that the actual service
-object may come and go at runtime.
-If a service disappears, any proxies to the service will wait for the service to re-appear.
-This effect is known as <span class="emphasis"><em>damping</em></span>.</p><p>When a bundle is started, Spring DM builds the application contexts
-specified by the XML descriptions, creates proxies for the specified services, and publishes
-the specified services to the OSGi service registry.</p><p>When a bundle is stopped, Spring DM retracts any services it published on behalf of the bundle
-and closes the bundle’s application contexts.
-Web Server turns off damping of a service proxy while the proxy’s application context
-is being closed.</p><p>(Spring DM has been contributed to Eclipse as the <span class="emphasis"><em>Gemini Blueprint</em></span> project.)</p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch01.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch01.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch01s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">1. Concepts </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 1.3 Grouping bundles in Web Server</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch01s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch01s03.html
deleted file mode 100644
index 7a51c94..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch01s03.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>1.3 Grouping bundles in Web Server</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch01.html" title="1. Concepts"><link rel="prev" href="ch01s02.html" title="1.2 Spring DM concepts"><link rel="next" href="ch02.html" title="2. Installation"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">1.3 Grouping bundles in Web Server</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch01s02.html">Prev</a> </td><th width="60%" align="center">1. Concepts</th><td width="20%" align="right"> <a accesskey="n" href="ch02.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="concepts.grouping"></a>1.3 Grouping bundles in Web Server</h2></div></div></div><p>Web Server provides a way of grouping together a collection
-of OSGi bundles which comprise a single application.
-These bundles are placed in a JAR file with extension “<span class="quote"><code class="literal">.par</code></span>”. This is called a PAR file.</p><p>All the bundles in a PAR file are resolved together and so mutual dependencies are permitted.</p><p>At runtime a PAR file provides a <span class="emphasis"><em>scope</em></span> in the sense that bundles
-inside the PAR file may depend on packages and services outside the PAR file,
-but bundles outside the PAR file may not depend on packages and services
-provided by the PAR file.</p><p>Virgo also provides the plan artifact as another way of grouping bundles and other artifacts into an application.
-A <span class="emphasis"><em>plan</em></span> is a file (in XML format) listing a collection of artifacts.
-This Guide makes no further reference to plans.
-See <a class="xref" href="apas02.html" title="A.2 Documentation">Section A.2, “Documentation”</a> for a link to more Virgo documentation.</p><p>PAR files (or individual bundles) are <span class="emphasis"><em>deployed</em></span> into Web Server by dropping them into a “<span class="quote">pickup</span>”
-directory or using the Administration Console web application provided with Web Server.
-During deployment, the bundles in the PAR file are installed into OSGi, resolved together, and then started together.</p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch01s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch01.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">1.2 Spring DM concepts </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2. Installation</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02.html
deleted file mode 100644
index e0aa3dc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2. Installation</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="prev" href="ch01s03.html" title="1.3 Grouping bundles in Web Server"><link rel="next" href="ch02s02.html" title="2.2 Installing Web Server"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2. Installation</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch01s03.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch02s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="installation"></a>2. Installation</h2></div></div></div><p>
-Before developing an application with Web Server, it is essential to install <span class="emphasis"><em>Web Server</em></span>,
-an <span class="emphasis"><em>Integrated Development Environment</em></span> (IDE), and a build system integrated with Eclipse.
-The IDE used here is the
-Eclipse-based <span class="emphasis"><em>SpringSource Tool Suite</em></span> (STS), and
-the build system used here is <span class="emphasis"><em>Apache Maven</em></span>.
-</p><p>STS is supplied as a fully configured Eclipse IDE, with Virgo Web Server and Maven plugins built-in.</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation.prereqs"></a>2.1 Pre-requisites</h2></div></div></div><p>
-Before proceeding, ensure that a Java<span class="trademark"></span>™ Standard Edition Development Kit (JDK)
-for Java 6 or later is installed and that the <code class="literal">JAVA_HOME</code> environment variable
-is set to the root directory of the JDK.
-(<span class="emphasis"><em>A Java Runtime Environment (JRE) alone is not sufficient,
-a development kit is necessary to use the facilities in STS.</em></span>)
-</p><p>
-To verify this, issue the command <code class="literal">"%JAVA_HOME%"\bin\java -version</code> from
-a command prompt on Windows (or <code class="literal">$JAVA_HOME/bin/java -version</code> from a terminal window on UNIX)
-and ensure that the command completes successfully and reports
-a Java version <code class="literal">1.6.</code><span class="emphasis"><em>x</em></span> (denoting Java 6) or greater.
-</p><p>
-Also issue the command <code class="literal">"%JAVA_HOME%"\bin\jar</code> to ensure that there is a means of
-extracting files from zip archives.
-If the <code class="literal">jar</code> command is unavailable, download and install a suitable zip program
-such as <code class="literal">7zip</code>, <code class="literal">gzip</code>, or <code class="literal">WinZip</code>.
-This is most relevant for Windows operating systems where the inbuilt zip extraction utility may
-not handle long pathnames correctly.
-</p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch01s03.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch02s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">1.3 Grouping bundles in Web Server </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2.2 Installing Web Server</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02s02.html
deleted file mode 100644
index 8cb399d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02s02.html
+++ /dev/null
@@ -1,81 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2.2 Installing Web Server</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch02.html" title="2. Installation"><link rel="prev" href="ch02.html" title="2. Installation"><link rel="next" href="ch02s03.html" title="2.3 Installing the SpringSource Tool Suite"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.2 Installing Web Server</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02.html">Prev</a> </td><th width="60%" align="center">2. Installation</th><td width="20%" align="right"> <a accesskey="n" href="ch02s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation.dmserver"></a>2.2 Installing Web Server</h2></div></div></div><p>
-Although the steps are similar, the details of installing the Virgo Web Server
-depend on the operating system.
-</p><p>
-Obtain Web Server from the
-download site (<a class="ulink" href="http://www.eclipse.org/virgo/download" target="_top">http://www.eclipse.org/virgo/download</a>).
-This guide is consistent with version 2.1.0.RELEASE of Web Server.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e780"></a>Installing Web Server on Windows<span class="trademark"></span>™ operating systems</h3></div></div></div><p>
-Unzip the download of Web Server to the root directory of
-a drive (this will avoid possible problems with long pathnames).
-Set an environment variable <code class="literal">%VWS_HOME%</code> to refer to the unzipped folder…
-</p><pre class="programlisting">prompt> cd C:\
-prompt> "%JAVA_HOME%"\bin\jar xf <span class="emphasis"><em>\path\to\</em></span>virgo-web-server-2.1.0.RELEASE.zip
-prompt> set VWS_HOME=C:\virgo-web-server-2.1.0.RELEASE
-</pre><p>
-</p><p>
-To verify the installation, issue the command:
-<code class="literal">"%VWS_HOME%"\bin\startup.bat</code> and ensure a message numbered <code class="literal">UR0001I</code>
-is displayed.
-Many other messages about starting and installing other required artifacts are produced,
-but the <code class="literal">UR0001I</code> message indicates that the user region is ready for use.
-(<span class="emphasis"><em>Timestamps have been removed
-and thread names and other details may vary with different installations and versions.</em></span>)
-</p><pre class="programlisting">system-artifacts <TC0000I> Starting Tomcat.
-system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme http on port 8080.
-system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme https on port 8443.
-system-artifacts <TC0010I> Creating AJP/1.3 connector with scheme http on port 8009.
-system-artifacts <TC0001I> Started Tomcat.
-system-artifacts <DE0004I> Starting bundle 'org.eclipse.virgo.web.core' version '2.1.0.RELEASE'.
-system-artifacts <DE0004I> Starting bundle 'org.eclipse.virgo.web.dm' version '2.1.0.RELEASE'.
-start-signalling-1 <DE0005I> Started bundle 'org.eclipse.virgo.web.dm' version '2.1.0.RELEASE'.
-system-artifacts <DE0005I> Started bundle 'org.eclipse.virgo.web.tomcat' version '2.1.0.RELEASE'.
-start-signalling-1 <DE0005I> Started bundle 'org.eclipse.gemini.web.tomcat' version '1.1.0.RELEASE'.
-start-signalling-2 <DE0005I> Started bundle 'org.eclipse.virgo.web.core' version '2.1.0.RELEASE'.
-start-signalling-2 <DE0005I> Started plan 'org.eclipse.virgo.web' version '2.1.0'.
-Thread-2 <UR0001I> User region ready. </pre><p>
-</p><p>Shut down the server by pressing <code class="literal">Ctrl-C</code>.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e818"></a>Installing Web Server on UNIX<span class="trademark"></span>™ operating systems</h3></div></div></div><p>
- Unzip the download of Web Server to a suitable location on the file system, such
- as the home directory. (If the download was automatically unzipped by the operating
- system, simply move the unzipped directory to the chosen location.)
- Set an environment variable <code class="literal">$VWS_HOME</code> to refer to the unzipped folder…
-</p><pre class="programlisting">prompt$ mkdir <span class="emphasis"><em>/path/to/home/</em></span>springsource
-prompt$ cd <span class="emphasis"><em>/path/to/home/</em></span>springsource
-prompt$ unzip <span class="emphasis"><em>/path/to/</em></span>virgo-web-server-2.1.0.RELEASE.zip
-prompt$ export VWS_HOME=<span class="emphasis"><em>/path/to/home/</em></span>springsource/virgo-web-server-2.1.0.RELEASE
-</pre><p>
-</p><p>
-To verify the installation, use a terminal window to issue the command:
-<code class="literal">$VWS_HOME/bin/startup.sh</code> and ensure a message numbered <code class="literal">UR0001I</code> is displayed.
-Many other messages about starting and installing other required artifacts are produced,
-but the <code class="literal">UR0001I</code> message indicates that the user region is ready for use.
-(<span class="emphasis"><em>Timestamps have been removed
-and thread names and other details may vary with different installations and versions.</em></span>)
-</p><pre class="programlisting">system-artifacts <TC0000I> Starting Tomcat.
-system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme http on port 8080.
-system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme https on port 8443.
-system-artifacts <TC0010I> Creating AJP/1.3 connector with scheme http on port 8009.
-system-artifacts <TC0001I> Started Tomcat.
-system-artifacts <DE0004I> Starting bundle 'org.eclipse.virgo.web.core' version '2.1.0.RELEASE'.
-system-artifacts <DE0004I> Starting bundle 'org.eclipse.virgo.web.dm' version '2.1.0.RELEASE'.
-start-signalling-1 <DE0005I> Started bundle 'org.eclipse.virgo.web.dm' version '2.1.0.RELEASE'.
-system-artifacts <DE0005I> Started bundle 'org.eclipse.virgo.web.tomcat' version '2.1.0.RELEASE'.
-start-signalling-1 <DE0005I> Started bundle 'org.eclipse.gemini.web.tomcat' version '1.1.0.RELEASE'.
-start-signalling-2 <DE0005I> Started bundle 'org.eclipse.virgo.web.core' version '2.1.0.RELEASE'.
-start-signalling-2 <DE0005I> Started plan 'org.eclipse.virgo.web' version '2.1.0'.
-Thread-2 <UR0001I> User region ready. </pre><p>
-</p><p>Shut down the server by pressing <code class="literal">Ctrl-C</code>. </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2. Installation </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2.3 Installing the SpringSource Tool Suite</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02s03.html
deleted file mode 100644
index bcb67e8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02s03.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2.3 Installing the SpringSource Tool Suite</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch02.html" title="2. Installation"><link rel="prev" href="ch02s02.html" title="2.2 Installing Web Server"><link rel="next" href="ch02s04.html" title="2.4 Installing Apache Maven"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.3 Installing the SpringSource Tool Suite</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s02.html">Prev</a> </td><th width="60%" align="center">2. Installation</th><td width="20%" align="right"> <a accesskey="n" href="ch02s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation.sts"></a>2.3 Installing the SpringSource Tool Suite</h2></div></div></div><p>
-The SpringSource Tool Suite (STS) is a development environment based on Eclipse that
-is already configured with
-
-the plugins needed to
-work with Web Server and OSGi.
-Although the steps are similar, the details of installing STS depend on the operating system.
-</p><p>
-Go to the STS download site (<a class="ulink" href="http://www.springsource.com/products/springsource-tool-suite-download" target="_top">http://www.springsource.com/products/springsource-tool-suite-download</a>)
-and download the variant appropriate to the operating system being used.
-This guide is consistent with STS version 2.5.0.RELEASE. Previous versions may not work properly with
-the latest revision of GreenPages, currently 2.3.0.RELEASE.
-</p><p>
-It is possible to use vanilla Eclipse, and add the SpringSource Tools to it. Please refer to the installation instructions in the
-<a class="ulink" href="http://www.eclipse.org/virgo/documentation/" target="_top">Virgo Programmer Guide</a>.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e882"></a>Installing STS on Windows<span class="trademark"></span>™ operating systems</h3></div></div></div><p>
-Unzip the download of STS to the root directory of
-a drive (this will avoid possible problems with long pathnames).
-</p><pre class="programlisting">prompt> cd C:\
-prompt> "%JAVA_HOME%"\bin\jar xf \<span class="emphasis"><em>full…path…to</em></span>\springsource-tool-suite-2.5.0.RELEASE-e3.6.1-win32.zip
-</pre><p>
-</p><p>
-To verify the installation, run the <code class="literal">eclipse.exe</code> (or <code class="literal">sts.exe</code>) executable in the unzipped directory
-and check that STS displays a welcome panel.
-The first time there may be a short delay due to the initial set-up of indexes.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e903"></a>Installing STS on UNIX<span class="trademark"></span>™ operating systems</h4></div></div></div><p>
-Unpack the download of STS to a suitable location on the file system, such
-as <code class="literal">/opt</code> or, if root access is not available, the home directory.
-(If the download was automatically unpacked by the operating
-system, simply move the unpacked directory to the chosen location.)
-</p><p>
-To verify the installation, run the STS executable (<code class="literal">STS.app</code> on Mac OS X)
-in the unpacked directory and check that STS displays a welcome panel.
-The first time there may be a short delay due to the initial set-up of indexes.
-</p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e918"></a>Note about Java versions in STS</h3></div></div></div><p>
- SpringSource Tool Suite runs on Eclipse using Java Version 1.6, and Web Server requires Java Version 1.6.
- The GreenPages application built here also requires Java Version 1.6.
- The default Java compiler settings in STS should not need adjusting, but should be checked.
-</p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2.2 Installing Web Server </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2.4 Installing Apache Maven</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02s04.html
deleted file mode 100644
index 7e98799..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch02s04.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2.4 Installing Apache Maven</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch02.html" title="2. Installation"><link rel="prev" href="ch02s03.html" title="2.3 Installing the SpringSource Tool Suite"><link rel="next" href="ch03.html" title="3. Installing and exploring GreenPages"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.4 Installing Apache Maven</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s03.html">Prev</a> </td><th width="60%" align="center">2. Installation</th><td width="20%" align="right"> <a accesskey="n" href="ch03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation.maven"></a>2.4 Installing Apache Maven</h2></div></div></div><p>
-<span class="emphasis"><em>Apache Maven</em></span>, or Maven for short, is a software project management and comprehension tool
-which uses a central <span class="emphasis"><em>Project Object Model</em></span> (POM) to manage a project’s build, reporting
-and documentation generation. POM files (<code class="literal">pom.xml</code>) are included in the projects for
-GreenPages.
-</p><p>
-To install Maven, visit the Maven website (<a class="ulink" href="http://maven.apache.org" target="_top">http://maven.apache.org</a>)
-and follow the download instructions from there.
-This document has been written and tested with Maven version 2.2.0. The rest of the document
-assumes that Maven
-commands (<code class="literal">mvn …</code>) are available from the command line.
-</p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2.3 Installing the SpringSource Tool Suite </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3. Installing and exploring GreenPages</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03.html
deleted file mode 100644
index 24bc582..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3. Installing and exploring GreenPages</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="prev" href="ch02s04.html" title="2.4 Installing Apache Maven"><link rel="next" href="ch03s02.html" title="3.2 Obtaining GreenPages"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3. Installing and exploring GreenPages</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s04.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch03s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="installing.greenpages"></a>3. Installing and exploring GreenPages</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.introduction"></a>3.1 Introduction</h2></div></div></div><p>GreenPages is a simple application that allows users to search an online email address directory. Each listing
- in the directory details the relevant email addresses and the name of the owner. GreenPages has only three screens:
- the search screen, the results screen and the listing detail screen.</p><p>In the search screen, users can enter search criteria to be matched against the listings in the directory.
- The result screen displays any listings that match the criteria entered by the user. The listing detail screen
- shows all the data known about a given listing.</p><p>Despite its simplicity, GreenPages is designed to demonstrate many different Web Server features and to
- act as a template from which other modular applications can be built. In particular, GreenPages demonstrates:
- </p><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>module dependencies with <code class="literal">Import-Package</code>,</p></li><li style="list-style-type: disc"><p>load-time weaving with JPA and AspectJ,</p></li><li style="list-style-type: disc"><p>bundle classpath scanning, and</p></li><li style="list-style-type: disc"><p>service export, lookup and injection.</p></li></ul></div><p>In addition to demonstrating common Web Server features, GreenPages demonstrates integration with:
- </p><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Spring Framework 3.0;</p></li><li style="list-style-type: disc"><p>FreeMarker 2.3;</p></li><li style="list-style-type: disc"><p>EclipseLink 1.0.0;</p></li><li style="list-style-type: disc"><p>H2 1.0.71; and</p></li><li style="list-style-type: disc"><p>Commons DBCP 1.2.2.</p></li></ul></div><p>
- </p><p>The GreenPages application is packaged as a PAR file containing four modules.
- </p><div class="mediaobject" align="center"><table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0" width="461"><tr><td align="center"><img src="images/installing-greenpages/greenpages.png" align="middle" width="461"></td></tr></table></div><p>
- </p><p>
- The <code class="literal">greenpages.db</code> module provides access to an external database and publishes a
- <code class="literal">javax.sql.DataSource</code> service.
- </p><p>
- The <code class="literal">greenpages.app</code> module exports a <code class="literal">greenpages</code> package containing
- <code class="literal">Directory</code> and <code class="literal">Listing</code> interfaces.
- </p><p>
- The <code class="literal">greenpages.jpa</code> module imports the <code class="literal">greenpages</code> package and
- uses the <code class="literal">javax.sql.DataSource</code> service to
- access the external database and publishes its contents as a <code class="literal">greenpages.Directory</code> service.
- </p><p>
- The <code class="literal">greenpages.web</code> module imports the <code class="literal">greenpages</code> package and uses the
- <code class="literal">greenpages.Directory</code> service to respond to web requests.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s04.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch03s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2.4 Installing Apache Maven </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3.2 Obtaining GreenPages</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s02.html
deleted file mode 100644
index 1548f7a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s02.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3.2 Obtaining GreenPages</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch03.html" title="3. Installing and exploring GreenPages"><link rel="prev" href="ch03.html" title="3. Installing and exploring GreenPages"><link rel="next" href="ch03s03.html" title="3.3 Building and installing GreenPages"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.2 Obtaining GreenPages</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03.html">Prev</a> </td><th width="60%" align="center">3. Installing and exploring GreenPages</th><td width="20%" align="right"> <a accesskey="n" href="ch03s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.obtaining"></a>3.2 Obtaining GreenPages</h2></div></div></div><p>This document provides instructions for building the complete GreenPages application and running it in Web Server as well as running tests and executing it from the SpringSource Tool Suite.
- In addition, the application is examined in development stages from SpringSource Tool Suite, stepping through the development process and comparing this to the solution.
- </p><p>To get the completed GreenPages application, including tests and explanatory skeleton parts:
- </p><div class="orderedlist"><ol type="1"><li><p>download the latest ZIP file from </p><pre class="programlisting">http://eclipse.org/virgo/download/</pre></li><li><p>extract all the files from the ZIP file to a convenient directory (preserving the directory structure).</p></li></ol></div><p>
-</p><p>To extract the files on Windows:
-</p><pre class="programlisting">prompt> mkdir c:\springsource\samples
-prompt> cd c:\springsource\samples
-prompt> jar xf c:\path\to\greenpages-2.3.0.RELEASE.zip
-prompt> set GREENPAGES_HOME=c:\springsource\samples\greenpages-2.3.0.RELEASE</pre><p>
-</p><p>To extract the files on Unix systems:
-</p><pre class="programlisting">prompt$ mkdir -p /opt/springsource/samples
-prompt$ cd /opt/springsource/samples
-prompt$ unzip /path/to/greenpages-2.3.0.RELEASE.zip
-prompt$ export GREENPAGES_HOME=/opt/springsource/samples/greenpages-2.3.0.RELEASE
-</pre><p>
-</p><p>The environment variable <code class="literal">GREENPAGES_HOME</code> set here is not used by the projects, but is used as a shorthand
- in the instructions that follow.
-</p><p>The GreenPages zip file contains two main directories called <code class="literal">solution</code> and <code class="literal">start</code>.
- The <code class="literal">solution</code> directory contains the completed application which can be built and tested (as described in the next section).
- The <code class="literal">start</code> directory contains an initial skeleton of the GreenPages application which can be used to generate the full application.
- The examination steps refer to this skeleton by way of illustration.
-</p><p>To follow the examination steps read <a class="xref" href="ch04.html" title="4. The Web Module">Chapter 4, <i>The Web Module</i></a> <span class="emphasis"><em>after</em></span> installing the full application in the following section.
-</p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3. Installing and exploring GreenPages </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3.3 Building and installing GreenPages</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s03.html
deleted file mode 100644
index 4f5ba32..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s03.html
+++ /dev/null
@@ -1,60 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3.3 Building and installing GreenPages</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch03.html" title="3. Installing and exploring GreenPages"><link rel="prev" href="ch03s02.html" title="3.2 Obtaining GreenPages"><link rel="next" href="ch03s04.html" title="3.4 Browsing the GreenPages application"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.3 Building and installing GreenPages</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s02.html">Prev</a> </td><th width="60%" align="center">3. Installing and exploring GreenPages</th><td width="20%" align="right"> <a accesskey="n" href="ch03s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.building"></a>3.3 Building and installing GreenPages</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.building.mvn"></a>Building with Apache Maven</h3></div></div></div><p>GreenPages uses Apache Maven as its primary build system. Each module of the application can be built
- separately and the entire application can built and assembled into a PAR file from a single location.
- To build the application and assemble it into a PAR
- file:
- </p><div class="orderedlist"><ol type="1"><li><p>Make <code class="code">$GREENPAGES_HOME/solution</code> the current directory.</p></li><li><p>Run the command
- <code class="code">mvn package</code>. The first time this is run several files will be downloaded
- from Maven repositories and SpringSource repositories. Subsequent runs will not need to do this.
- </p></li><li><p>Verify that the
- <code class="code">greenpages-2.3.0.RELEASE.par</code> file exists in
- <code class="code">$GREENPAGES_HOME/solution/greenpages/target</code>.
- </p></li></ol></div><p>
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.building.par.provided"></a>Installing dependencies into Web Server</h3></div></div></div><p>
- Unlike traditional Java EE applications, GreenPages does not package all of its dependencies inside its
- deployment unit. Instead, it relies on the mechanisms of OSGi to locate its dependencies at runtime.
- When running an OSGi application on Web Server, these dependencies can be loaded into memory as needed, but first they
- must be made available to Web Server.
- </p><p>The Maven build included with GreenPages uses the <code class="code">dependency:copy-dependencies</code> plugin to gather
- all the artifacts that GreenPages depends on that are not supplied by the Web Server runtime. These dependencies
- can then be installed into the Web Server repository. Dependencies are gathered automatically during the
- <code class="code">package</code> phase. These dependencies can be found in
- <code class="literal">$GREENPAGES_HOME/solution/greenpages/target/par-provided</code>. To install dependencies
- simply copy all the <code class="code">*.jar</code> files from this directory into <code class="literal">$VWS_HOME/repository/usr</code>.
- </p><p>Installing dependencies on Windows:
-</p><pre class="programlisting">prompt> cd %GREENPAGES_HOME%\solution\greenpages
-prompt> copy target\par-provided\* %VWS_HOME%\repository\usr
-</pre><p>
-</p><p>Installing Dependencies on UNIX:
-</p><pre class="programlisting">prompt$ cd $GREENPAGES_HOME/solution/greenpages
-prompt$ cp target/par-provided/* $VWS_HOME/repository/usr
-</pre><p>
-</p><p>
- Notice that Web Server will not necessarily see these dependencies unless its repository indexes are rebuilt.
- Different repositories behave differently in this respect; some are passive (their indexes are built only once upon startup)
- and some are active (they can detect new files or files being removed dynamically).
- The <code class="literal">usr</code> repository is active so there is no
- need to restart Web Server when copying these files.
- The next time Web Server is started the <code class="literal">-clean</code> option will cause Web Server to re-scan the repository directories in any case.
- It is always safe to start Web Server with the <code class="literal">-clean</code> option.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.building.db"></a>Starting and configuring the database</h3></div></div></div><p>GreenPages uses the H2 database to store all its data. Before starting the application, start the database server and populate the database with data.</p><div class="orderedlist"><ol type="1"><li><p>Change to the <code class="code">$GREENPAGES_HOME/db</code> current directory. On Unix:</p><pre class="programlisting">prompt$ cd $GREENPAGES_HOME/db</pre><p>On Windows:</p><pre class="programlisting">prompt> cd %GREENPAGES_HOME%\db</pre></li><li><p>Run the database startup script appropriate to the operating system. For Unix, this is <code class="literal">run.sh</code>, run in the background:</p><pre class="programlisting">prompt$ sh run.sh &</pre><p>Press Return to continue.</p><p>On Windows, run the <code class="literal">run.bat</code> command:</p><pre class="programlisting">prompt> run</pre><p>For both platforms, the command might invoke a browser window offering a connection to the database; close this window.</p></li><li><p>Run the data population script appropriate to the operating system. For Unix, this is <code class="literal">data.sh</code>:</p><pre class="programlisting">prompt$ sh data.sh</pre><p>On Windows, run the <code class="literal">data.bat</code> command:</p><pre class="programlisting">prompt> data</pre></li></ol></div><p>
-Run these commands once to start a database server for H2; the server will continue to run in the background.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.building.par"></a>Installing and starting GreenPages PAR</h3></div></div></div><p>To install the GreenPages PAR into Web Server and start it:
- </p><div class="orderedlist"><ol type="1"><li><p>Copy the GreenPages PAR to the <code class="code">$VWS_HOME/pickup</code> directory. On Unix:</p><pre class="programlisting">prompt$ cd $VWS_HOME
-prompt$ cp $GREENPAGES_HOME/solution/greenpages/target/greenpages-solution-2.3.0.RELEASE.par pickup/</pre><p>On Windows:</p><pre class="programlisting">prompt> cd %VWS_HOME%
-prompt> copy %GREENPAGES_HOME%\solution\greenpages\target\greenpages-solution-2.3.0.RELEASE.par pickup\</pre></li><li><p>Start Web Server with the <code class="literal">-clean</code> option. On Unix:</p><pre class="programlisting">prompt$ $VWS_HOME/bin/startup.sh -clean</pre><p>On Windows:</p><pre class="programlisting">prompt> "%VWS_HOME%"\bin\startup.bat -clean</pre></li><li><p>Verify that GreenPages starts correctly by checking in the Web Server output for the log message:
-</p><pre class="programlisting"><DE0005I> Started par 'greenpages' version '2.3.0.RELEASE'. </pre><p>
-</p></li></ol></div><p>
-</p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3.2 Obtaining GreenPages </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3.4 Browsing the GreenPages application</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s04.html
deleted file mode 100644
index 0f04b5f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s04.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3.4 Browsing the GreenPages application</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch03.html" title="3. Installing and exploring GreenPages"><link rel="prev" href="ch03s03.html" title="3.3 Building and installing GreenPages"><link rel="next" href="ch03s05.html" title="3.5 Running GreenPages from Eclipse"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.4 Browsing the GreenPages application</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s03.html">Prev</a> </td><th width="60%" align="center">3. Installing and exploring GreenPages</th><td width="20%" align="right"> <a accesskey="n" href="ch03s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.browsing"></a>3.4 Browsing the GreenPages application</h2></div></div></div><p>
- Once installed and started, the GreenPages
- application can be accessed with a web browser using the address
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- </p><p>
- From the home page, a search query can be entered into the search box:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/browse-1.png" align="middle"></div><p>
-</p><p>
- After entering a query into the search box, the results page shows all the matches from the
- directory:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/browse-2.png" align="middle"></div><p>
-</p><p>
- Clicking on <span class="emphasis"><em>view</em></span> next to an entry in the search listing displays the full details for that
- listing entry:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/browse-3.png" align="middle"></div><p>
-</p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3.3 Building and installing GreenPages </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3.5 Running GreenPages from Eclipse</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s05.html
deleted file mode 100644
index a092f5a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch03s05.html
+++ /dev/null
@@ -1,105 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3.5 Running GreenPages from Eclipse</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch03.html" title="3. Installing and exploring GreenPages"><link rel="prev" href="ch03s04.html" title="3.4 Browsing the GreenPages application"><link rel="next" href="ch04.html" title="4. The Web Module"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.5 Running GreenPages from Eclipse</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s04.html">Prev</a> </td><th width="60%" align="center">3. Installing and exploring GreenPages</th><td width="20%" align="right"> <a accesskey="n" href="ch04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.tools"></a>3.5 Running GreenPages from Eclipse</h2></div></div></div><p>Using Eclipse and the Web Server tools, it is possible to run applications directly from the IDE.
- As changes are made to the application in the IDE,
- they can be automatically applied to the running application allowing for rapid feedback of changes in function.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.tools.importing"></a>Importing the GreenPages projects into Eclipse</h3></div></div></div><p>
- Before starting the GreenPages application from Eclipse, import the projects:
- </p><div class="orderedlist"><ol type="1"><li><p>Open the Import Wizard using
- <span class="guimenu">File</span> → <span class="guimenuitem">Import</span>.
-</p></li><li><p>From the Import Wizard select
- <span class="guimenu">General</span> → <span class="guimenuitem">Existing Projects into Workspace</span>
-and click <span class="emphasis"><em>Next</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/import-projects2.png" align="middle"></div><p>
-</p></li><li><p>Click <span class="guibutton">Browse…</span> and select <code class="code">$GREENPAGES_HOME/solution</code> as the root directory.</p></li><li><p>In the <span class="emphasis"><em>Import Projects</em></span> window, select all the projects and click <span class="emphasis"><em>Finish</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/import-projects3.png" align="middle"></div><p>
-</p></li><li><p>Validate that the imported projects appear in Package Explorer:
-
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/import-projects4.png" align="middle"></div><p>
-
-There may be compilation errors at this stage.
-</p></li></ol></div><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.tools.configuring"></a>Configuring Web Server target runtime</h3></div></div></div><p>
- Projects for Web Server are associated with a Virgo Web Server runtime environment in Eclipse. This is to allow
- launching and testing from within Eclipse, and also to allow classpath construction in Eclipse to
- mirror the dynamic classpath in the Web Server runtime.
- </p><p>
- Compilation errors in the previous step will be resolved here.
- </p><p>
- To configure a Web Server runtime environment:
- </p><div class="orderedlist"><ol type="1"><li><p>Open <span class="guimenu">Window</span> → <span class="guisubmenu">Show View</span> → <span class="guimenuitem">Other…</span>.</p></li><li><p>In the <span class="emphasis"><em>Show View</em></span> dialog choose
-<span class="guimenu">Server</span> → <span class="guimenuitem">Servers</span> to make the servers view visible:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/servers.png" align="middle"></div><p>
-</p></li><li><p>Right-click in the <span class="emphasis"><em>Servers</em></span> (which may not be empty) view and select
- <span class="guimenu">New</span> → <span class="guimenuitem">Server</span>.
-</p></li><li><p>In the <span class="emphasis"><em>New Server</em></span> dialog, choose
-<span class="guimenu">EclipseRT</span> → <span class="guimenuitem">Virgo Web Server</span>
- and click <span class="emphasis"><em>Next</em></span>.
-</p></li><li><p>Click <span class="guibutton">Browse</span> and select the <code class="code">$VWS_HOME</code> directory. Ensure that a JRE is selected
-supporting Java 1.6 or above.
-Click <span class="guibutton">Finish</span> to complete creation of the server:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/new-server.png" align="middle"></div><p>
-</p></li><li><p>Select all projects (except <span class="emphasis"><em>Servers</em></span>) in <span class="emphasis"><em>Package Explorer</em></span>.
-Right-click on the projects and choose <span class="guimenuitem">Close Project</span>
-and then <span class="guimenuitem">Open Project</span>.
-</p></li></ol></div><p>
-It is possible that there remain spurious build errors from Eclipse (see the <span class="emphasis"><em>Problems</em></span> view), in which case
-a project clean build may clear the problems. Select <span class="guimenu">Project</span> → <span class="guimenuitem">Clean…</span>
-from the main menu, and choose to <span class="emphasis"><em>Clean all projects</em></span>.
-It may be necessary to repeat this on a few projects.
-(This process is sometimes known as the “<span class="quote">Eclipse dance</span>”.)
-</p><p>
-Despite the dance steps outlined, there will remain some <span class="emphasis"><em>Warnings</em></span> like this:
-</p><div class="mediaobject" align="center"><img src="images/installing-greenpages/problem-warning.png" align="middle"></div><p>
-It is safe to ignore these.
-</p><p>
- When STS starts the Web Server it uses a ‘warm start’ by default.
- It is useful to set the <code class="literal">-clean</code> option so that every server start is a clean one.
- This is done by an option on the Web Server Overview window, which is obtained by opening the Web Server entry in the Servers window in STS.
- (Double-click, or right-click and choose Open.)
- The check box is labelled ‘Start server with -clean option’.
- Close the window before proceeding.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.tools.run"></a>Running GreenPages from within Eclipse</h3></div></div></div><p>
- Now that GreenPages is successfully imported into Eclipse, run the project directly from within the IDE.</p><p>If the GreenPages PAR file was copied to the <code class="literal">pickup</code> directory, be sure it is now removed so that it does not conflict with the deployment of the Eclipse project. On Unix:</p><pre class="programlisting">prompt$ cd $VWS_HOME/pickup
-prompt$ rm greenpages-solution-2.3.0.RELEASE.par</pre><p>On Windows:</p><pre class="programlisting">prompt> cd %VWS_HOME%\pickup
-prompt> del greenpages-solution-2.3.0.RELEASE.par</pre><p>Also, to prevent conflicts with the server configured in Eclipse, stop a currently-running Web Server by typing <code class="literal">Control-C</code> in the console window.</p><p>
- To run GreenPages from within Eclipse:
- </p><div class="orderedlist"><ol type="1"><li><p>
- Right click on the Web Server instance in the <span class="emphasis"><em>Servers</em></span> view and select the <span class="guimenu">Add and Remove…</span>
- menu item.
-
-
-
-
-
-
-
-
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/addedtoserver.png" align="middle"></div><p>
- </p></li><li><p>
- Add <span class="emphasis"><em>greenpages-solution</em></span> (which is the containing project or PAR) to the server and finish.
- </p></li><li><p>To start Web Server from within Eclipse right-click on the Web Server node in the Servers window and choose <span class="guimenuitem">Start</span>.
- The <span class="emphasis"><em>Servers</em></span> view should now show the server and the added project:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/installed.png" align="middle"></div><p>
- </p></li><li><p>
- Verify that GreenPages is started correctly by checking for
- <code class="code"><DE0005I> Started par 'greenpages' version '2.3.0.RELEASE'.</code> in the Console window.
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/success.png" align="middle"></div><p>
- </p></li></ol></div><p>
- </p><p>
- (<span class="emphasis"><em>If errors are shown implying that GreenPages failed to be installed, this may be because some dependencies were not
- copied to Web Server, as described in section <a class="xref" href="ch03s03.html#installing.greenpages.building.par.provided" title="Installing dependencies into Web Server">the section called “Installing dependencies into Web Server”</a>. Check this.</em></span>)
- </p><p>Once installed and started GreenPages is again available from a web browser at the address
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3.4 Browsing the GreenPages application </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4. The Web Module</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04.html
deleted file mode 100644
index 41df1ab..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4. The Web Module</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="prev" href="ch03s05.html" title="3.5 Running GreenPages from Eclipse"><link rel="next" href="ch04s02.html" title="4.2 GreenPages set up"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4. The Web Module</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s05.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch04s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="web.module"></a>4. The Web Module</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="web.module.introduction"></a>4.1 Introduction</h2></div></div></div><p>
- In common with most Enterprise Java applications GreenPages uses a web-based interface for user interactions.
- The following steps show how the controller for the application is constructed,
- using a service from the OSGi Service Registry.
- </p><p>
- It is assumed that the instructions in <a class="xref" href="ch02.html" title="2. Installation">Chapter 2, <i>Installation</i></a> have been followed already
- and that the GreenPages
- zip file has been downloaded and unzipped as described in <a class="xref" href="ch03.html" title="3. Installing and exploring GreenPages">Chapter 3, <i>Installing and exploring GreenPages</i></a>.
-
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s05.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch04s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3.5 Running GreenPages from Eclipse </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.2 GreenPages set up</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s02.html
deleted file mode 100644
index 571dbc3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s02.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.2 GreenPages set up</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch04.html" title="4. The Web Module"><link rel="prev" href="ch04.html" title="4. The Web Module"><link rel="next" href="ch04s03.html" title="4.3 The controller"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.2 GreenPages set up</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04.html">Prev</a> </td><th width="60%" align="center">4. The Web Module</th><td width="20%" align="right"> <a accesskey="n" href="ch04s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="setting.up"></a>4.2 GreenPages set up</h2></div></div></div><p>
- Before beginning, configure the development environment to work with the
- application. In the case of GreenPages this means Maven and Eclipse.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="setting.up.eclipse"></a>Setting up Eclipse (STS)</h3></div></div></div><p>
- The following sections are most easily followed in the Java (or Spring) perspective (not, for example, the Java EE
- perspective). If not already in an appropriate perspective, switch in SpringSource Tool Suite using the
- <span class="guimenu">Open Perspective</span> menu:
- </p><div class="mediaobject" align="center"><img src="images/web-module/java-perspective.png" align="middle"></div><p>
- </p><p>
- In this step create a reference to the Web Server instance that the GreenPages application
- integrates with (the instance may already be created if the GreenPages solution has been run from STS).
- </p><p>
- In STS open <span class="guimenu">Preferences</span> → <span class="guimenuitem">Server</span> → <span class="guimenuitem">Runtime Environments</span>. Select <span class="emphasis"><em>Add…</em></span> to create a
- new Web Server runtime environment. In the dialog that opens, select the <span class="emphasis"><em>Virgo Web Server
- (runtime) v2.1</em></span> and check the box to <span class="emphasis"><em>Create a new local server</em></span>.
- When complete, press <span class="emphasis"><em>Next</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/new-server-runtime-environment.png" align="middle"></div><p>
- </p><p>
- In the next dialog, set the <span class="emphasis"><em>Virgo Web Server installation directory</em></span> field to the
- <span class="emphasis"><em>value</em></span> of <code class="literal">$VWS_HOME</code> and
- check that the <span class="emphasis"><em>JRE:</em></span> option is set to Java 1.6 or later.
- <span class="emphasis"><em>This may not be the workbench default.</em></span>
- When complete, press <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/virgo-web-server.png" align="middle"></div><p>
- </p><p>
- After returning to the <span class="emphasis"><em>Preferences</em></span> window, press <span class="emphasis"><em>OK</em></span> to return to
- Eclipse.
- The <span class="emphasis"><em>Servers</em></span> view has opened and now shows an instance of
- <span class="emphasis"><em>Virgo Web Server</em></span> in it.
- </p><div class="mediaobject" align="center"><img src="images/web-module/servers-view.png" align="middle"></div><p>
- There is also a <span class="emphasis"><em>Servers</em></span> project, in which the server is listed.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4. The Web Module </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.3 The controller</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s03.html
deleted file mode 100644
index c641327..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s03.html
+++ /dev/null
@@ -1,91 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.3 The controller</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch04.html" title="4. The Web Module"><link rel="prev" href="ch04s02.html" title="4.2 GreenPages set up"><link rel="next" href="ch04s04.html" title="4.4 Deploying a bundle"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3 The controller</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s02.html">Prev</a> </td><th width="60%" align="center">4. The Web Module</th><td width="20%" align="right"> <a accesskey="n" href="ch04s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="controller"></a>4.3 The controller</h2></div></div></div><p>
- The Spring’s MVC style of web application development is used in which the central type
- is the <code class="literal">Controller</code> class.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="import.greenpages.web"></a>Import the web project</h3></div></div></div><p>
- The GreenPages application is divided into OSGi bundles that are represented as Eclipse
- projects. In this step import the <code class="literal">greenpages.web</code> project.
- </p><p>
- Starting with no projects, import the web project by right-clicking in the <span class="emphasis"><em>Package Explorer</em></span>
- view and selecting the <span class="emphasis"><em>Import…</em></span> menu item.
- In the dialog that opens, choose <span class="guimenuitem">General</span> → <span class="guimenuitem">Existing Projects into Workspace</span> and select <span class="emphasis"><em>Next</em></span>.
- In the following dialog set the <span class="emphasis"><em>root directory</em></span> to the value of
- <code class="literal">$GREENPAGES_HOME/start/greenpages.web</code> and press <span class="emphasis"><em>Finish</em></span>.
- </p><p>
- (Initially this project may have compiler errors;
- this is to be expected particularly if the Maven repository hasn’t yet been created.)
-
-
-
-
-
-
-
-
- When this project is imported go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="controller.controller"></a>The controller class</h3></div></div></div><p>
- In the <code class="literal">src/main/java</code> source folder of the <code class="literal">greenpages.web</code> project
- the package <code class="classname">greenpages.web</code>
- should contain the controller class named
- <code class="classname">GreenPagesController</code>.
- Create this by right-clicking on the <code class="literal">greenpages.web</code> package in the
- <code class="literal">src/main/java</code> source folder and selecting
- <span class="guimenuitem">New</span> → <span class="guimenuitem">Class</span>.
- (If <span class="emphasis"><em>Class</em></span> is not offered on the <span class="emphasis"><em>New</em></span> menu
- the <span class="emphasis"><em>Java</em></span> perspective may not be being used, in which case look for
- the <span class="emphasis"><em>Class</em></span> option under <span class="emphasis"><em>Other…</em></span> in the <span class="emphasis"><em>Java</em></span> section.)
- </p><p>
- Name the new class <code class="classname">GreenPagesController</code> and press <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/new-greenpages-controller.png" align="middle"></div><p>
- </p><p>
- The code should be edited to look like this:
-</p><pre class="programlisting">@Controller
-<span class="hl-keyword">public</span> <span class="hl-keyword">class</span> GreenPagesController {
- …
- @RequestMapping(<span class="hl-string">"/home.htm"</span>)
- <span class="hl-keyword">public</span> <span class="hl-keyword">void</span> home() {
- }
- …
-</pre><p>
- </p><p>
- The annotations <code class="classname">Controller</code> and <code class="classname">RequestMapping</code>
- are from Spring Framework and are imported by adding the lines:
-</p><pre class="programlisting"><span class="hl-keyword">import</span> org.springframework.stereotype.Controller;
-<span class="hl-keyword">import</span> org.springframework.web.bind.annotation.RequestMapping;
-</pre><p>
- </p><p>
- STS will offer (as a <span class="emphasis"><em>Quick Fix</em></span>) to insert imports for these Spring Framework annotations
- the first time they are used.
- (Java 1.6 supports annotations, and the Spring Framework libraries are accessible by
- linking to the correct Web Server runtime environment or generating the correct dependencies for the Maven plug-in.)
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="controller.component.scanning"></a>Enabling component scanning</h3></div></div></div><p>
- Spring will detect the <code class="classname">@Controller</code> annotation and create a bean of controller type,
- <span class="emphasis"><em>provided that</em></span> it scans the classpath for these.
- Spring’s component scanning is enabled by inserting a <code class="literal">context</code> tag
- in one of the Spring bean definition files.
- </p><p>
- Open the <code class="filename">WEB-INF/greenpages-servlet.xml</code> file in the
- <code class="literal">src/main/webapp</code> folder and ensure the following lines are present:
-</p><pre class="programlisting"> <<span class="hl-comment">!-- enable classpath scanning --</span>>
- <<span class="hl-tag">context:component-scan</span> <span class="hl-attribute">base-package</span>=<span class="hl-value">"greenpages.web"</span> />
-</pre><p>
- </p><p>
- Experiment by adding and removing this line, saving the file after each change.
- (<span class="emphasis"><em>Easily done by commenting it—use the
- <span class="emphasis"><em>Toggle Comment</em></span>
- shortcut in STS.</em></span>)
- Look in the <span class="emphasis"><em>Spring Explorer</em></span> view for a bean named <code class="literal">greenPagesController</code>
- dynamically created by the <code class="literal">component-scan</code> tag.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.2 GreenPages set up </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.4 Deploying a bundle</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s04.html
deleted file mode 100644
index da82dd1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s04.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.4 Deploying a bundle</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch04.html" title="4. The Web Module"><link rel="prev" href="ch04s03.html" title="4.3 The controller"><link rel="next" href="ch04s05.html" title="4.5 Creating a PAR"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.4 Deploying a bundle</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s03.html">Prev</a> </td><th width="60%" align="center">4. The Web Module</th><td width="20%" align="right"> <a accesskey="n" href="ch04s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="deploy.bundle"></a>4.4 Deploying a bundle</h2></div></div></div><p>
- During development time, it can be helpful to run an application inside of the deployment container. In the case
- of GreenPages, this means deploying the <code class="literal">greenpages.web</code> bundle to the Virgo Web Server.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deploy.bundle.deploy.and.start"></a>Deploying the <code class="literal">greenpages.web</code> bundle and starting the Web Server</h3></div></div></div><p>
- The Web Server can be used while working in Eclipse.
- In this step the <code class="literal">greenpages.web</code> bundle is deployed and the Web Server instance is started.
- </p><p>
- Drag the <code class="literal">greenpages.web</code> project from the <span class="emphasis"><em>Package Explorer</em></span> and drop it
- on the Web Server instance in the <span class="emphasis"><em>Servers</em></span> view.
- Because <code class="literal">greenpages.web</code> is a web bundle the server will start automatically, and
- a browser window may open.
- Expand the Web Server instance and the bundle <code class="literal">greenpages.web</code> will be listed as a child.
- </p><div class="mediaobject" align="center"><img src="images/web-module/web-bundle-deployed.png" align="middle"></div><p>
- </p><p>
- If deployment is successful the console will contain the message:
- </p><pre class="programlisting"><DE0005I> Started bundle 'greenpages.web' version '2.3.0'</pre><p>
- </p><p>
- Leave the server instance running and go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deploy.bundle.web.module.manifest"></a>Creating web module metadata</h3></div></div></div><p>
- The Web Server has special knowledge of web application bundles. In this step web bundle
- metadata is added to the bundle and a web browser is used to navigate to it.
- </p><p>
- Open a web browser and navigate to
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- If the link is not currently served by any bundle in the Web Server there may be an error displayed:
- </p><div class="mediaobject" align="center"><img src="images/web-module/greenpages-home-fail.png" align="middle"></div><p>
- or else there is a blank page displayed. No pages are served.
- </p><p>
- To fix this issue the <code class="literal">greenpages.web</code> bundle must be declared to be a web bundle and a
- context path defined.
- </p><p>
- Open the <code class="filename">template.mf</code> file (at the top level under the <code class="literal">greenpages.web</code> project)
- and add (and save) the following entry (using the <span class="emphasis"><em>template.mf</em></span> pane of the editor):
-</p><pre class="programlisting">Web-ContextPath: greenpages
-</pre><p>
- Be careful not to insert any blank lines or trailing spaces in this file.
- </p><p>
- Once added, right-click on the <code class="literal">greenpages.web</code> project and select
- <span class="guimenu">Spring Tools</span> → <span class="guimenuitem">Run generation of MANIFEST.MF file</span>.
- This will use a tool called Bundlor (included in STS) to update the OSGi metadata in the
- <code class="filename">MANIFEST.MF</code> file. Once Bundlor has finished running, open the
- <code class="filename">META-INF/MANIFEST.MF</code> file in the <code class="literal">src/main/webapp</code> folder.
- </p><p>It should look something like the following:
-</p><pre class="programlisting">Manifest-Version: 1.0
-Bundle-Name: GreenPages Web
-Import-Library: org.springframework.spring;version="[3.0, 3.1)"
-Import-Bundle: com.springsource.org.apache.taglibs.standard;version="[
- 1.1.2,1.3)"
-Web-ContextPath: greenpages
-Import-Package: org.eclipse.virgo.web.dm;version="[2.0.0, 3.0.0)
- ",freemarker.cache;version="[2.3.15,2.3.15]",javax.servlet.jsp.jstl.c
- ore;version="[1.1.2,1.2.0)",javax.sql,org.apache.commons.dbcp,org.spr
- ingframework.core.io,org.springframework.stereotype,org.springframewo
- rk.web.bind.annotation,org.springframework.web.context,org.springfram
- ework.web.servlet
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: greenpages.web
-Tool: Bundlor 1.0.0.RELEASE
-Bundle-Version: 2.3.0
-</pre><p>
- although the order of the entries may be different.
- </p><p>
- The server (if it is still running) will track these changes and automatically refresh
- (or restart) the <code class="literal">greenpages.web</code> bundle as required.
- Observe the context path for the web bundle being announced
- (it should now be <code class="literal">'/greenpages'</code>
- whereas previously it would have been a default context path
- derived from the bundle name: <code class="literal">'/greenpages.web'</code>).
- </p><p>
- By default, Bundlor generates <code class="literal">Import-Package</code> entries with no version range specified.
- In the absence of a version range, the OSGi default (which denotes <span class="emphasis"><em>any</em></span> version) is used.
- While this is very flexible it is generally a good idea to restrict an import by specifying a narrower range.
- This can be achieved by providing Bundlor with some additional information in the manifest template,
- as in the next step.
- </p><p>
- Add (and save) the following entry to the <code class="filename">template.mf</code> file:
-</p><pre class="programlisting">Import-Template:
- org.springframework.*;version="[3.0.0, 3.1.0)"
-</pre><p>
- (Again, be careful not to leave trailing spaces on lines or insert blank lines in this file, except that there
- must be one trailing space after the colon to indicate that the header continues on the next line.)
- </p><p>
- Re-run the MANIFEST.MF generation as described earlier.
- In the <code class="filename">MANIFEST.MF</code> file the <code class="literal">Import-Package</code> entry
- should now have version ranges on each of the <code class="literal">springframework</code> packages:
-</p><pre class="programlisting">Import-Package: org.eclipse.virgo.web.dm;version="[2.0.0, 3.0.0)
- ",freemarker.cache;version="[2.3.15,2.3.15]",javax.servlet.jsp.jstl.c
- ore;version="[1.1.2,1.2.0)",javax.sql,org.apache.commons.dbcp,org.spr
- ingframework.core.io;version="[3.0.0, 3.1.0)",org.springframework.ste
- reotype;version="[3.0.0, 3.1.0)",org.springframework.web.bind.annotat
- ion;version="[3.0.0, 3.1.0)",org.springframework.web.context;version=
- "[3.0.0, 3.1.0)",org.springframework.web.servlet;version="[3.0.0, 3.1
- .0)"
-</pre><p>
- </p><p>
- Behind the scenes the Web Server Tools have refreshed the deployed bundle as changes were made. Once again
- navigate to
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- This page now displays an entry field.
- </p><div class="mediaobject" align="center"><img src="images/web-module/greenpages-home-success.png" align="middle"></div><p>
- Put any characters into the entry field and press <span class="emphasis"><em>Submit</em></span>.
- This should display a “<span class="quote">404</span>” error page with the description:
-</p><pre class="programlisting">description The requested resource () is not available.</pre><p>
- This is because there is no search page (<code class="literal">search.htm</code>) to process this request yet.
- The next section will address this.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3 The controller </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.5 Creating a PAR</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s05.html
deleted file mode 100644
index 8e519fa..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s05.html
+++ /dev/null
@@ -1,111 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.5 Creating a PAR</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch04.html" title="4. The Web Module"><link rel="prev" href="ch04s04.html" title="4.4 Deploying a bundle"><link rel="next" href="ch04s06.html" title="4.6 Referencing an OSGi Service"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.5 Creating a PAR</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s04.html">Prev</a> </td><th width="60%" align="center">4. The Web Module</th><td width="20%" align="right"> <a accesskey="n" href="ch04s06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="par.project"></a>4.5 Creating a PAR</h2></div></div></div><p>
- At the end of the previous step, the Web Server instance was started
- and the <code class="literal">greenpages.web</code> bundle deployed.
- This bundle shows a static home page but a search value causes an error.
- The error appears because the URL for that search is not serviced by the controller.
- The application logic behind the search request is not in the <code class="literal">greenpages.web</code> project but
- in another project called <code class="literal">greenpages.app</code>.
- This section creates the <code class="literal">greenpages.app</code> project
- and then combines the two projects into a PAR so as to deploy them together as a single unit.
- </p><p>
- While executing these instructions it is not necessary to remove bundles from the Web Server instance,
- nor to stop the instance.
- As changes are made the bundle will be refreshed (or redeployed) and the server instance
- may report errors if the changes are incomplete.
- These may safely be ignored.
- Alternatively, the <code class="literal">greenpages.web</code> bundle can be removed from the Web Server instance,
- or the server can be stopped while these changes are made.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="parent.project.importing"></a>Importing the parent project</h3></div></div></div><p>
- All of the bundles in the GreenPages sample are Maven projects which refer to a ‘parent’ project.
- To allow STS to accommodate references to the parent, import this project first.
- </p><p>
- In the same way that the starting <code class="literal">greenpages.web</code> project was imported
- (see <a class="xref" href="ch04s03.html" title="4.3 The controller">Section 4.3, “The controller”</a>)
- import the <code class="literal">$GREENPAGES_HOME/start/parent</code> project.
- </p><div class="mediaobject" align="center"><img src="images/web-module/import-parent-project.png" align="middle"></div><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="par.project.importing.project"></a>Importing the <code class="literal">greenpages.app</code> project</h3></div></div></div><p>
- In this step, the <code class="literal">greenpages.app</code> project is imported which contains the business
- interfaces (and stub implementations of these interfaces).
- </p><p>
- In the same way that the starting <code class="literal">greenpages.web</code> project was imported
- (see <a class="xref" href="ch04s03.html" title="4.3 The controller">Section 4.3, “The controller”</a>)
- import the <code class="literal">$GREENPAGES_HOME/start/greenpages.app</code> project.
- </p><div class="mediaobject" align="center"><img src="images/web-module/import-greenpages-app.png" align="middle"></div><p>
- </p><p>
- When Eclipse finishes importing the project, go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="par.project.add.implementation"></a>Adding the controller implementation</h3></div></div></div><p>
- The controller implementation will depend on the <code class="interfacename">Directory</code> and
- <code class="interfacename">Listing</code> interfaces found in the <code class="literal">greenpages.app</code> project. In
- this step, the implementation is added.
- </p><p>
- Open the <code class="classname">GreenPagesController</code> class.
- Add the following field and methods to the class:
-</p><pre class="programlisting">@Autowired
-<span class="hl-keyword">private</span> Directory directory;
-
-@RequestMapping(<span class="hl-string">"/search.htm"</span>)
-<span class="hl-keyword">public</span> List<Listing> search(@RequestParam(<span class="hl-string">"query"</span>) String query) {
- <span class="hl-keyword">return</span> <span class="hl-keyword">this</span>.directory.search(query);
-}
-
-@RequestMapping(<span class="hl-string">"/entry.htm"</span>)
-<span class="hl-keyword">public</span> Listing entry(@RequestParam(<span class="hl-string">"id"</span>) <span class="hl-keyword">int</span> id) {
- <span class="hl-keyword">return</span> <span class="hl-keyword">this</span>.directory.findListing(id);
-}
-</pre><p>
- Add the (<span class="emphasis"><em>Quick Fix</em></span>) suggested imports for the annotations <code class="classname">Autowired</code>
- and <code class="classname">RequestParam</code>,
- and choose the import for <code class="classname">List< ></code> from <code class="classname">java.util.List</code>.
- </p><p>
- Eclipse will not be able to suggest import statements for the
- <code class="interfacename">Listing</code> and <code class="interfacename">Directory</code> types. This is because
- the <code class="literal">greenpages.web</code> and <code class="literal">greenpages.app</code> projects are not linked together
- and therefore cannot see each other’s types.
- </p><p>
- Proceed to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="par.project.new.par"></a>Creating a PAR project</h3></div></div></div><p>
- In Web Server, applications consisting of multiple bundles can be packaged as part of a PAR.
- In this step a PAR project
- containing the <code class="literal">greenpages.web</code> and <code class="literal">greenpages.app</code> bundles is
- created and deployed to the server.
- </p><p>
- Right-click in the <span class="emphasis"><em>Package Explorer</em></span> and select <span class="guimenu">New</span> → <span class="guimenuitem">Project…</span>. In the dialog that opens select
- <span class="guimenu">EclipseRT</span> → <span class="guimenuitem">PAR Project</span> and press
- <span class="emphasis"><em>Next</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/web-module/new-par-project.png" align="middle"></div><p>
- </p><p>
- In the New PAR Project dialog, ensure the <span class="emphasis"><em>Use default location</em></span> option is unchecked,
- name the project <code class="literal">greenpages</code>, set the location to
- <code class="filename">$GREENPAGES_HOME/start/greenpages</code> and press <span class="emphasis"><em>Next</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/create-par-project.png" align="middle"></div><p>
- </p><p>
- In the next dialog, some of the PAR properties are pre-populated.
- Change the Application Name to <code class="literal">Greenpages PAR</code> and the Version to
- <code class="literal">2.3.0</code>, then
- ensure that the <span class="emphasis"><em>Target Runtime</em></span>
- is set to <span class="emphasis"><em>Virgo Web Server (Runtime) v2.1</em></span> and press <span class="emphasis"><em>Next</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/par-content.png" align="middle"></div><p>
- </p><p>
- In the next dialog, select the <code class="literal">greenpages.app</code> and <code class="literal">greenpages.web</code>
- bundles so that they are contained in the PAR and press <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/bundle-references.png" align="middle"></div><p>
- The project <code class="literal">greenpages.web</code> still shows errors; these are soon to be fixed.
- </p><p>
- The package explorer view will now show the following:
- </p><div class="mediaobject" align="center"><img src="images/web-module/package-explorer-par.png" align="middle"></div><p>
- </p><p>
- PAR project creation is complete, go to the next section.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.4 Deploying a bundle </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.6 Referencing an OSGi Service</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s06.html
deleted file mode 100644
index 6247eff..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s06.html
+++ /dev/null
@@ -1,146 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.6 Referencing an OSGi Service</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch04.html" title="4. The Web Module"><link rel="prev" href="ch04s05.html" title="4.5 Creating a PAR"><link rel="next" href="ch04s07.html" title="4.7 Publishing an OSGi Service"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.6 Referencing an OSGi Service</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s05.html">Prev</a> </td><th width="60%" align="center">4. The Web Module</th><td width="20%" align="right"> <a accesskey="n" href="ch04s07.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="osgi.reference"></a>4.6 Referencing an OSGi Service</h2></div></div></div><p>
- In an OSGi-based application, the business logic behind a controller is typically accessed through the OSGi
- Service Registry.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.reference.export.package"></a>Exporting Packages</h3></div></div></div><p>
- By default, Bundlor detects and exports all packages in a bundle.
- In this step Bundlor is told what to
- export from the <code class="literal">greenpages.app</code> bundle and which types from those packages to use in the
- <code class="literal">greenpages.web</code> bundle.
- </p><p>
- Add and save the following entry to the <code class="filename">template.mf</code> file in the
- <code class="literal">greenpages.app</code> project and then run the <code class="literal">MANIFEST.MF</code> generation on the project as
- explained in <a class="xref" href="ch04s04.html#deploy.bundle.web.module.manifest" title="Creating web module metadata">the section called “Creating web module metadata”</a>.
-</p><pre class="programlisting">Excluded-Exports:
- greenpages.internal
-</pre><p>
- (As before, be careful not to leave trailing spaces on the ends of lines, except for the one space after the colon,
- and not to add any blank lines to the file. The second line of this entry has a leading space—do not omit it.)
- </p><p>
- Check that the package is no longer exported in the <code class="literal">greenpages.app</code> <code class="literal">MANIFEST.MF</code> file
- which should look something like this:
-</p><pre class="programlisting">Manifest-Version: 1.0
-Bundle-Name: GreenPages Service
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: greenpages
-Tool: Bundlor 1.0.0.RELEASE
-Export-Package: greenpages;version="2.3.0"
-Bundle-Version: 2.3.0
-</pre><p>
- Go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.reference.referencing.projects.packages"></a>Referencing Projects and Packages</h3></div></div></div><p>
- Now that the <code class="literal">greenpages.app</code> bundle exports the package that the
- <code class="interfacename">Directory</code> and <code class="interfacename">Listing</code> interfaces reside in,
- the <code class="literal">greenpages.web</code> bundle must import it.
- In this step the Maven
- <code class="filename">pom.xml</code> file is updated to depend on the <code class="literal">greenpages.app</code> bundle and import the
- package.
- </p><p>
- Open the <code class="filename">pom.xml</code> file in the <code class="literal">greenpages.web</code> project.
- (Edit the source directly by using the <code class="literal">pom.xml</code> tab in the editor.)
- In this file add
- the following entry (between the <code class="literal"><dependencies></code> tags):
-</p><pre class="programlisting"><<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.app<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
-<<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- Open the <code class="classname">GreenPagesController</code> class and import the <code class="classname">Listing</code> and
- <code class="classname">Directory</code> types.
- (Eclipse should now offer these as a <span class="emphasis"><em>Quick Fix</em></span>.
- It it does not, set <code class="literal">greenpages.app</code> as a project dependency of <code class="literal">greenpages.web</code>
- in the Build Path of the web project.)
- The class should now compile cleanly.
- </p><p>
-The following imports should now have been added to the <code class="classname">GreenPagesController</code> class:
-</p><pre class="programlisting">import greenpages.Directory;
-import greenpages.Listing;
-
-import java.util.List;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-</pre><p>
-</p><p>
- Add the following package clause to the <code class="literal">Import-Template</code> entry in the
- <code class="filename">template.mf</code> file in the <code class="literal">greenpages.web</code> project. When added run the
- MANIFEST.MF generation on the project as described in <a class="xref" href="ch04s04.html#deploy.bundle.web.module.manifest" title="Creating web module metadata">the section called “Creating web module metadata”</a>.
- </p><pre class="programlisting">greenpages.*;version="[2.3, 2.4)"</pre><p>
- Be careful to include the “<span class="quote"><code class="literal">.*</code></span>” in the package pattern.
- </p><p>
- Once Bundlor has finished, go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.reference.deploy.par"></a>Deploying a PAR</h3></div></div></div><p>
- Currently the Web Server instance has a single web module bundle deployed. In this step, the
- <code class="literal">greenpages.web</code> bundle is undeployed and <code class="literal">greenpages</code> PAR is deployed.
- </p><p>
- Right-click on the Web Server in the <span class="emphasis"><em>Servers</em></span> view, and select
- <span class="emphasis"><em>Add and Remove…</em></span>. In the dialog that opens, remove the
- <code class="literal">greenpages.web</code> bundle and add the <code class="literal">greenpages</code> PAR to the server. When
- the configuration is complete, press <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/add-remove-projects.png" align="middle"></div><p>
- </p><p>
- Eclipse automatically undeploys the <code class="literal">greenpages.web</code> bundle and deploys the
- <code class="literal">greenpages</code> PAR.
- When this happens, the deployment may fail with an error.
- If it does not, open the browser again at
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>
- and observe the failure which should have a root cause similar to:
-</p><pre class="programlisting">org.springframework.beans.factory.NoSuchBeanDefinitionException:
- No matching bean of type [greenpages.Directory] found for dependency:
- expected at least 1 bean which qualifies as autowire candidate for this dependency.
- Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
-</pre><p>
- This error is caused by there being no instance of <code class="classname">Directory</code> to inject into the controller.
- The next section will supply one.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.reference.reference"></a>Referencing an OSGi Service</h3></div></div></div><p>
- There is no instance of <code class="interfacename">Directory</code> to be
- injected into the controller.
- In the GreenPages application, it is intended that this
- implementation is used through an interface in
- the OSGi <span class="emphasis"><em>Service Registry</em></span>.
- Using a service in the Service Registry enables
- another bundle to
- provide an implementation without revealing the implementation or the provider to all clients of the
- service.
- Web Server supports the use of the Spring DM <span class="emphasis"><em>namespace</em></span> for
- referencing elements in the OSGi Service Registry.
- This step adds an OSGi Service Reference to an implementation of the
- <code class="interfacename">Directory</code> interface.
- </p><p>
- In the <code class="filename">webapp/WEB-INF/applicationContext.xml</code> file in the <code class="literal">greenpages.web</code>
- projects add a reference to a
- <code class="interfacename">greenpages.Directory</code> instance in the OSGi service registry using
- the <code class="literal"><osgi:reference/></code> tag as follows:
-</p><pre class="programlisting"><<span class="hl-tag">osgi:reference</span> <span class="hl-attribute">id</span>=<span class="hl-value">"directory"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"greenpages.Directory"</span>/>
-</pre><p>
- </p><p>
- The tools will automatically redeploy the <code class="literal">greenpages.web</code> bundle when the change to the
- bean definition has been saved.
- The web bundle will not completely start.
-
- </p><p>
- This is because there is no provider of a <code class="interfacename">greenpages.Directory</code> in
- the Service Registry. The next step will address this.
- </p><p>
- The error is re-issued as the Web Server instance waits for the service to be supplied. After about five minutes
- the server will “<span class="quote">time-out</span>” and the deploy will be abandoned. This same error (and time-out)
- will occur each time the PAR is redeployed as each change is made.
- </p><p>Stop the server instance by right-clicking on the server in the <span class="emphasis"><em>Servers</em></span> view and
- selecting <span class="emphasis"><em>Stop</em></span>. This will avoid unnecessary delays as changes are made.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s07.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.5 Creating a PAR </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.7 Publishing an OSGi Service</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s07.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s07.html
deleted file mode 100644
index 0ca4976..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch04s07.html
+++ /dev/null
@@ -1,57 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.7 Publishing an OSGi Service</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch04.html" title="4. The Web Module"><link rel="prev" href="ch04s06.html" title="4.6 Referencing an OSGi Service"><link rel="next" href="ch05.html" title="5. The Middle Tier"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.7 Publishing an OSGi Service</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s06.html">Prev</a> </td><th width="60%" align="center">4. The Web Module</th><td width="20%" align="right"> <a accesskey="n" href="ch05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="osgi.service"></a>4.7 Publishing an OSGi Service</h2></div></div></div><p>
- At the end of the previous step, a dependency was created on an OSGi Service Registry exposed instance of
- <code class="classname">greenpages.Directory</code>. The application would not start because no other bundle was
- contributing an instance of this service to the Service Registry.
- </p><p>Stop the server instance before proceeding.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.service.implementation"></a>Add Implementation</h3></div></div></div><p>
- In this step Spring’s context scanning is added which will create an instance of the
- <code class="classname">DirectoryImpl</code> class.
- </p><p>
- Open the <code class="classname">greenpages.internal.DirectoryImpl</code> class in the <code class="literal">greenpages.app</code>
- project. Add the <code class="interfacename">@Component</code> annotation to the class:
-</p><pre class="programlisting">@Component(<span class="hl-string">"directory"</span>)
-<span class="hl-keyword">public</span> <span class="hl-keyword">class</span> DirectoryImpl <span class="hl-keyword">implements</span> Directory {
-…
-</pre><p>
- generating imports with Eclipse’s help if necessary.
- </p><p>
- Open the <code class="filename">META-INF/spring/module-context.xml</code> in the <code class="literal">greenpages.app</code>
- project. Add component scanning to this file:
-</p><pre class="programlisting"><<span class="hl-tag">context:component-scan</span> <span class="hl-attribute">base-package</span>=<span class="hl-value">"greenpages.internal"</span>/>
-</pre><p>
- </p><p>
- When complete, go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.service.publish"></a>Publish OSGi Service</h3></div></div></div><p>
- In this step the <code class="classname">DirectoryImpl</code> instance is published to the OSGi Service
- Registry.
- </p><p>
- Open the <code class="filename">META-INF/spring/osgi-context.xml</code> file. Add the
- <code class="literal"><osgi:service/></code> tag to publish the <code class="literal">directory</code> bean with an
- interface of <code class="interfacename">greenpages.Directory</code>.
-</p><pre class="programlisting"><<span class="hl-tag">osgi:service</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"directory"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"greenpages.Directory"</span>/>
-</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.server.working"></a>A Working Web Application</h3></div></div></div><p>
- Start (or restart) the Web Server instance from the <code class="literal">Servers</code> view. If the GreenPages PAR was not
- removed before, it will be automatically deployed, otherwise deploy it as before. There should be no errors reported.
- When GreenPages is deployed successfully, open a web browser and navigate to
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>. On
- the home page type <code class="literal">wilkinson</code> into the search field and press <span class="emphasis"><em>Submit</em></span>.
- Unlike the previous attempt, this should return a list (of size 1) of search results. From here, select
- <span class="emphasis"><em>view</em></span> to get the “<span class="quote">detailed</span>” listing.
- </p><div class="mediaobject" align="center"><img src="images/web-module/greenpages-listing-success.png" align="middle"></div><p>
- This uses a stub implementation of the <code class="classname">Directory</code> interface which only knows about “<span class="quote">Andy Wilkinson</span>”.
- </p><p>
- The web interface is complete enough. Go to the next chapter to see the middle tier implementation.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.6 Referencing an OSGi Service </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 5. The Middle Tier</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05.html
deleted file mode 100644
index ab30f8b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>5. The Middle Tier</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="prev" href="ch04s07.html" title="4.7 Publishing an OSGi Service"><link rel="next" href="ch05s02.html" title="5.2 Creating the DataSource project"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5. The Middle Tier</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s07.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch05s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="middle-tier"></a>5. The Middle Tier</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.introduction"></a>5.1 Introduction</h2></div></div></div><p>
- GreenPages’ middle-tier provides implementations of the <code class="literal">Directory</code> and <code class="literal">Listing</code>
- interfaces that can be used by the Web bundle.
- The implementation will use EclipseLink JPA to access a database via a <code class="literal">DataSource</code> published in the
- OSGi service registry.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.introduction.database"></a>The database</h3></div></div></div><p>
- The GreenPages application uses a very simple database that contains a single table.
- The table, named <code class="literal">LISTING</code>, consists of four columns:
- </p><div class="informaltable"><table style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col><col><col></colgroup><tbody><tr><td style="border-right: 1.0pt solid ; "><code class="literal">LISTING_NUMBER</code></td><td style="border-right: 1.0pt solid ; "><code class="literal">FIRST_NAME</code></td><td style="border-right: 1.0pt solid ; "><code class="literal">LAST_NAME</code></td><td style=""><code class="literal">EMAIL_ADDRESS</code></td></tr></tbody></table></div><p>
- Scripts are provided with the sample source code (in <code class="literal">$GREENPAGES_HOME/db</code>) to start, create, and populate the database.
- These will be used during the creation of the middle tier.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.introduction.jpa"></a>Using JPA</h3></div></div></div><p>
- The middle tier will provide JPA-based implementations of the <code class="literal">Directory</code> and <code class="literal">Listing</code> interfaces with the four
- attributes of a <code class="literal">Listing</code> (first name, last name, email address, and id) being mapped to the corresponding columns in the
- <code class="literal">LISTING</code>.
- JPA will be used to implement the queries that search the database and return <code class="literal">Listings</code>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.introduction.structure"></a>Structure</h3></div></div></div><p>
- The middle tier consists of two bundles, <code class="literal">greenpages.jpa</code> that publishes a <code class="literal">Directory</code>
- implementation for consumption by the Web bundle, and <code class="literal">greenpages.db</code> to configure and publish the
- <code class="literal">DataSource</code> used to access the database.
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/structure.png" align="middle"></div></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s07.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch05s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.7 Publishing an OSGi Service </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 5.2 Creating the DataSource project</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s02.html
deleted file mode 100644
index 9cd3876..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s02.html
+++ /dev/null
@@ -1,241 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>5.2 Creating the DataSource project</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch05.html" title="5. The Middle Tier"><link rel="prev" href="ch05.html" title="5. The Middle Tier"><link rel="next" href="ch05s03.html" title="5.3 Building the JPA module"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5.2 Creating the DataSource project</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05.html">Prev</a> </td><th width="60%" align="center">5. The Middle Tier</th><td width="20%" align="right"> <a accesskey="n" href="ch05s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.create-db-project"></a>5.2 Creating the DataSource project</h2></div></div></div><p>
- This section describes how to use
- the bundle project creation wizard to create a new <code class="literal">Bundle Project</code>. The project’s Spring bean
- definition files will also be created using the Spring bean configuration file creation wizard.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.create-db-project.new-bundle-project"></a>Creating a new Bundle Project</h3></div></div></div><p>
- Create a new project by right-clicking in the <span class="emphasis"><em>Package Explorer</em></span> view and selecting
- <span class="guimenu">New</span> → <span class="guimenuitem">Project…</span>. In the resulting
- dialog select <span class="guimenu">EclipseRT</span> → <span class="guimenuitem">Bundle
- Project</span> and press <span class="emphasis"><em>Next</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/new-bundle-project.png" align="middle"></div><p>
- </p><p>
- In the <span class="emphasis"><em>New Bundle Project</em></span> dialog, name the project <code class="literal">greenpages.db</code>.
- Choose the create the project from an existing source location and specify a location that will place the new
- <code class="literal">greenpages.db</code> alongside the project skeletons that were imported into the workspace
- earlier. If the <code class="literal">start</code> directory of the GreenPages sample is being used this will
- be <code class="literal">$GREENPAGES_HOME/start/greenpages.db</code> (and, <span class="emphasis"><em>mutatis mutandis</em></span> on Windows).
- Click <span class="emphasis"><em>Next</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/create-bundle-project.png" align="middle"></div><p>
- </p><p>
- In this page of the wizard, many of the <span class="emphasis"><em>Bundle Properties</em></span> are already populated. The
- <code class="literal">Bundle-SymbolicName</code> is the name of the project. The <code class="literal">Bundle-Name</code> is
- derived from the <code class="literal">Bundle-SymbolicName</code>. The <code class="literal">Bundle-Version</code> is
- set, and there is no <code class="literal">Bundle-Description</code>.
- </p><p>
- Change the <code class="literal">Bundle-Name</code> to “<span class="quote"><code class="literal">GreenPages DataSource</code></span>” to more accurately
- describe the bundle’s purpose. An option to ‘Enable Bundle Classpath Container’ is already selected. It should
- be <span class="emphasis"><em>de</em></span>-selected, as a Maven Classpath container will be configured later.
- Ensure that the <span class="emphasis"><em>Target Runtime</em></span>
- is set to <span class="emphasis"><em>Virgo Web Server (Runtime) v2.1</em></span>.
- Click <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/config-bundle-project.png" align="middle"></div><p>
- The <code class="literal">greenpages.db</code> project appears in the <span class="emphasis"><em>Package Explorer</em></span> view.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.create-db-project.configuring-classpath"></a>Configuring the project’s classpath container</h3></div></div></div><p>
- Before a Maven Classpath Container can be added to the project, a <code class="literal">pom.xml</code> file must
- be created.
- Create a new file in the root of the <code class="literal">greenpages.db</code> project named
- <code class="literal">pom.xml</code> and add the following contents to it:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">project</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://maven.apache.org/POM/4.0.0"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"</span>>
-
- <<span class="hl-tag">parent</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.parent<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>2.3.0.RELEASE<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">relativePath</span>>../parent<<span class="hl-tag">/relativePath</span>>
- <<span class="hl-tag">/parent</span>>
-
- <<span class="hl-tag">modelVersion</span>>4.0.0<<span class="hl-tag">/modelVersion</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.db<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">name</span>>greenpages.db<<span class="hl-tag">/name</span>>
- <<span class="hl-tag">packaging</span>>jar<<span class="hl-tag">/packaging</span>>
-
- <<span class="hl-tag">dependencies</span>>
- <<span class="hl-tag">/dependencies</span>>
-
-<<span class="hl-tag">/project</span>>
-</pre><p>
- Save the file.
- </p><p>
- A Maven Classpath Container can now be added to the project. Right-click the
- <code class="literal">greenpages.db</code> project in the Package Explorer and select
- <span class="guimenu">Maven 2</span> → <span class="guimenuitem">Enable dependency management</span>.
- Eclipse will perform some workspace building, and the <code class="literal">greenpages.db</code> project will now be marked as a Maven project.
- (If the error <code class="literal">Cannot find artifact for parent POM</code> occurs check that the version is correct.
- It may differ from the one given here.)
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.create-db-project.config-src-folders"></a>Configuring the source folders</h3></div></div></div><p>
- The last part of the setup of the project is to configure its source folders.
- Return to the <span class="emphasis"><em>Properties</em></span> dialog of
- the <code class="literal">greenpages.db</code> project (from the <span class="emphasis"><em>Package Explorer</em></span> view).
- Select <span class="emphasis"><em>Java Build Path</em></span> on the left-hand side and the <span class="emphasis"><em>Source</em></span> tab
- on the right-hand side.
- Remove any pre-configured source folders by selecting them and
- clicking <span class="emphasis"><em>Remove</em></span>.
- </p><p>
- Now click <span class="emphasis"><em>Add folder</em></span> and then
- <span class="emphasis"><em>Create new folder…</em></span>.
- Specify <code class="literal">src/main/resources</code> as the folder
- name and click <span class="emphasis"><em>Finish</em></span>, then <span class="emphasis"><em>OK</em></span> and <span class="emphasis"><em>OK</em></span> again.
- </p><p>
- The final change to be made is to drag the <code class="literal">META-INF</code> folder from <code class="literal">src</code>
- to <code class="literal">src/main/resources</code>.
- Once these changes have been made the project will appear
- similar to the following in the <span class="emphasis"><em>Package Explorer</em></span> view:
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/db-project.png" align="middle"></div><p>
- </p><p>
- (It is useful to check that the Maven project just configured has the correct Java System library associated with it and that
- the <code class="literal">MANIFEST.MF</code> file that we have just moved is correctly generated when necessary.
- To ensure this, disable the dependency management (enabled in the previous section) and then re-enable it, saving the changes in between.
- This step may also change the Java system libraries associated with the build (right-click on the <code class="literal">greenpages.db</code> project, under Properties, Java build path and Libraries).
- If the Java system libraries look incorrect, simply remove them in the Libraries window and reset them.)
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.create-db-project.config-datasource"></a>Configuring the DataSource</h3></div></div></div><p>
- The DataSource bundle’s main rôle is to configure and create a <code class="literal">DataSource</code> object and to
- publish this to the OSGi service registry. This will be done by creating
- a handful of Spring beans.
- </p><p>
- By default, Spring DM looks for application context files in a bundle’s <code class="literal">META-INF/spring</code>
- directory. Create a new folder named <code class="literal">spring</code> in the <code class="literal">greenpages.db</code>
- project’s <code class="literal">META-INF</code> folder. Having created the new folder, right-click it in the
- Package Explorer and select
- <span class="guimenu">New </span> → <span class="guimenuitem">Spring Bean Configuration File</span>.
- This will open the wizard for creating Spring bean configuration files.
- </p><p>
- In the wizard enter a <code class="literal">File name</code> of <code class="literal">module-context.xml</code> and click
- <span class="emphasis"><em>Next</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/db-module-create-module-context.png" align="middle"></div><p>
- </p><p>
- Add the <span class="emphasis"><em>p - http://www.springframework.org/schema/p</em></span> namespace declaration to the pre-selected
- <span class="emphasis"><em>beans</em></span> declaration and then click <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/db-module-namespace-declaration-configuration.png" align="middle"></div><p>
- </p><p>
- Update the newly-created file (which is opened by Eclipse) to declare a bean that defines the <code class="literal">DataSource</code>
- object that will be used to access the GreenPages database.
- Do this by adding the following bean declaration:
-</p><pre class="programlisting"> <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.apache.commons.dbcp.BasicDataSource"</span>
- <span class="hl-attribute">p:driverClassName</span>=<span class="hl-value">"org.h2.Driver"</span> <span class="hl-attribute">p:url</span>=<span class="hl-value">"jdbc:h2:~/greenpages-db/greenpages"</span>
- <span class="hl-attribute">p:username</span>=<span class="hl-value">"greenpages"</span> <span class="hl-attribute">p:password</span>=<span class="hl-value">"pass"</span>
- <span class="hl-attribute">init-method</span>=<span class="hl-value">"createDataSource"</span> <span class="hl-attribute">destroy-method</span>=<span class="hl-value">"close"</span> />
-</pre><p>
- The new bean has introduced a dependency on Commons DBCP, which will cause an error to be reported by Eclipse.
- </p><p>
- This dependency must be recorded in the project’s pom file. Open the pom file for <code class="literal">greenpages.db</code> and add
- the following dependency between the <code class="literal"><dependencies></code> tags:
-</p><pre class="programlisting"> <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.apache.commons<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.org.apache.commons.dbcp<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">/dependency</span>>
-</pre><p>
- Save the updated pom and then switch back to the editor for <code class="literal">module-context.xml</code>.
- Save the updated file and
- observe that the previously reported problem is now resolved as Commons DBCP is available on the classpath.
- </p><p>
- Now that the <code class="literal">DataSource</code> bean is available, it can be published into the OSGi service registry.
- </p><p>
- Right-click the <code class="literal">spring</code> folder and select
- <span class="guimenu">New </span> → <span class="guimenuitem">Spring Bean Configuration File</span> again.
- This time specify
- a name of <code class="literal">osgi-context.xml</code>, click <span class="emphasis"><em>Next</em></span>, and add the <code class="literal">osgi</code>
- namespace declaration
- (ensure that the resultant schema location string contains the URL
- <code class="literal">http://www.springframework.org/schema/osgi/spring-osgi-1.2.xsd</code>
- as
- <code class="literal">http://www.springframework.org/schema/osgi/spring-osgi-2.0-m1.xsd</code>
- will result in an obscure deployment failure due to an invalid 'cacheTarget' property).
- Click <span class="emphasis"><em>Finish</em></span> and then add the following to the new file to publish the
- <code class="literal">DataSource</code> as a service:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- export the dataSource bean to the OSGi service registry under the
- DataSource interface
- --</span>>
- <<span class="hl-tag">osgi:service</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"javax.sql.DataSource"</span> />
-</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id=middle-tier.create-db-project.config-bundlor-template"></a>Configuring Bundlor’s manifest template</h3></div></div></div><p>
- Bundlor uses a manifest <span class="emphasis"><em>template</em></span> to control the contents of the generated manifest.
- Create a new file named
- <code class="literal">template.mf</code> in the root of the <code class="literal">greenpages.db</code> project.
- Open the existing
- <code class="literal">MANIFEST.MF</code> and switch to the <code class="literal">MANIFEST.MF</code> tab to view its source. Copy
- the contents. Switch to the editor for <code class="literal">template.mf</code>, switch to the
- <code class="literal">template.mf</code> tab and paste the contents from <code class="literal">MANIFEST.MF</code>. These entries
- will tell Bundlor what the resulting manifest’s bundle symbolic name, bundle version, etc. should be. Save the
- updated template.
- </p><p>
- Still in the <code class="literal">template.mf</code> editor switch to the <span class="emphasis"><em>Overview</em></span> tab
- and click <span class="emphasis"><em>Update MANIFEST.MF</em></span> which is under the “<span class="quote">Bundle Actions</span>” section.
- </p><p>
- At this point Bundlor will scan the project to determine its
- dependencies. It will scan both <code class="literal">module-context.xml</code> and <code class="literal">osgi-context.xml</code>
- looking for references to classes. For each class to which it finds a reference, an import for the class’s
- package will be added to the resulting manifest.
- </p><p>
- In this case, Bundlor will generate imports for
- both <code class="code">javax.sql</code> and <code class="code">org.apache.commons.dbcp</code>.
- These imports may not be resolved.
- The <code class="literal">greenpages.db</code> project needs to be associated with a Web Server instance which has the
- Commons DBCP bundle in its repository to resolve them.
- In any event the next step adds the <code class="literal">greenpages.db</code>
- project to the GreenPages PAR and will result in it inheriting the PAR project’s targetted runtime
- configuration.
- </p><p>
- Double-click the <code class="literal">MANIFEST.MF</code> file in the <code class="literal">greenpages</code> project in the
- <span class="emphasis"><em>Package Explorer</em></span> view.
- Switch to the <code class="literal">Dependencies</code> tab and click <span class="emphasis"><em>Add…</em></span>.
- Select <code class="literal">greenpages.db</code> and click <span class="emphasis"><em>OK</em></span>.
- Save the updated file.
- A problem concerning the <code class="code">org.apache.commons.dbcp</code> dependency should now be resolved
- (along with any other resolution errors) and (if the server is running) the
- GreenPages application will be redeployed due to the addition of the <code class="literal">greenpages.db</code>
- module.
- Start the server if it is not already running and observe that this deployment fails.
- </p><p>
- The deployment will fail because the <code class="code">org.h2.Driver</code> class that is referenced in the
- <code class="literal">DataSource</code> bean’s definition in <code class="literal">module-context.xml</code> is not available to
- the bundle.
- (Check for the exception <code class="code">org.springframework.beans.factory.BeanCreationException</code> with
- text something like:
-</p><pre class="programlisting">Error creating bean with name 'dataSource'
- defined in URL [bundleentry://68.fwk504117357/META-INF/spring/ module-context.xml]:
- Invocation of init method failed;
- nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class 'org.h2.Driver'
-</pre><p>
- though the numbers might be different.)
- </p><p>
- There are a few cases where Bundlor will not identify a dependency on a class and, at the moment,
- this is one of them, although this is an area of Bundlor that is being improved all the time.
- Thankfully, it is easy to add the required import by making a simple update to the template.
- </p><p>
- Open the editor for the
- <code class="literal">template.mf</code> file in the <code class="literal">greenpages.db</code> project and add the following
- <code class="literal">Import-Package</code> header and save the updated manifest:
-</p><pre class="programlisting">Import-Package: org.h2;version="[1.0.71,1.0.71]"
-</pre><p>
- </p><p>
- Saving the manifest will trigger a redeployment (or click on <span class="emphasis"><em>Update MANIFEST.MF</em></span> as before)
- which will fail if the H2 database is not available.
- (Refer to the section <a class="xref" href="ch03s03.html#installing.greenpages.building.db" title="Starting and configuring the database">the section called “Starting and configuring the database”</a>
- in <a class="xref" href="ch03.html" title="3. Installing and exploring GreenPages">Chapter 3, <i>Installing and exploring GreenPages</i></a> to run and configure the database.)
- </p><p>
- If the database is running the GreenPages application should correctly deploy.
- Although the application web front-end will run, the database contents is
- not visible, of course, because we are still running with the <span class="emphasis"><em>stub</em></span> version of the <code class="code">search</code> method on the controller.
- The implementation of the <code class="code">Directory</code> service needs to be changed to exploit the database.</p><p>
- (One possible cause of failure here is the username and password on the <code class="literal">dataSource</code>
- bean defined in <code class="literal">module-context.xml</code>. Check that these are exactly correct.)
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch05.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch05s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5. The Middle Tier </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 5.3 Building the JPA module</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s03.html
deleted file mode 100644
index b4b9ab0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s03.html
+++ /dev/null
@@ -1,257 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>5.3 Building the JPA module</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch05.html" title="5. The Middle Tier"><link rel="prev" href="ch05s02.html" title="5.2 Creating the DataSource project"><link rel="next" href="ch05s04.html" title="5.4 Trying out the JPA middle tier"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5.3 Building the JPA module</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05s02.html">Prev</a> </td><th width="60%" align="center">5. The Middle Tier</th><td width="20%" align="right"> <a accesskey="n" href="ch05s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.building-jpa-module"></a>5.3 Building the JPA module</h2></div></div></div><p>
- In this section the JPA module in GreenPages is created, building upon an existing skeleton.
- JPA and its metadata are configured, and a JPA-based Directory service implementation
- is published which is then consumed by the application’s Web bundle.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.completing-jpadirectory"></a>Completing the JPA-based Directory implementation</h3></div></div></div><p>
- The <code class="literal">greenpages.jpa</code> starter project provides the beginnings of a JPA-based implementation of
- <code class="literal">Directory</code> named <code class="literal">JpaDirectory</code>. Import the <code class="literal">greenpages.jpa</code> project
- from the <code class="literal">$GREENPAGES_HOME/start</code> directory.
- </p><p>
- Open the <code class="code">JpaDirectory.java</code> source file
- in the <code class="literal">greenpages.jpa</code> package of <code class="literal">greenpages.jpa</code> project (under <code class="code">src/main/java</code>).
- </p><p>
- The source file
- contains a Java Persistence Query Language (JPQL) search query that will be used to retrieve
- listings from the database, and empty
- implementations of the <code class="literal">search</code> and <code class="literal">findListing</code> methods.
- </p><p>
- First add an <code class="literal">EntityManager</code> to it.
- Before the new field
- can be added, <code class="literal">EntityManager</code> must be available on the classpath.
- Open the pom for
- <code class="literal">greenpages.jpa</code> and add the following dependency:
-</p><pre class="programlisting"> <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>javax.persistence<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.javax.persistence<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- Now return to <code class="literal">JpaDirectory</code> and add the following field to the class along with an
- import for <code class="literal">javax.persistence.EntityManager</code> (which should be suggested by Eclipse):
-</p><pre class="programlisting"> <span class="hl-keyword">private</span> EntityManager em;
-</pre><p>
- </p><p>
- This <code class="literal">EntityManager</code> can now be used to implement the <code class="literal">search</code> and
- <code class="literal">findListing</code> methods. Update the implementations of these two methods to match the
- following implementations and then save the updated class:
-</p><pre class="programlisting"> <span class="hl-keyword">public</span> Listing findListing(<span class="hl-keyword">int</span> id) {
- <span class="hl-keyword">return</span> em.find(JpaListing.<span class="hl-keyword">class</span>, id);
- }
-
- @SuppressWarnings(<span class="hl-string">"unchecked"</span>)
- <span class="hl-keyword">public</span> List<Listing> search(String term) {
- <span class="hl-keyword">return</span> em.createQuery(SEARCH_QUERY).setParameter(<span class="hl-string">"term"</span>,
- <span class="hl-string">"%"</span> + term.toUpperCase() + <span class="hl-string">"%"</span>).getResultList();
- }
-</pre><p>
- (Warnings from Eclipse should now be absent.)
- </p><p>
- The application context now needs to be updated to create <code class="literal">JpaDirectory</code> and to create
- an <code class="literal">EntityManager</code> that can be injected into <code class="literal">JpaDirectory</code>.
- </p><p>
- Open
- <code class="literal">module-context.xml</code> in the <code class="literal">META-INF/spring</code> folder of the
- <code class="literal">greenpages.jpa</code>. Add the following beans that will create <code class="literal">JpaDirectory</code>
- and an <code class="literal">EntityManager</code>, enable load-time weaving that is required by JPA, and enable
- annotation-based configuration that will allow the <code class="literal">EntityManager</code> to be injected into
- <code class="literal">JpaDirectory</code>:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- Activates a load-time weaver for the context. Any bean within the
- context that implements LoadTimeWeaverAware (such as
- LocalContainerEntityManagerFactoryBean) will receive a reference to
- the autodetected load-time weaver.
- --</span>>
- <<span class="hl-tag">context:load-time-weaver</span> <span class="hl-attribute">aspectj-weaving</span>=<span class="hl-value">"on"</span> />
-
- <<span class="hl-comment">!-- JPA EntityManagerFactory --</span>>
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"entityManagerFactory"</span>
- <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"</span>
- <span class="hl-attribute">p:dataSource-ref</span>=<span class="hl-value">"dataSource"</span>>
- <<span class="hl-tag">property</span> <span class="hl-attribute">name</span>=<span class="hl-value">"jpaVendorAdapter"</span>>
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"jpaVendorAdapter"</span>
- <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.orm.jpa.vendor.EclipseLinkJpaVendorAdapter"</span>
- <span class="hl-attribute">p:databasePlatform</span>=<span class="hl-value">"org.eclipse.persistence.platform.database.HSQLPlatform"</span>
- <span class="hl-attribute">p:showSql</span>=<span class="hl-value">"true"</span> />
- <<span class="hl-tag">/property</span>>
- <<span class="hl-tag">/bean</span>>
-
- <<span class="hl-comment">!--
- Activates various annotations to be detected in bean classes: Spring's
- @Required and @Autowired, as well as JSR 250's @PostConstruct,
- @PreDestroy and @Resource (if available) and JPA's @PersistenceContext
- and @PersistenceUnit (if available).
- --</span>>
- <<span class="hl-tag">context:annotation-config</span> />
-
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"directory"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"greenpages.jpa.JpaDirectory"</span> />
-</pre><p>
- </p><p>
- The addition of the new beans to the context has introduced a new dependency upon Spring’s ORM support and upon
- EclipseLink and its JPA implementation. Add the following dependencies to the pom file for
- <code class="literal">greenpages.jpa</code> and save it:
-</p><pre class="programlisting"> <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.springframework<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>org.springframework.spring-library<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">type</span>>libd<<span class="hl-tag">/type</span>>
- <<span class="hl-tag">/dependency</span>>
- <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.eclipse.persistence<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.org.eclipse.persistence<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">/dependency</span>>
- <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.eclipse.persistence<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.org.eclipse.persistence.jpa<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- Now switch back to <code class="literal">module-context.xml</code> for <code class="literal">greenpages.jpa</code> and observe
- that the errors relating to Spring’s ORM types have now been resolved.
- Save <code class="literal">module-context.xml</code>.
- </p><p>
- The application context now contains a factory that will create an <code class="literal">EntityManager</code> and is
- configured for annotation-based configuration.
- The last step in completing <code class="literal">JpaDirectory</code>
- is to annotate the <code class="literal">EntityManager</code> field so that Spring will inject the
- <code class="literal">EntityManager</code> created by the factory into the field.
- </p><p>
- Open <code class="literal">JpaDirectory.java</code> again and add an annotation <code class="literal">@PersistenceContext</code> to the
- <code class="literal">EntityManager</code> field.
-</p><pre class="programlisting">@PersistenceContext
-<span class="hl-keyword">private</span> EntityManager em;
-</pre><p>
- Eclipse will suggest an import for
- <code class="literal">javax.persistence.PersistenceContext</code>; accept this and save the file.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.providing-jpa-metadata"></a>Providing the JPA metadata</h3></div></div></div><p>
- JPA uses a file named <code class="literal">META-INF/persistence.xml</code> to describe persistence units.
- <code class="literal">persistence.xml</code> refers to a second file, typically named
- <code class="literal">META-INF/orm.xml</code>, to define entity mappings.
- In the case of GreenPages the
- <code class="literal">persistence.xml</code> file specifies a single persistence unit that points to the
- <code class="literal">greenpages.JpaListing</code> class.
- The specified mapping file
- (<code class="literal">META-INF/orm.xml</code>) tells the JPA implementation how to map
- <code class="literal">JpaListing</code> to the <code class="literal">LISTING</code> database table described above.
- (For more information on JPA consult the Documentation section in the appendix.)
- </p><p>
- Create a new file named <code class="literal">persistence.xml</code> in the <code class="literal">META-INF</code> folder of
- the <code class="literal">greenpages.jpa</code> project. Add the following contents to the new file and then save it:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8" ?</span>>
-<<span class="hl-tag">persistence</span> <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://java.sun.com/xml/ns/persistence"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://java.sun.com/xml/ns/persistence
- http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"</span>
- <span class="hl-attribute">version</span>=<span class="hl-value">"1.0"</span>>
-
- <<span class="hl-tag">persistence-unit</span> <span class="hl-attribute">name</span>=<span class="hl-value">"GreenPages"</span> <span class="hl-attribute">transaction-type</span>=<span class="hl-value">"RESOURCE_LOCAL"</span>>
- <<span class="hl-tag">class</span>>greenpages.jpa.JpaListing<<span class="hl-tag">/class</span>>
- <<span class="hl-tag">/persistence-unit</span>>
-
-<<span class="hl-tag">/persistence</span>>
-</pre><p>
- </p><p>
- Now create a new file named <code class="literal">orm.xml</code> also in the <code class="literal">META-INF</code> folder
- alongside <code class="literal">persistence.xml</code>. Add the following contents to the new file and then save it:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8" ?</span>>
-<<span class="hl-tag">entity-mappings</span> <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://java.sun.com/xml/ns/persistence/orm"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://java.sun.com/xml/ns/persistence/orm
- http://java.sun.com/xml/ns/persistence/orm_1_0.xsd"</span>
- <span class="hl-attribute">version</span>=<span class="hl-value">"1.0"</span>>
- <<span class="hl-tag">package</span>>greenpages.jpa<<span class="hl-tag">/package</span>>
- <<span class="hl-tag">entity</span> <span class="hl-attribute">class</span>=<span class="hl-value">"greenpages.jpa.JpaListing"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"Listing"</span>>
- <<span class="hl-tag">table</span> <span class="hl-attribute">name</span>=<span class="hl-value">"LISTING"</span> />
- <<span class="hl-tag">attributes</span>>
- <<span class="hl-tag">id</span> <span class="hl-attribute">name</span>=<span class="hl-value">"listingNumber"</span>>
- <<span class="hl-tag">column</span> <span class="hl-attribute">name</span>=<span class="hl-value">"LISTING_NUMBER"</span> />
- <<span class="hl-tag">generated-value</span> <span class="hl-attribute">strategy</span>=<span class="hl-value">"TABLE"</span> />
- <<span class="hl-tag">/id</span>>
- <<span class="hl-tag">basic</span> <span class="hl-attribute">name</span>=<span class="hl-value">"firstName"</span>>
- <<span class="hl-tag">column</span> <span class="hl-attribute">name</span>=<span class="hl-value">"FIRST_NAME"</span> />
- <<span class="hl-tag">/basic</span>>
- <<span class="hl-tag">basic</span> <span class="hl-attribute">name</span>=<span class="hl-value">"lastName"</span>>
- <<span class="hl-tag">column</span> <span class="hl-attribute">name</span>=<span class="hl-value">"LAST_NAME"</span> />
- <<span class="hl-tag">/basic</span>>
- <<span class="hl-tag">basic</span> <span class="hl-attribute">name</span>=<span class="hl-value">"emailAddress"</span>>
- <<span class="hl-tag">column</span> <span class="hl-attribute">name</span>=<span class="hl-value">"EMAIL_ADDRESS"</span> />
- <<span class="hl-tag">/basic</span>>
- <<span class="hl-tag">/attributes</span>>
- <<span class="hl-tag">/entity</span>>
-<<span class="hl-tag">/entity-mappings</span>>
-</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.consuming-datasource"></a>Consuming the DataSource from the service registry</h3></div></div></div><p>
- The <code class="literal">entityManagerFactory</code> bean that was added earlier depends upon a bean named
- <code class="literal">dataSource</code> which it will use to connect the <code class="literal">EntityManager</code>
- to the GreenPages database.
- The <code class="literal">greenpages.db</code> module already publishes a
- <code class="literal">DataSource</code> to the service registry.
- <code class="literal">greenpages.jpa</code> must now be
- updated to consume this.
- </p><p>
- Open <code class="literal">osgi-context.xml</code> in the <code class="literal">META-INF/spring</code> folder of the
- <code class="literal">greenpages.jpa</code> project and add the following:
-</p><pre class="programlisting"> <<span class="hl-comment">!-- import the DataSource from OSGi --</span>>
- <<span class="hl-tag">osgi:reference</span> <span class="hl-attribute">id</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"javax.sql.DataSource"</span> />
-</pre><p>
- </p><p>
- This will result in a bean being created in the application context that is named <code class="literal">dataSource</code>.
- The bean will be of type <code class="literal">javax.sql.DataSource</code> and will be backed by a service found in the
- OSGi service registry that implements the <code class="literal">javax.sql.DataSource</code> interface.
- (Some warnings concerning the <code class="literal">dataSource</code> bean will now disappear.)
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.publishing-directory"></a>Publishing the Directory implementation to the service registry</h3></div></div></div><p>
- To make the JPA-based <code class="literal">Directory</code> implementation available to GreenPages’
- Web module it must be “<span class="quote">published</span>” to the OSGi service registry.
- </p><p>
- Open <code class="literal">osgi-context.xml</code> in the <code class="literal">META-INF/spring</code> folder of the
- <code class="literal">greenpages.jpa</code> project, add the following and then save the updated file:
-</p><pre class="programlisting"> <<span class="hl-comment">!-- export the directory bean to OSGi under the Directory interface --</span>>
- <<span class="hl-tag">osgi:service</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"directory"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"greenpages.Directory"</span> />
-</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.generating-manifest"></a>Generating greenpages.jpa’s manifest using Bundlor</h3></div></div></div><p>
- Open the <code class="literal">template.mf</code> file in the root of the <code class="literal">greenpages.jpa</code>
- project and switch to the <code class="literal">template.mf</code> tab. Add the following entries to the template
- and save it.
-</p><pre class="programlisting">Import-Bundle: com.springsource.org.eclipse.persistence;version="[1.0.0,1.0.0]",
- com.springsource.org.eclipse.persistence.jpa;version="[1.0.0,1.0.0]"
-Import-Package: org.springframework.context.weaving;version="[3.0,3.1)",
- org.springframework.transaction.aspectj;version="[3.0,3.1)"
-Excluded-Exports: greenpages.jpa
-</pre><p>
- </p><p>
- The <code class="literal">Excluded-Exports</code> header tells Bundlor that the
- <code class="literal">greenpages.jpa</code> should not be exported from the <code class="literal">greenpages.jpa</code>
- bundle.
- </p><p>
- The <code class="literal">Import-Package</code> entries for
- <code class="literal">org.springframework.context.weaving</code> and
- <code class="literal">org.springframework.transaction.aspectj</code> are needed as Bundlor cannot, yet,
- detect that these packages are required.
- </p><p>
- Lastly, the <code class="literal">Import-Bundle</code> entries for EclipseLink and its JPA implementation
- are needed as Bundlor cannot, yet, detect that EclipseLink is the JPA implementation that is
- being used by GreenPages.
- </p><p>
- Switch to the <span class="emphasis"><em>Overview</em></span> tab and click <span class="emphasis"><em>Update MANIFEST.MF</em></span>.
- As with <code class="literal">greenpages.db</code> before, this update may result in some errors being
- reported in the manifest as the project is not associated with a targetted runtime. Double-click the
- <code class="literal">MANIFEST.MF</code> file in the <code class="literal">greenpages</code> project in the Package Explorer.
- Switch to the <span class="emphasis"><em>Dependencies</em></span> tab and click <span class="emphasis"><em>Add…</em></span>. Select
- <code class="literal">greenpages.jpa</code> and click <span class="emphasis"><em>OK</em></span>. Save the updated file. The
- problems in the manifest should now be resolved and the GreenPages application should be redeployed
- due to the addition of the <code class="literal">greenpages.jpa</code> module. This redeployment should succeed
- and it’s now time to try the application again.
- </p><p>
- (A possible action if this fails is to Update (Maven) Dependencies on the project right-click menu in the Maven sub-menu.)
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch05s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch05.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch05s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5.2 Creating the DataSource project </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 5.4 Trying out the JPA middle tier</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s04.html
deleted file mode 100644
index 51ec307..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s04.html
+++ /dev/null
@@ -1,42 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>5.4 Trying out the JPA middle tier</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch05.html" title="5. The Middle Tier"><link rel="prev" href="ch05s03.html" title="5.3 Building the JPA module"><link rel="next" href="ch05s05.html" title="5.5 Applying best practices to the middle tier"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5.4 Trying out the JPA middle tier</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05s03.html">Prev</a> </td><th width="60%" align="center">5. The Middle Tier</th><td width="20%" align="right"> <a accesskey="n" href="ch05s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.trying-it-out"></a>5.4 Trying out the JPA middle tier</h2></div></div></div><p>
- Open a Web browser and navigate to <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- Click the <span class="emphasis"><em>Submit</em></span> button. Unfortunately the search will not return any results
- as the Web bundle is still using the stub <code class="literal">Directory</code> implementation provided by the
- <code class="literal">greenpages.app</code> module, rather than the JPA-based implementation that is provided
- by <code class="literal">greenpages.jpa</code>.
- This can be confirmed by using the Equinox console or the web-based admin console to examine the services being used
- by <code class="literal">greenpages.web</code>.
- </p><p>
- The service which is being used by the Web bundle can be changed at runtime without having to restart the
- application or the Web Server. This can be achieved by changing <code class="literal">greenpages.app</code> so that it no longer
- publishes its <code class="literal">Directory</code> implementation. As a result of this <code class="literal">Directory</code>
- service no longer being available, the Web bundle will automatically switch to using the JPA-based
- implementation.
- </p><p>
- Open the <code class="literal">osgi-context.xml</code> file in the <code class="literal">META-INF/spring</code> folder of the
- <code class="literal">greenpages.app</code> project and comment out the publication of the directory service:
-</p><pre class="programlisting"><!-- <osgi:service interface="greenpages.Directory" ref="directory"/> -->
-</pre><p>
- </p><p>
- Now save the updated file which will cause the application to be updated and refreshed on the server.
- Switch back to the Web browser and click
- <span class="emphasis"><em>Submit</em></span> again.
- </p><p>
- This time eight results should be returned. Clicking on any of the
- <span class="emphasis"><em>View</em></span> links will display the listing’s details.
- The application is now working.
- All that remains is to apply some best practices to the middle tier.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch05s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch05.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch05s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5.3 Building the JPA module </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 5.5 Applying best practices to the middle tier</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s05.html
deleted file mode 100644
index 33c0627..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch05s05.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>5.5 Applying best practices to the middle tier</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch05.html" title="5. The Middle Tier"><link rel="prev" href="ch05s04.html" title="5.4 Trying out the JPA middle tier"><link rel="next" href="ch06.html" title="6. Testing GreenPages"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5.5 Applying best practices to the middle tier</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05s04.html">Prev</a> </td><th width="60%" align="center">5. The Middle Tier</th><td width="20%" align="right"> <a accesskey="n" href="ch06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.applying-best-practices"></a>5.5 Applying best practices to the middle tier</h2></div></div></div><p>
- While the application middle tier now works as required, it does not observe a few Spring-related best practices.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.applying-best-practices.transactions"></a>Using transactions</h3></div></div></div><p>
- At the moment, the middle tier does not make any use of transactions. This isn’t a problem while the
- database access methods are only running single queries, but could lead to problems in the future if the
- application is made more complex. Thankfully, adding the use of transactions to the middle tier is simple.
- </p><p>
- Open <code class="literal">module-context.xml</code> in the <code class="literal">META-INF/spring</code> folder of
- <code class="literal">greenpages.jpa</code>. Add the following bean definition to create a transaction manager and
- associate it with the context’s <code class="literal">EntityManager</code>:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- Transaction manager for a single JPA EntityManagerFactory (alternative to JTA)
- --</span>>
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"transactionManager"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.orm.jpa.JpaTransactionManager"</span>
- <span class="hl-attribute">p:entityManagerFactory-ref</span>=<span class="hl-value">"entityManagerFactory"</span> />
-</pre><p>
- (Save it, and the <code class="literal">greenpages.jpa</code> module will be refreshed.)
- </p><p>
- Next, Spring must be told to enable transaction management. In keeping with the use of annotation-based configuration
- for the <code class="literal">EntityManager</code>, annotation-based transaction configuration will also be used. Add the following
- to enable AspectJ-powered transaction demarcation for appropriately annotated beans:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- Instruct Spring to perform declarative transaction management
- automatically on annotated classes.
- --</span>>
- <<span class="hl-tag">tx:annotation-driven</span> <span class="hl-attribute">mode</span>=<span class="hl-value">"aspectj"</span> />
-</pre><p>
- </p><p>
- Save the updated file which will trigger (another) successful refresh of <code class="literal">greenpages.jpa</code>.
- </p><p>
- Lastly, <code class="literal">JpaDirectory</code> needs to be annotated so that it is identified as requiring Spring-based
- transaction management. Open <code class="literal">JpaDirectory.java</code> in <code class="literal">greenpages.jpa</code>.
- Annotate the class with
- <code class="literal">@Transactional</code> and add an
- import for <code class="literal">org.springframework.transaction.annotation.Transactional</code>, which Eclipse should suggest:
-</p><pre class="programlisting"><span class="hl-keyword">import</span> org.springframework.transaction.annotation.Transactional;
-
-@Transactional
-<span class="hl-keyword">final</span> <span class="hl-keyword">class</span> JpaDirectory <span class="hl-keyword">implements</span> Directory {
-…
-</pre><p>
- </p><p>
- Save the updated file triggering another successful refresh: <code class="literal">JpaDirectory</code> is now
- transactional.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.applying-best-practices.exception-translation"></a>Enabling exception translation</h3></div></div></div><p>
- When using JPA, the standard exceptions are somewhat out of keeping with Spring’s exception
- model. Spring provides support for automatically translating these exceptions into Spring’s
- <code class="literal">DataAccessException</code> hierarchy.
- </p><p>
- Open <code class="literal">module-context.xml</code> for <code class="literal">greenpages.jpa</code> again and add the
- following bean definition to add the exception translator to the application context:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- Post-processor to perform exception translation on @Repository classes
- (from native exceptions such as JPA PersistenceExceptions to
- Spring&rsquo;s DataAccessException hierarchy).
- --</span>>
- <<span class="hl-tag">bean</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"</span> />
-</pre><p>
- </p><p>
- Save the updated file. The translation will only occur on classes that are annotated with
- Spring’s <code class="literal">@Repository</code> stereotype annotation.
- <code class="literal">JpaDirectory</code> needs to have this annotation added to it complete the
- enabling of the exception translation.
- </p><p>
- Open <code class="literal">JpaDirectory.java</code> again, annotate the class with
- <code class="literal">@Repository</code> and add an import for
- <code class="literal">org.springframework.stereotype.Repository</code>:
-</p><pre class="programlisting"><span class="hl-keyword">import</span> org.springframework.stereotype.Repository;
-
-@Transactional
-@Repository
-<span class="hl-keyword">final</span> <span class="hl-keyword">class</span> JpaDirectory <span class="hl-keyword">implements</span> Directory {
-</pre><p>
- </p><p>
- Save the updated file.
- </p><p>
- At this point the redeploy of the GreenPages application may fail with an error similar to this:
-</p><pre class="programlisting"><SPDE0100E> The class with name 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor',
-referenced by bean 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0',
-could not be loaded by class loader 'ServerBundleClassLoader: [bundle=greenpages-1-greenpages.jpa_2.3.0]':
-…
-</pre><p>
-which indicates that there is some package (<code class="code">org.springframework.dao.annotation</code>) which is not
-available to the “<span class="quote"><code class="code">BundleClassLoader</code></span>” for bundle <code class="code">greenpages-1-greenpages.jpa_2.3.0</code>.
-We should look in the <code class="literal">MANIFEST.MF</code> file for this bundle, and see that this package is not
-imported (in the <code class="literal">Import-Package</code> header). Since Bundlor generated this file (controlled by the
-template file <code class="literal">template.mf</code>) we should check that the manifest was re-generated on our last change.
- </p><p>
- Open <code class="literal">template.mf</code> in <code class="literal">greenpages.jpa</code> and,
- in the <span class="emphasis"><em>Overview</em></span> pane, click on <span class="emphasis"><em>Update MANIFEST.MF</em></span>
- in the <span class="emphasis"><em>Bundle Actions</em></span> section. The <code class="literal">MANIFEST.MF</code> file
- is updated, and the application is redeployed, this time successfully. It might be worthwhile
- checking the option <span class="emphasis"><em>Automatically update MANIFEST.MF in the background</em></span> on
- the <code class="literal">template.mf</code> <span class="emphasis"><em>Overview</em></span> pane so that the <code class="literal">MANIFEST.MF
- </code> is kept up to date as the project is changed.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.applying-best-practices.versioning-imports"></a>Versioning imports</h3></div></div></div><p>
- By default, Bundlor generates <code class="literal">Import-Package</code> entries with no version range
- specified. In the absence of a version range, the OSGi default of “<span class="quote">any version</span>” is used.
- Whilst this is very flexible it’s generally a good idea to restrict an import by
- specifying a narrower range. This can be achieved by providing Bundlor with some additional
- information in the manifest template.
- </p><p>
- Open <code class="literal">template.mf</code> for <code class="literal">greenpages.jpa</code> and add the following
- <code class="literal">Import-Template</code> header:
-</p><pre class="programlisting">Import-Template: org.springframework.*;version="[3.0,3.1)",
- greenpages;version="[2.0,2.1)",
- javax.persistence;version="[1.0.0,1.0.0]"
-</pre><p>
- If there is already an <code class="literal">Import-Template</code> header in the template, extend it to include the
- above package version range specifications.
- </p><p>
- This header tells Bundlor that all imports of <code class="literal">org.springframework</code> packages
- should be in the range <code class="literal">3.0</code> inclusive to <code class="literal">3.1</code>
- exclusive, that an import of the <code class="literal">greenpages</code> package should be in the
- range <code class="literal">2.0</code> inclusive to <code class="literal">2.1</code> exclusive, and that an import of
- <code class="literal">javax.persistence</code> should be at exactly version <code class="literal">1.0.0</code>.
- </p><p>
- Bundlor has also generated an import for the <code class="literal">javax.sql</code> package due to
- the <code class="literal">greenpages.jpa</code> module’s use of <code class="literal">javax.sql.DataSource</code>.
- This class is provided by the JRE and as such is generally considered to be unversioned, that is it
- has the default OSGi version of zero. If version zero is <span class="emphasis"><em>precisely</em></span> what is required
- then add the following to the <code class="literal">Import-Template</code> header:
-</p><pre class="programlisting">,javax.sql;version="[0,0]"
-</pre><p>
- but if “<span class="quote">any</span>” version is acceptable add the following instead:
-</p><pre class="programlisting">,javax.sql;version="0"
-</pre><p>
- Either of these will successfully allow GreenPages to deploy and work correctly. The difference
- is in the level of flexibility allowed with the external dependency, something which is probably
- irrelevant in this case, but with other package sources might be important.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.applying-best-practices.congratulations"></a>Congratulations!</h3></div></div></div><p>
- The GreenPages middle tier is now complete and observes some “<span class="quote">best practice</span>”
- development with Spring and OSGi.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch05s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch05.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5.4 Trying out the JPA middle tier </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6. Testing GreenPages</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06.html
deleted file mode 100644
index a29df01..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06.html
+++ /dev/null
@@ -1,29 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6. Testing GreenPages</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="prev" href="ch05s05.html" title="5.5 Applying best practices to the middle tier"><link rel="next" href="ch06s02.html" title="6.2 Single bundle integration testing"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6. Testing GreenPages</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05s05.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch06s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="testing.greenpages"></a>6. Testing GreenPages</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="testing.greenpages.introduction"></a>6.1 Introduction</h2></div></div></div><p>
- Testing is one of the most important aspects of software development. Without testing it would be difficult
- to determine if a piece of code worked properly, changes would have undetected consequences, and the quality
- of products would generally be lower.
- </p><p>
- There are two major categories of testing generally recognised today: unit testing
- and integration testing. In the context of the
- GreenPages application, <span class="emphasis"><em>unit testing</em></span> means testing a single class in isolation from other application code.
- This type of testing does not change at all when developing for Web Server.
- </p><p>
- In our application <span class="emphasis"><em>integration testing</em></span> means testing an application or
- portion of an application with other code. This kind of testing does look a bit different when developing
- for Web Server. In most cases Web Server applications are made up of small bundles that consume services through the
- OSGi registry. In the following steps a single bundle and the entire GreenPages
- application will be integration tested outside the container.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch05s05.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch06s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5.5 Applying best practices to the middle tier </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.2 Single bundle integration testing</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06s02.html
deleted file mode 100644
index 22eeaf3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06s02.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.2 Single bundle integration testing</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch06.html" title="6. Testing GreenPages"><link rel="prev" href="ch06.html" title="6. Testing GreenPages"><link rel="next" href="ch06s03.html" title="6.3 Contributing OSGi sourced dependencies"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.2 Single bundle integration testing</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06.html">Prev</a> </td><th width="60%" align="center">6. Testing GreenPages</th><td width="20%" align="right"> <a accesskey="n" href="ch06s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="testing.greenpages.single.bundle"></a>6.2 Single bundle integration testing</h2></div></div></div><p>
- One of the most common forms of integration testing is ensuring that the object relational mapping in an
- application is working properly. This kind of testing typically uses a data access object to retrieve data
- from a live database. In this step a test case for the <code class="classname">JpaDirectory</code>
- class is created.
- </p><p>
- Before proceeding, stop any Web Server instance that was previously running.
- </p><p>
- Open the <code class="classname">greenpages.jpa.JpaDirectorySpringContextTests</code> class in the
- <code class="filename">src/test/java</code> source folder of the <code class="literal">greenpages.jpa</code> project. This
- class contains a method that uses <span class="emphasis"><em>JUnit</em></span> to test that a search completes
- correctly. Rather than instantiate
- this class directly in the test, the Spring Test Framework is used to instantiate and inject a
- <code class="classname">JpaDirectory</code> based on the <code class="literal">META-INF/spring/module-context.xml</code> file.
- </p><p>
- Add Spring Test Framework declarations to the test class. These declarations run the test with the
- <code class="classname">SpringJunit4ClassRunner</code> and configure the test with the
- <code class="literal">classpath:/META-INF/spring/module-context.xml</code> file:
-</p><pre class="programlisting">@RunWith(SpringJUnit4ClassRunner.<span class="hl-keyword">class</span>)
-@ContextConfiguration(locations = <span class="hl-string">"classpath:/META-INF/spring/module-context.xml"</span>)
-@TestExecutionListeners(value = DependencyInjectionTestExecutionListener.<span class="hl-keyword">class</span>)
-<span class="hl-keyword">public</span> <span class="hl-keyword">class</span> JpaDirectorySpringContextTests {
-…
-</pre><p>
- Use Eclipse to suggest the necessary imports until there are no errors.
- </p><p>
- When this configuration is complete, click on the <span class="emphasis"><em>Run</em></span> drop-down menu and select
- <span class="emphasis"><em>Run Configurations…</em></span>. In the the dialog that opens select
- <span class="guimenu">JUnit</span> → <span class="guimenuitem">JpaDirectorySpringContextTests</span>
- and press <span class="emphasis"><em>Run</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/testing-greenpages/jpa-test-runner.png" align="middle"></div><p>
- </p><p>
- This test run will fail because there is no <code class="interfacename">DataSource</code> bean to be injected;
- it is typically sourced from the OSGi service registry at runtime:
-</p><pre class="programlisting">Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException:
- No bean named 'dataSource' is defined
-</pre><p>
- The next step will correct this error.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6. Testing GreenPages </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.3 Contributing OSGi sourced dependencies</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06s03.html
deleted file mode 100644
index 79151fb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06s03.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.3 Contributing OSGi sourced dependencies</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch06.html" title="6. Testing GreenPages"><link rel="prev" href="ch06s02.html" title="6.2 Single bundle integration testing"><link rel="next" href="ch06s04.html" title="6.4 Multi bundle integration testing"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.3 Contributing OSGi sourced dependencies</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s02.html">Prev</a> </td><th width="60%" align="center">6. Testing GreenPages</th><td width="20%" align="right"> <a accesskey="n" href="ch06s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="testing.greenpages.contributing.osgi"></a>6.3 Contributing OSGi sourced dependencies</h2></div></div></div><p>
- In the previous step the <code class="classname">JpaDirectorySpringContextTests</code> test failed because it did
- not have a <code class="interfacename">DataSource</code> to be injected. In this step, an
- “<span class="quote">in-process</span>” database is instantiated and populated with data for testing.
- </p><p>
- Open the <code class="filename">test-context.xml</code> file in the
- <code class="literal">src/test/resources</code> <code class="filename">META-INF/spring</code> folder.
- In this file, define two beans; a
- <code class="interfacename">DataSource</code> and a <code class="classname">TestDataPopulator</code>.
- These two beans
- will provide a test <code class="interfacename">DataSource</code> complete with test data.
-</p><pre class="programlisting"> <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.apache.commons.dbcp.BasicDataSource"</span>
- <span class="hl-attribute">p:driverClassName</span>=<span class="hl-value">"org.h2.Driver"</span> <span class="hl-attribute">p:url</span>=<span class="hl-value">"jdbc:h2:.~/greenpages-db/greenpages"</span>
- <span class="hl-attribute">p:username</span>=<span class="hl-value">"greenpages"</span> <span class="hl-attribute">p:password</span>=<span class="hl-value">"pass"</span> <span class="hl-attribute">init-method</span>=<span class="hl-value">"createDataSource"</span>
- <span class="hl-attribute">destroy-method</span>=<span class="hl-value">"close"</span> />
-
- <<span class="hl-tag">bean</span> <span class="hl-attribute">class</span>=<span class="hl-value">"greenpages.jpa.TestDataPopulator"</span> <span class="hl-attribute">init-method</span>=<span class="hl-value">"populate"</span>>
- <<span class="hl-tag">constructor-arg</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"dataSource"</span> />
- <<span class="hl-tag">constructor-arg</span> <span class="hl-attribute">value</span>=<span class="hl-value">"file:../../db/db.sql"</span> />
- <<span class="hl-tag">/bean</span>>
-</pre><p>
- </p><p>
- Open the <code class="classname">JpaDirectorySpringContextTests</code> class and update the
- <code class="interfacename">ContextConfiguration</code> annotation to point at both the
- <code class="filename">module-context.xml</code> file and the <code class="filename">test-context.xml</code> file:
-</p><pre class="programlisting">@ContextConfiguration(locations = {
- <span class="hl-string">"classpath:/META-INF/spring/module-context.xml"</span>,
- <span class="hl-string">"classpath:/META-INF/spring/test-context.xml"</span> })
-</pre><p>
- </p><p>
- Once again use the <code class="literal">JpaDirectorySpringContextTests</code> JUnit profile to run the test class.
- Now that there is a <code class="interfacename">DataSource</code> being contributed, the test will pass.
- If the test fails, check that the H2 database server is still running in the background.
- </p><p>
- Proceed to the next step.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.2 Single bundle integration testing </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.4 Multi bundle integration testing</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06s04.html
deleted file mode 100644
index a3a9c52..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch06s04.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.4 Multi bundle integration testing</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch06.html" title="6. Testing GreenPages"><link rel="prev" href="ch06s03.html" title="6.3 Contributing OSGi sourced dependencies"><link rel="next" href="ch07.html" title="7. Automated Build"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.4 Multi bundle integration testing</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s03.html">Prev</a> </td><th width="60%" align="center">6. Testing GreenPages</th><td width="20%" align="right"> <a accesskey="n" href="ch07.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="testing.greenpages.application"></a>6.4 Multi bundle integration testing</h2></div></div></div><p>
- Earlier a single bundle was integration tested by providing a test implementation of its
- <code class="interfacename">DataSource</code> dependency.
- When integration testing it is often a good idea to
- test the entire application outside of the container.
- In this step a test case for the
- entire GreenPages application is created, starting with the <code class="classname">GreenPagesController</code> class
- and descending all the way to a database.
- It would be sensible to create this in a separate test bundle
- but as one of the bundles involved here is a web bundle the tests will have to go in there.
- </p><p>
- Since this project will be testing the GreenPages application as a whole, it needs to depend on the bundles
- that make up the application.
- Open the <code class="filename">pom.xml</code> file for the <code class="literal">greenpages.web</code>
- project and add a dependency declaration for the <code class="literal">greenpages.jpa</code> bundle:
-</p><pre class="programlisting"> <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.jpa<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">scope</span>>test<<span class="hl-tag">/scope</span>>
- <<span class="hl-tag">/dependency</span>>
-</pre><p>
- noting that the scope is <code class="literal">test</code>.
- </p><p>
- Open the <code class="classname">GreenPagesSpringContextTests</code> class
- and add the Spring Test Framework declarations.
- These declarations should run the test with the
- <code class="classname">SpringJunit4ClassRunner</code> and configure the test with the
- <code class="literal">classpath*:/META-INF/spring/module-context.xml</code>,
- <code class="literal">file:src/main/webapp/WEB-INF/greenpages-servlet.xml</code> and
- <code class="literal">classpath:/META-INF/spring/test-context.xml</code> files. Note the use of
- <code class="literal">classpath*:</code> with respect to the <code class="literal">module-context.xml</code> path.
- This will
- cause Spring to look for files that match that path in all of the bundles on the classpath meaning that all
- the application beans will be instantiated.
- Also, as we do not want the <code class="literal">WEB-INF</code> folder
- on the classpath we must reference the servlet context for GreenPages with a full file path:
-</p><pre class="programlisting">@RunWith(SpringJUnit4ClassRunner.<span class="hl-keyword">class</span>)
-@ContextConfiguration(locations = {
- <span class="hl-string">"classpath*:/META-INF/spring/module-context.xml"</span>,
- <span class="hl-string">"file:src/main/webapp/WEB-INF/greenpages-servlet.xml"</span>,
- <span class="hl-string">"classpath:/META-INF/spring/test-context.xml"</span> })
-@TestExecutionListeners(value = DependencyInjectionTestExecutionListener.<span class="hl-keyword">class</span>)
-<span class="hl-keyword">public</span> <span class="hl-keyword">class</span> GreenPagesSpringContextTests {
-…
-</pre><p>
- It may be necessary to click on Update <code class="literal">MANIFEST.MF</code> on the template overview pane
- and <span class="emphasis"><em>Update Dependencies</em></span> from the <span class="emphasis"><em>Maven</em></span> menu,
- before Eclipse will suggest appropriate imports here.
- </p><p>
- When this configuration is complete, click on the <span class="emphasis"><em>Run</em></span> drop-down and select
- <span class="emphasis"><em>Run Configurations…</em></span>.
- In the the dialog that opens select
- <span class="guimenu">JUnit</span> → <span class="guimenuitem">GreenPagesSpringContextTests</span>
- and press <span class="emphasis"><em>Run</em></span>;
- </p><div class="mediaobject" align="center"><img src="images/testing-greenpages/integration-test-runner.png" align="middle"></div><p>
- </p><p>
- When this test is run, Spring creates an <code class="interfacename">ApplicationContext</code> that is built
- from the <code class="filename">module-context.xml</code> configuration files from all of the bundles.
- Because of
- this all of the internal dependencies are satisfied by the beans created directly by the bundles.
- </p><p>
- The test should pass. If it doesn't, try the usual Eclipse dance steps of opening and closing the project and doing a clean rebuild to clear the problem.
- </p><p>
- There are warnings output by this test concerning <code class="literal">log4j</code>:
-</p><pre class="programlisting">log4j:WARN No appenders could be found for logger
- (org.springframework.test.context.junit4.SpringJUnit4ClassRunner).
-log4j:WARN Please initialize the log4j system properly.
-</pre><p>
- These warnings are benign, and do not influence the tests in any way.
- </p><p>
- The next chapter constructs an automated build system that might be used to build GreenPages
- (and run its tests) outside of an interactive development environment.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.3 Contributing OSGi sourced dependencies </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7. Automated Build</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07.html
deleted file mode 100644
index 91fb232..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7. Automated Build</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="prev" href="ch06s04.html" title="6.4 Multi bundle integration testing"><link rel="next" href="ch07s02.html" title="7.2 Setting up for Automated Build"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7. Automated Build</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s04.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch07s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="automated.build"></a>7. Automated Build</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.introduction"></a>7.1 Introduction</h2></div></div></div><p>
- One of the most important components in application development is the automated build. This permits
- application artifacts to be created outside of the developer’s IDE. The application can be
- created and tested in a variety of environments including continuous integration.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s04.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch07s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.4 Multi bundle integration testing </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.2 Setting up for Automated Build</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s02.html
deleted file mode 100644
index 39ca9c0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s02.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.2 Setting up for Automated Build</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch07.html" title="7. Automated Build"><link rel="prev" href="ch07.html" title="7. Automated Build"><link rel="next" href="ch07s03.html" title="7.3 Create POM"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.2 Setting up for Automated Build</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07.html">Prev</a> </td><th width="60%" align="center">7. Automated Build</th><td width="20%" align="right"> <a accesskey="n" href="ch07s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.setup"></a>7.2 Setting up for Automated Build</h2></div></div></div><p>
- Before building and deploying from the command line, it is important to clean up the artifacts that Eclipse
- has deployed. In this section the GreenPages application will be undeployed within Eclipse and all of
- the GreenPages bundles built from the command line.
- </p><p>
- Right-click on the <code class="literal">greenpages</code> application in the <code class="literal">Servers</code> view and
- select <span class="emphasis"><em>Remove</em></span>. Once this is complete close Eclipse: it is no longer needed.
- </p><div class="mediaobject" align="center"><img src="images/automated-build/remove-application.png" align="middle"></div><p>
- </p><p>
- Run the following command from a command prompt with the <code class="filename">$GREENPAGES_HOME/start</code> as the current directory. This will build
- the individual bundles that make up the GreenPages application:
- </p><pre class="programlisting">mvn clean install</pre><p>
- </p><p>
- The first time this is run will cause Maven to download quite a few packages. It is likely also that
- this does not build successfully on the first try, due to warnings from Bundlor. These warnings are due to
- the lack of information regarding some of the packages required by <code class="literal">greenpages.db</code> and <code class="literal">greenpages.web</code>.
- For example warnings like the following may be issued:
-</p><pre class="programlisting">[WARNING] Bundlor Warnings:
-[WARNING] <SB0001W>: The import of package javax.sql does not specify a version.
-[WARNING] <SB0001W>: The import of package org.apache.commons.dbcp does not specify a version.
-[INFO] ------------------------------------------------------------------------
-[ERROR] BUILD ERROR
-[INFO] ------------------------------------------------------------------------
-[INFO] Bundle transformer returned warnings.
- Please fix manifest template at '/opt/greenpages-2.3.0.RELEASE/start/greenpages.db/template.mf'
- and try again.
-</pre><p>
- which indicate that there is no information in the <code class="literal">template.mf</code> file in the <code class="literal">greenpages.db</code> project
- to inform Bundlor what version of these packages to generate in the <code class="literal">MANIFEST.MF</code> for that bundle.
- </p><p>
- To correct these problems add the following lines to the <code class="literal">template.mf</code> file for
- the <code class="literal">greenpages.db</code> bundle:
-</p><pre class="programlisting">Import-Template: javax.sql;version="0",
- org.apache.commons.dbcp;version="[1.2.2.osgi, 1.2.2.osgi]"
-</pre><p>
- and, if further warnings are issued, in the <code class="literal">template.mf</code> file of other bundles (for example, <code class="literal">greenpages.jpa</code>).
- </p><p>
- When the <code class="literal">mvn</code> command returns successfully, go to the next step.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7. Automated Build </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.3 Create POM</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s03.html
deleted file mode 100644
index 03f9891..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s03.html
+++ /dev/null
@@ -1,67 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.3 Create POM</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch07.html" title="7. Automated Build"><link rel="prev" href="ch07s02.html" title="7.2 Setting up for Automated Build"><link rel="next" href="ch07s04.html" title="7.4 Adding the par plugin"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.3 Create POM</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s02.html">Prev</a> </td><th width="60%" align="center">7. Automated Build</th><td width="20%" align="right"> <a accesskey="n" href="ch07s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.create.pom"></a>7.3 Create POM</h2></div></div></div><p>
- All of the projects except the PAR project have Maven POM files for building. In this step
- an initial POM file for the PAR is created.
- </p><p>
- Using a text editor create a file called <code class="filename">$GREENPAGES_HOME/start/greenpages/pom.xml</code>.
- Open this file and add the following skeleton to it:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">project</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://maven.apache.org/POM/4.0.0"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"</span>>
-
- <<span class="hl-tag">parent</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.parent<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>2.3.0.RELEASE<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">relativePath</span>>../parent<<span class="hl-tag">/relativePath</span>>
- <<span class="hl-tag">/parent</span>>
-
- <<span class="hl-tag">modelVersion</span>>4.0.0<<span class="hl-tag">/modelVersion</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">name</span>>GreenPages PAR<<span class="hl-tag">/name</span>>
- <<span class="hl-tag">packaging</span>>par<<span class="hl-tag">/packaging</span>>
-
- <<span class="hl-tag">dependencies</span>>
- <<span class="hl-tag">/dependencies</span>>
-
- <<span class="hl-tag">build</span>>
- <<span class="hl-tag">plugins</span>>
- <<span class="hl-tag">/plugins</span>>
- <<span class="hl-tag">/build</span>>
-
-<<span class="hl-tag">/project</span>>
-</pre><p>
- ensuring that the version numbers are consistent
- (for example, <code class="literal">2.3.0.RELEASE</code> might be <code class="literal">2.3.0</code>
- depending on which version of <code class="literal">greenpages</code> being developed).
- </p><p>
- This skeleton defines a basic configuration with a parent POM. Notice that the <code class="literal">packaging</code>
- type is <code class="literal">par</code>. After this file is created execute the following command from the
- <code class="filename">$GREENPAGES_HOME/start/greenpages</code> directory.
- </p><pre class="programlisting">mvn clean package</pre><p>
- </p><p>
- This command returns an error indicating that Maven does not know how to build a PAR:
-</p><pre class="programlisting">[INFO] ------------------------------------------------------------------------
-[ERROR] BUILD ERROR
-[INFO] ------------------------------------------------------------------------
-[INFO] The plugin 'org.apache.maven.plugins:maven-par-plugin' does not exist
-[INFO] or no valid version could be found
-[INFO] ------------------------------------------------------------------------
-</pre><p>
- The next step will correct this.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.2 Setting up for Automated Build </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.4 Adding the par plugin</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s04.html
deleted file mode 100644
index 4025248..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s04.html
+++ /dev/null
@@ -1,79 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.4 Adding the par plugin</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch07.html" title="7. Automated Build"><link rel="prev" href="ch07s03.html" title="7.3 Create POM"><link rel="next" href="ch07s05.html" title="7.5 Adding the dependency plugin"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.4 Adding the par plugin</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s03.html">Prev</a> </td><th width="60%" align="center">7. Automated Build</th><td width="20%" align="right"> <a accesskey="n" href="ch07s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.par.plugin"></a>7.4 Adding the <code class="literal">par</code> plugin</h2></div></div></div><p>
- Thorsten Maus contributed a Maven plugin to SpringSource (see <a class="xref" href="apas02.html" title="A.2 Documentation">Section A.2, “Documentation”</a>)
- that builds a PAR file from a list of dependencies. In this step the Maven <code class="literal">par</code> plugin is added
- to properly build a PAR artifact type.
- </p><p>
- In the <code class="literal"><build><plugins>…</plugins></build></code> section, add a plugin declaration for the
- <code class="literal">par</code> plugin.
-</p><pre class="programlisting"><<span class="hl-tag">plugin</span>>
- <<span class="hl-tag">groupId</span>>org.apache.maven.plugins<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>maven-par-plugin<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>1.0.0.RELEASE<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">applicationSymbolicName</span>>greenpages<<span class="hl-tag">/applicationSymbolicName</span>>
- <<span class="hl-tag">applicationDescription</span>>GreenPages<<span class="hl-tag">/applicationDescription</span>>
- <<span class="hl-tag">/configuration</span>>
-<<span class="hl-tag">/plugin</span>>
-</pre><p>
- </p><p>
- Declare the list of bundles to be packaged in the PAR as dependencies of the PAR project.
-</p><pre class="programlisting"><<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.app<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
-<<span class="hl-tag">/dependency</span>>
-<<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.jpa<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
-<<span class="hl-tag">/dependency</span>>
-<<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.db<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
-<<span class="hl-tag">/dependency</span>>
-<<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.web<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">type</span>>war<<span class="hl-tag">/type</span>>
-<<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- Now, run the following command.
-</p><pre class="programlisting">mvn clean package</pre><p>
- </p><p>
- This command will now complete successfully and build a PAR into <code class="filename">target/</code>:
-</p><pre class="programlisting">[INFO] Scanning for projects...
- [INFO] ------------------------------------------------------------------------
- [INFO] Building GreenPages PAR
- [INFO] task-segment: [clean, package]
- [INFO] ------------------------------------------------------------------------
- [INFO] [clean:clean {execution: default-clean}]
- [INFO] [resources:resources {execution: default-resources}]
- [INFO] [par:par {execution: default-par}]
- [INFO] Assembling Artifacts for PAR '…/start/greenpages/target/greenpages-2.3.0.RELEASE.par'
- [INFO] Added 'greenpages.app.jar'
- [INFO] Added 'greenpages.jpa.jar'
- [INFO] Added 'greenpages.db.jar'
- [INFO] Added 'greenpages.web.war'
- [INFO] [com.springsource.bundlor.:transform {execution: bundlor}]
- [INFO] Ignored project with non-bundle packaging: [par]
- [INFO] ------------------------------------------------------------------------
- [INFO] BUILD SUCCESSFUL
- [INFO] ------------------------------------------------------------------------</pre><p>
- Proceed to the next step.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.3 Create POM </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.5 Adding the dependency plugin</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s05.html
deleted file mode 100644
index e8cfd3c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s05.html
+++ /dev/null
@@ -1,88 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.5 Adding the dependency plugin</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch07.html" title="7. Automated Build"><link rel="prev" href="ch07s04.html" title="7.4 Adding the par plugin"><link rel="next" href="ch07s06.html" title="7.6 Automatically running the tests"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.5 Adding the dependency plugin</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s04.html">Prev</a> </td><th width="60%" align="center">7. Automated Build</th><td width="20%" align="right"> <a accesskey="n" href="ch07s06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.dependency.plugin"></a>7.5 Adding the <code class="literal">dependency</code> plugin</h2></div></div></div><p>
- Maven now successfully builds the PAR for the application, however the dependencies of the PAR
- are not apparent.
- In this step the Maven <code class="literal">dependency</code> plugin is added to
- collect the transitive dependency graph for the PAR.
- </p><p>
- In the <code class="literal"><build><plugins>…</plugins></build></code> section
- (after the <code class="literal">par</code> plugin
- declaration), add a plugin declaration for the <code class="literal">dependency</code> plugin:
-</p><pre class="programlisting"><<span class="hl-tag">plugin</span>>
- <<span class="hl-tag">groupId</span>>org.apache.maven.plugins<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>maven-dependency-plugin<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">executions</span>>
- <<span class="hl-tag">execution</span>>
- <<span class="hl-tag">id</span>>copy-dependencies<<span class="hl-tag">/id</span>>
- <<span class="hl-tag">phase</span>>package<<span class="hl-tag">/phase</span>>
- <<span class="hl-tag">goals</span>>
- <<span class="hl-tag">goal</span>>copy-dependencies<<span class="hl-tag">/goal</span>>
- <<span class="hl-tag">/goals</span>>
- <<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">outputDirectory</span>>${project.build.directory}/par-provided<<span class="hl-tag">/outputDirectory</span>>
- <<span class="hl-tag">overWriteIfNewer</span>>true<<span class="hl-tag">/overWriteIfNewer</span>>
- <<span class="hl-tag">excludeGroupIds</span>>com.springsource.dmserver,org.apache.log4j<<span class="hl-tag">/excludeGroupIds</span>>
- <<span class="hl-tag">/configuration</span>>
- <<span class="hl-tag">/execution</span>>
- <<span class="hl-tag">/executions</span>>
-<<span class="hl-tag">/plugin</span>>
-</pre><p>
- </p><p>
- A dependency on Freemarker needs to be added to the other dependencies.
- This is required to ensure the Web
- bundle has the correct set of dependencies as well as the other bundles.
- Normally they would simply be resolved
- transitively from the bundle projects but the ‘war’ project does not pass on its dependencies;
- it expects
- them to be contained in its ‘lib’ directory.
- For this reason its dependencies must be given explicitly.
-</p><pre class="programlisting"><<span class="hl-comment">!-- Required for the web bundle as dependencies are not propagated up from war build types --</span>>
-<<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.freemarker<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.freemarker<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">scope</span>>provided<<span class="hl-tag">/scope</span>>
-<<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- The next step is to stop the Web bundle including its dependencies in a lib directory as they will be provided
- by the runtime enviroment. Add the following build section to the <code class="literal">greenpages.web</code> POM file.
-</p><pre class="programlisting"><<span class="hl-tag">build</span>>
- <<span class="hl-tag">plugins</span>>
- <<span class="hl-tag">plugin</span>>
- <<span class="hl-tag">artifactId</span>>maven-war-plugin<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>2.1-beta-1<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">packagingExcludes</span>>WEB-INF/lib/**<<span class="hl-tag">/packagingExcludes</span>>
- <<span class="hl-tag">/configuration</span>>
- <<span class="hl-tag">/plugin</span>>
- <<span class="hl-tag">/plugins</span>>
-<<span class="hl-tag">/build</span>></pre><p>
- </p><p>
- Run the following command.
-</p><pre class="programlisting">mvn clean package</pre><p>
- </p><p>
- When the command has completed, it will have copied all of the PAR’s dependencies into the
- <code class="filename">target/par-provided</code> directory.
- The output from Maven should include lines like these
-</p><pre class="programlisting">[INFO] [par:par]
-[INFO] Assembling Artifacts for PAR '/Users/chrisfrost/Repos/GIT/greenpages/solution/
- greenpages/target/greenpages-solution-2.3.0.RELEASE.par'
-[INFO] Added 'greenpages.app-solution.jar'
-[INFO] Added 'greenpages.jpa-solution.jar'
-[INFO] Added 'greenpages.db-solution.jar'
-[INFO] Added 'greenpages.web-solution.war'
-</pre><p>
- If the dependencies are produced, proceed to the next step.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07s06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.4 Adding the par plugin </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.6 Automatically running the tests</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s06.html
deleted file mode 100644
index 1344560..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s06.html
+++ /dev/null
@@ -1,38 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.6 Automatically running the tests</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch07.html" title="7. Automated Build"><link rel="prev" href="ch07s05.html" title="7.5 Adding the dependency plugin"><link rel="next" href="ch07s07.html" title="7.7 Deploying the application"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.6 Automatically running the tests</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s05.html">Prev</a> </td><th width="60%" align="center">7. Automated Build</th><td width="20%" align="right"> <a accesskey="n" href="ch07s07.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="running.tests"></a>7.6 Automatically running the tests</h2></div></div></div><p>
- Although the application is built, and dependencies produced for separate deployment, the tests
- are not run as part of that build.
- </p><p>
- Add (or replace) the following plug-in entry in the <code class="literal">pom.xml</code> file in the <code class="literal">parent</code>
- directory under <code class="literal">start</code>:
-</p><pre class="programlisting"><<span class="hl-tag">plugin</span>>
- <<span class="hl-tag">groupId</span>>org.apache.maven.plugins<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>maven-surefire-plugin<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">includes</span>>
- <<span class="hl-tag">include</span>>**/*Tests.java<<span class="hl-tag">/include</span>>
- <<span class="hl-tag">/includes</span>>
- <<span class="hl-tag">excludes</span>>
- <<span class="hl-tag">exclude</span>>**/Abstract*.java<<span class="hl-tag">/exclude</span>>
- <<span class="hl-tag">/excludes</span>>
- <<span class="hl-tag">junitArtifactName</span>>org.junit:com.springsource.org.junit<<span class="hl-tag">/junitArtifactName</span>>
- <<span class="hl-tag">argLine</span>>-javaagent:${user.home}/.m2/repository/org/springframework/org.springframework.instrument/3.0.0.M3/org.springframework.instrument-3.0.0.M3.jar<<span class="hl-tag">/argLine</span>>
- <<span class="hl-tag">/configuration</span>>
-<<span class="hl-tag">/plugin</span>></pre><p>
- where the location of the user Maven repository is hard-coded.
- </p><p>
- Now run <code class="literal">mvn clean install</code> from the <code class="literal">start</code> directory.
- Observe that the tests we constructed before are now run.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07s07.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.5 Adding the dependency plugin </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.7 Deploying the application</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s07.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s07.html
deleted file mode 100644
index 110affd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ch07s07.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.7 Deploying the application</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="ch07.html" title="7. Automated Build"><link rel="prev" href="ch07s06.html" title="7.6 Automatically running the tests"><link rel="next" href="apa.html" title="Appendix A. Further Resources"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.7 Deploying the application</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s06.html">Prev</a> </td><th width="60%" align="center">7. Automated Build</th><td width="20%" align="right"> <a accesskey="n" href="apa.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.deploy.application"></a>7.7 Deploying the application</h2></div></div></div><p>
- Maven can now build both the PAR application and the collection of dependencies required for the
- application. In this step the PAR and dependencies are copied to the Web Server and the PAR is started.
- </p><p>
- Change directory to <code class="literal">start/greenpages</code>.
- </p><p>
- Copy the JARs in the <code class="filename">target/par-provided</code> directory into the
- <code class="filename">$VWS_HOME/repository/usr/</code> directory.
- </p><p>
- Copy the PAR (<code class="literal">greenpages-2.3.0.RELEASE.par</code>) in the <code class="filename">target/</code> directory
- into the <code class="filename">$VWS_HOME/pickup</code> directory.
- </p><p>
- Start the Web Server and look for a message similar to:
-</p><pre class="programlisting"><DE0005I> Started par 'greenpages' version '2.3.0.RELEASE'.
-</pre><p>in the console output.
- </p><p>
- Once deployment of the GreenPages application has completed, navigate to
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- </p><p>
- The GreenPages application has been built from the command line,
- with a complete dependency set generated for independent deployment.
- </p><p>
- The automated build and test procedure is to run <code class="literal">mvn clean install</code> from the
- base directory, generating the component bundles, and then to run <code class="literal">mvn clean package</code> from
- the <code class="literal">greenpages</code> directory to generate the PAR and produce all its dependencies.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="apa.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.6 Automatically running the tests </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Appendix A. Further Resources</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/css/highlight.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/css/highlight.css
deleted file mode 100644
index 2cb42fd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/css/highlight.css
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- code highlight CSS resembling the Eclipse IDE default color schema and the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-.hl-keyword {
- color: #7F0055;
- font-weight: bold;
-}
-
-.hl-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-multiline-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-tag {
- color: #646571;
-}
-
-.hl-attribute {
- color: #7F0055;
-}
-
-.hl-value {
- color: #0093CF;
-}
-
-.hl-string {
- color: #0093CF;
-}
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/css/stylesheet.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/css/stylesheet.css
deleted file mode 100644
index b02eca7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/css/stylesheet.css
+++ /dev/null
@@ -1,77 +0,0 @@
-@IMPORT url("highlight.css");
-
-/*
- code CSS resembling the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-html {
- padding: 0pt;
- margin: 0pt;
-}
-
-body {
- margin-left: 10%;
- margin-right: 10%;
- color: #111111;
- font-family: Arial, Sans-serif;
-}
-
-div {
- margin: 0pt;
-}
-
-p {
- text-align: justify;
-}
-
-hr {
- border: 1px solid gray;
- background: gray;
-}
-
-a {
- color: #002E62; /* Dark Blue */
-}
-
-a:visited {
- color: #646571; /* Gray */
-}
-
-a:hover, a:active {
- color: #0093CF; /* Light Blue */
-}
-
-h1,h2,h3,h4 {
- color: #002E62;
- font-family: Arial, Sans-serif;
-}
-
-pre {
- line-height: 1.0;
- color: black;
-}
-
-pre.programlisting {
- font-size: 10pt;
- padding: 7pt 3pt;
- border: 1pt solid black;
- background: #eeeeee;
- clear: both;
-}
-
-div.table {
- margin: 1em;
- padding: 0.5em;
- text-align: center;
-}
-
-div.table table {
- display: table;
- width: 100%;
-}
-
-div.table td {
- padding-left: 7px;
- padding-right: 7px;
-}
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/annot-close.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/annot-close.png
deleted file mode 100644
index b9e1a0d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/annot-close.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/annot-open.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/annot-open.png
deleted file mode 100644
index 71040ec..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/annot-open.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/automated-build/remove-application.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/automated-build/remove-application.png
deleted file mode 100644
index 6ee8ce8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/automated-build/remove-application.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/blank.png
deleted file mode 100644
index 764bf4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/1.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/1.gif
deleted file mode 100644
index 9e7a87f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/1.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/1.png
deleted file mode 100644
index 7d47343..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/1.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/1.svg
deleted file mode 100644
index e2e87dc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/1.svg
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M10.428,10.411h0.56c3.78,0,4.788-1.96,4.872-3.444h3.22v19.88h-3.92V13.154h-4.732V10.411z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/10.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/10.gif
deleted file mode 100644
index e80f7f8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/10.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/10.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/10.png
deleted file mode 100644
index 997bbc8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/10.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/10.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/10.svg
deleted file mode 100644
index 4740f58..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/10.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.815,10.758h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.11H3.815V10.758z"/>
- <path style="fill:#FFFFFF;" d="M22.175,7.806c4.009,0,5.904,2.76,5.904,8.736c0,5.975-1.896,8.76-5.904,8.76
- c-4.008,0-5.904-2.785-5.904-8.76C16.271,10.566,18.167,7.806,22.175,7.806z M22.175,22.613c1.921,0,2.448-1.68,2.448-6.071
- c0-4.393-0.527-6.049-2.448-6.049c-1.92,0-2.448,1.656-2.448,6.049C19.727,20.934,20.255,22.613,22.175,22.613z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/11.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/11.gif
deleted file mode 100644
index 67f91a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/11.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/11.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/11.png
deleted file mode 100644
index ce47dac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/11.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/11.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/11.svg
deleted file mode 100644
index 09a0b2c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/11.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.209,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H5.209V10.412z"/>
- <path style="fill:#FFFFFF;" d="M18.553,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.359V12.764h-4.056V10.412z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/12.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/12.gif
deleted file mode 100644
index 54c4b42..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/12.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/12.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/12.png
deleted file mode 100644
index 31daf4e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/12.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/12.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/12.svg
deleted file mode 100644
index 9794044..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/12.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/13.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/13.gif
deleted file mode 100644
index dd5d7d9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/13.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/13.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/13.png
deleted file mode 100644
index 14021a8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/13.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/13.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/13.svg
deleted file mode 100644
index 64268bb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/13.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M20.611,14.636h0.529c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.288-2.185-2.137-2.185
- c-2.303,0-2.303,2.185-2.303,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.279,0,5.279,1.152,5.279,4.752
- c0,1.728-1.08,2.808-2.039,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/14.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/14.gif
deleted file mode 100644
index 3d7a952..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/14.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/14.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/14.png
deleted file mode 100644
index 64014b7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/14.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/14.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/14.svg
deleted file mode 100644
index 469aa97..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/14.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.146V10.412z"/>
- <path style="fill:#FFFFFF;" d="M28.457,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L22.746,7.46h3.815v10.656h1.896V20.732z
- M23.201,18.116c0-4.128,0.072-6.792,0.072-7.32h-0.048l-4.272,7.32H23.201z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/15.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/15.gif
deleted file mode 100644
index 1c9183d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/15.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/15.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/15.png
deleted file mode 100644
index 0d65765..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/15.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/15.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/15.svg
deleted file mode 100644
index 8202233..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/15.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M19.342,14.943c0.625-0.433,1.392-0.937,3.048-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.176,6.121-6.192,6.121c-2.664,0-5.376-1.584-5.544-5.016h3.36c0.144,1.391,0.888,2.326,2.376,2.326
- c1.607,0,2.544-1.367,2.544-3.191c0-1.512-0.72-3.047-2.496-3.047c-0.456,0-1.608,0.023-2.256,1.223l-3-0.143l1.176-9.361h9.36
- v2.832h-6.937L19.342,14.943z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/16.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/16.svg
deleted file mode 100644
index 01d6bf8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/16.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M24.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L19.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H24.309z M22.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C24.62,16.868,23.229,16.172,22.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/17.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/17.svg
deleted file mode 100644
index 0a04c55..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/17.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M27.838,11.006c-1.631,1.776-5.807,6.816-6.215,14.16h-3.457c0.36-6.816,4.632-12.24,6.072-13.776
- h-8.472l0.072-2.976h12V11.006z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/18.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/18.svg
deleted file mode 100644
index 1cb891b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/18.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/19.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/19.svg
deleted file mode 100644
index e6fbb17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/19.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.746h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.041h-3.36V13.097H4.146V10.746z"/>
- <path style="fill:#FFFFFF;" d="M20.225,20.898v0.023c0.192,1.176,0.936,1.68,1.968,1.68c1.392,0,2.783-1.176,2.808-4.752
- l-0.048-0.049c-0.768,1.152-2.088,1.441-3.24,1.441c-3.264,0-5.16-2.473-5.16-5.329c0-4.176,2.472-6.12,5.808-6.12
- c5.904,0,6,6.36,6,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.391H20.225z M22.434,16.553
- c1.176,0,2.472-0.84,2.472-2.855c0-1.944-0.841-3.145-2.568-3.145c-0.864,0-2.424,0.433-2.424,2.88
- C19.913,16.001,21.161,16.553,22.434,16.553z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/2.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/2.gif
deleted file mode 100644
index 94d42a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/2.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/2.png
deleted file mode 100644
index 5d09341..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/2.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/2.svg
deleted file mode 100644
index 07d0339..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/2.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M9.668,12.328c0-6.469,4.732-7.028,6.496-7.028c3.808,0,6.833,2.24,6.833,6.271
- c0,3.416-2.213,5.152-4.145,6.469c-2.632,1.848-4.004,2.744-4.452,3.668h8.624v3.472H9.444c0.14-2.324,0.308-4.76,4.62-7.896
- c3.584-2.604,5.012-3.612,5.012-5.853c0-1.315-0.84-2.828-2.744-2.828c-2.744,0-2.828,2.269-2.856,3.725H9.668z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/20.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/20.svg
deleted file mode 100644
index ccbfd40..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/20.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/21.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/21.svg
deleted file mode 100644
index 93ec53f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/21.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.306,13.151c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392v2.976H5.114c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H5.306z"/>
- <path style="fill:#FFFFFF;" d="M19.49,10.079h0.48c3.239,0,4.104-1.681,4.176-2.952h2.761v17.04h-3.361V12.431H19.49V10.079z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/22.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/22.svg
deleted file mode 100644
index f48c5f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/22.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/23.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/23.svg
deleted file mode 100644
index 6624212..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/23.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M21.612,14.636h0.528c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.287-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.521-0.911,2.521-2.808
- c0-2.328-2.257-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/24.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/24.svg
deleted file mode 100644
index a3d5525..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/24.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H4.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H4.972z"/>
- <path style="fill:#FFFFFF;" d="M30.124,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L24.412,7.46h3.816v10.656h1.896V20.732z
- M24.868,18.116c0-4.128,0.071-6.792,0.071-7.32h-0.047l-4.272,7.32H24.868z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/25.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/25.svg
deleted file mode 100644
index 56614a9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/25.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.676,14.276c0.624-0.433,1.393-0.937,3.049-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.177,6.12-6.193,6.12c-2.664,0-5.375-1.584-5.543-5.016h3.36c0.144,1.392,0.889,2.327,2.376,2.327
- c1.608,0,2.544-1.367,2.544-3.191c0-1.513-0.72-3.048-2.496-3.048c-0.455,0-1.607,0.023-2.256,1.224l-3-0.144l1.176-9.36h9.36
- v2.832h-6.937L20.676,14.276z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/26.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/26.svg
deleted file mode 100644
index 56faeac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/26.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M25.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L20.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H25.309z M23.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C25.62,16.868,24.229,16.172,23.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/27.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/27.svg
deleted file mode 100644
index a75c812..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/27.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M29.172,10.34c-1.632,1.776-5.808,6.816-6.216,14.16H19.5c0.36-6.816,4.632-12.24,6.072-13.776
- H17.1l0.072-2.976h12V10.34z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/28.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/28.svg
deleted file mode 100644
index 7f8cf1a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/28.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/29.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/29.svg
deleted file mode 100644
index cb63adf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/29.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.893,20.564v0.023c0.191,1.176,0.936,1.68,1.967,1.68c1.393,0,2.785-1.176,2.809-4.752
- l-0.048-0.048c-0.769,1.152-2.088,1.44-3.24,1.44c-3.264,0-5.16-2.473-5.16-5.328c0-4.176,2.472-6.12,5.807-6.12
- c5.904,0,6.001,6.36,6.001,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.392H20.893z M23.1,16.22
- c1.176,0,2.473-0.84,2.473-2.855c0-1.944-0.84-3.145-2.568-3.145c-0.863,0-2.424,0.433-2.424,2.88
- C20.58,15.668,21.828,16.22,23.1,16.22z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/3.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/3.gif
deleted file mode 100644
index dd3541a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/3.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/3.png
deleted file mode 100644
index ef7b700..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/3.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/3.svg
deleted file mode 100644
index 918be80..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/3.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M15.127,14.005h0.616c1.176,0,3.332-0.112,3.332-2.688c0-0.728-0.336-2.548-2.492-2.548
- c-2.688,0-2.688,2.548-2.688,3.248h-3.64c0-3.724,2.1-6.384,6.58-6.384c2.66,0,6.16,1.344,6.16,5.544
- c0,2.016-1.261,3.276-2.38,3.78v0.056c0.699,0.196,2.996,1.232,2.996,4.62c0,3.752-2.772,6.412-6.776,6.412
- c-1.876,0-6.916-0.42-6.916-6.636h3.836l-0.028,0.027c0,1.064,0.28,3.473,2.912,3.473c1.568,0,2.94-1.064,2.94-3.276
- c0-2.716-2.632-2.828-4.452-2.828V14.005z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/30.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/30.svg
deleted file mode 100644
index dc43ba1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/30.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M8.268,14.636h0.528c1.008,0,2.856-0.096,2.856-2.304c0-0.624-0.288-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.376,5.496-5.808,5.496
- c-1.608,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/4.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/4.gif
deleted file mode 100644
index 4bcbf7e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/4.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/4.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/4.png
deleted file mode 100644
index adb8364..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/4.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/4.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/4.svg
deleted file mode 100644
index 8eb6a53..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/4.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M21.891,20.784h-2.212v4.396h-3.92v-4.396h-7.84v-3.389L15.227,5.3h4.452v12.432h2.212V20.784z
- M15.759,17.731c0-4.815,0.084-7.924,0.084-8.54h-0.056l-4.984,8.54H15.759z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/5.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/5.gif
deleted file mode 100644
index 1c62b4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/5.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/5.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/5.png
deleted file mode 100644
index 4d7eb46..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/5.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/5.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/5.svg
deleted file mode 100644
index ca7a9f2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/5.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M14.035,14.252c0.728-0.504,1.624-1.092,3.556-1.092c2.66,0,6.02,1.848,6.02,6.411
- c0,2.717-1.372,7.141-7.224,7.141c-3.108,0-6.272-1.849-6.468-5.853h3.92c0.168,1.624,1.036,2.717,2.772,2.717
- c1.876,0,2.968-1.597,2.968-3.725c0-1.764-0.839-3.556-2.912-3.556c-0.532,0-1.876,0.028-2.632,1.428l-3.5-0.168l1.372-10.92
- h10.919v3.304h-8.092L14.035,14.252z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/6.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/6.gif
deleted file mode 100644
index 23bc555..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/6.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/6.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/6.png
deleted file mode 100644
index 0ba694a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/6.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/6.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/6.svg
deleted file mode 100644
index 783a0b9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/6.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M19.106,10.673c-0.112-1.12-0.84-1.904-2.296-1.904c-2.548,0-3.136,2.912-3.276,5.488l0.056,0.056
- c0.532-0.728,1.512-1.651,3.724-1.651c4.116,0,6.077,3.164,6.077,6.131c0,4.34-2.66,7.252-6.497,7.252
- c-6.02,0-7.196-5.039-7.196-9.996c0-3.78,0.504-10.416,7.392-10.416c0.812,0,3.08,0.308,4.061,1.288
- c1.092,1.063,1.483,1.652,1.848,3.752H19.106z M16.614,15.797c-1.484,0-2.996,0.924-2.996,3.416c0,2.156,1.232,3.697,3.108,3.697
- c1.428,0,2.745-1.094,2.745-3.781C19.471,16.609,17.846,15.797,16.614,15.797z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/7.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/7.gif
deleted file mode 100644
index e55ce89..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/7.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/7.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/7.png
deleted file mode 100644
index 472e96f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/7.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/7.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/7.svg
deleted file mode 100644
index 59b3714..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/7.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M24.28,9.66c-1.904,2.071-6.776,7.951-7.252,16.52h-4.032c0.42-7.952,5.404-14.28,7.084-16.072
- h-9.884l0.084-3.472h14V9.66z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/8.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/8.gif
deleted file mode 100644
index 49375e0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/8.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/8.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/8.png
deleted file mode 100644
index 5e60973..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/8.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/8.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/8.svg
deleted file mode 100644
index c1803a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/8.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M16.28,26.712c-5.124,0-6.888-3.332-6.888-6.048c0-1.009,0-3.641,3.024-5.04
- c-1.568-0.784-2.408-2.044-2.408-3.893c0-3.388,2.716-5.432,6.188-5.432c4.116,0,6.3,2.436,6.3,5.18
- c0,1.708-0.7,3.164-2.296,4.004c1.903,0.952,2.968,2.212,2.968,4.788C23.168,22.792,21.544,26.712,16.28,26.712z M16.224,17.332
- c-1.428,0-2.8,0.924-2.8,3.08c0,1.903,1.092,3.164,2.884,3.164c2.043,0,2.829-1.765,2.829-3.137
- C19.137,19.04,18.408,17.332,16.224,17.332z M18.744,11.899c0-1.512-1.036-2.464-2.296-2.464c-1.764,0-2.688,1.008-2.688,2.464
- c0,1.177,0.868,2.464,2.548,2.464C17.848,14.363,18.744,13.328,18.744,11.899z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/9.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/9.gif
deleted file mode 100644
index da12a4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/9.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/9.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/9.png
deleted file mode 100644
index a0676d2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/9.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/9.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/9.svg
deleted file mode 100644
index bc149d3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/callouts/9.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M13.953,21.921v0.027c0.224,1.372,1.092,1.961,2.296,1.961c1.624,0,3.248-1.372,3.276-5.545
- l-0.057-0.056c-0.896,1.344-2.436,1.68-3.78,1.68c-3.808,0-6.02-2.884-6.02-6.216c0-4.872,2.884-7.14,6.776-7.14
- c6.888,0,7,7.42,7,10.22c0,7.7-3.641,10.192-7.224,10.192c-3.388,0-5.824-1.96-6.16-5.124H13.953z M16.529,16.853
- c1.372,0,2.884-0.979,2.884-3.332c0-2.268-0.98-3.668-2.996-3.668c-1.008,0-2.828,0.504-2.828,3.36
- C13.589,16.209,15.045,16.853,16.529,16.853z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.gif
deleted file mode 100644
index d9f5e5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.png
deleted file mode 100644
index 5b7809c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.tif
deleted file mode 100644
index 4a28294..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/caution.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/concepts/bundle-lifecycle.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/concepts/bundle-lifecycle.graffle
deleted file mode 100644
index 13bf766..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/concepts/bundle-lifecycle.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/concepts/bundle-lifecycle.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/concepts/bundle-lifecycle.png
deleted file mode 100644
index 259232b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/concepts/bundle-lifecycle.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/draft.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/draft.png
deleted file mode 100644
index 59673fe..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/draft.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/home.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/home.gif
deleted file mode 100644
index 6784f5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/home.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/home.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/home.png
deleted file mode 100644
index cbb711d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/home.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/home.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/home.svg
deleted file mode 100644
index e803a31..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/home.svg
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st1 "fill:none;stroke:none;">
- <!ENTITY st2 "fill:#000000;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:6.3469;stroke-linejoin:round;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st0;">
- <g style="&st4;">
- <path style="&st3;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M41.8,22.8l-5.1-4.2v-0.1L31,13.7v0l-6.5-5.5C24.2,8,24,8,23.8,8.2L6.2,22.9c-0.1,0.1-0.1,0.3,0.1,0.3h1.6H10h28.1h1.2h2.3c0.2,0,0.4-0.2,0.2-0.4z"/>
- <path d="M35.8,16.8l0-5.1c0-0.2-0.1-0.4-0.3-0.4h-3.2c-0.2,0-0.3,0.1-0.3,0.3v2.2l3.9,2.9z"/>
- <path d="M11.9,24.7V37c0,0.3,0.1,0.4,0.3,0.4h23.6c0.3,0,0.4-0.2,0.4-0.4V24.7H11.9z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st1;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.gif
deleted file mode 100644
index 6795d9a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.png
deleted file mode 100644
index 12c90f6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.tif
deleted file mode 100644
index 184de63..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/important.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/addandremove.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/addandremove.png
deleted file mode 100644
index ae65908..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/addandremove.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/addedtoserver.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/addedtoserver.png
deleted file mode 100644
index 6cc93a4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/addedtoserver.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/browse-1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/browse-1.png
deleted file mode 100644
index 3e055a0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/browse-1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/browse-2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/browse-2.png
deleted file mode 100644
index 3a312f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/browse-2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/browse-3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/browse-3.png
deleted file mode 100644
index 1a94346..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/browse-3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/greenpages.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/greenpages.graffle
deleted file mode 100644
index ec8a872..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/greenpages.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/greenpages.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/greenpages.png
deleted file mode 100644
index 1ee409c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/greenpages.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/import-projects2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/import-projects2.png
deleted file mode 100644
index 0396216..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/import-projects2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/import-projects3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/import-projects3.png
deleted file mode 100644
index fdd527f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/import-projects3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/import-projects4.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/import-projects4.png
deleted file mode 100644
index 3f07f08..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/import-projects4.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/installed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/installed.png
deleted file mode 100644
index c30f88e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/installed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/new-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/new-server.png
deleted file mode 100644
index 968ed62..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/new-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/problem-warning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/problem-warning.png
deleted file mode 100644
index bc3ea15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/problem-warning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/servers.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/servers.png
deleted file mode 100644
index 73e2877..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/servers.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/success.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/success.png
deleted file mode 100644
index 4585322..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/installing-greenpages/success.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/add-to-par.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/add-to-par.png
deleted file mode 100644
index 5fe41f6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/add-to-par.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/config-bundle-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/config-bundle-project.png
deleted file mode 100644
index abc60c7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/config-bundle-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/config-src-folders.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/config-src-folders.png
deleted file mode 100644
index 461f4b3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/config-src-folders.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-bundle-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-bundle-project.png
deleted file mode 100644
index b3b6d81..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-bundle-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-jpadirectory.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-jpadirectory.png
deleted file mode 100644
index 98e3776..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-jpadirectory.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-jpalisting.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-jpalisting.png
deleted file mode 100644
index 694e8bc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-jpalisting.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-project.png
deleted file mode 100644
index f7e63d5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/create-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/db-module-create-module-context.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/db-module-create-module-context.png
deleted file mode 100644
index be8a158..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/db-module-create-module-context.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/db-module-namespace-declaration-configuration.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/db-module-namespace-declaration-configuration.png
deleted file mode 100644
index c4d703a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/db-module-namespace-declaration-configuration.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/db-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/db-project.png
deleted file mode 100644
index 76f135d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/db-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-antlr-asm-jpa-download.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-antlr-asm-jpa-download.png
deleted file mode 100644
index 98765b0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-antlr-asm-jpa-download.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-core-full-dependencies.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-core-full-dependencies.png
deleted file mode 100644
index f98b708..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-core-full-dependencies.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-core-search.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-core-search.png
deleted file mode 100644
index 612d1c8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-core-search.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-jpa-search.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-jpa-search.png
deleted file mode 100644
index 32a2752..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/eclipselink-jpa-search.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/implement-directory.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/implement-directory.png
deleted file mode 100644
index f55e10c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/implement-directory.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/implement-listing.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/implement-listing.png
deleted file mode 100644
index c8de301..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/implement-listing.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/namespace-declaration-configuration.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/namespace-declaration-configuration.png
deleted file mode 100644
index 5c743e8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/namespace-declaration-configuration.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/new-bundle-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/new-bundle-project.png
deleted file mode 100644
index ffe4a51..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/new-bundle-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/search-for-commons-dbcp.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/search-for-commons-dbcp.png
deleted file mode 100644
index ffef240..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/search-for-commons-dbcp.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/search-for-commons-pool.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/search-for-commons-pool.png
deleted file mode 100644
index 8bc3674..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/search-for-commons-pool.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/structure.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/structure.graffle
deleted file mode 100644
index 07669d5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/structure.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/structure.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/structure.png
deleted file mode 100644
index 775c86f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/middle-tier/structure.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/next.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/next.gif
deleted file mode 100644
index aa1516e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/next.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/next.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/next.png
deleted file mode 100644
index 45835bf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/next.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/next.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/next.svg
deleted file mode 100644
index 75fa83e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/next.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- <path style="&st3;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.gif
deleted file mode 100644
index f329d35..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.png
deleted file mode 100644
index d0c3c64..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.svg
deleted file mode 100644
index 648299d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.svg
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#FFFFFF;stroke-width:12.1438;stroke-linejoin:round;">
- <!ENTITY st1 "fill:none;stroke-width:1.2429;">
- <!ENTITY st2 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st4 "fill:#FFFFFF;stroke-width:6.3824;stroke-linejoin:round;">
- <!ENTITY st5 "fill:none;stroke:none;">
- <!ENTITY st6 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st7 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st8 "stroke:none;">
- <!ENTITY st9 "fill:none;stroke-width:4.9715;stroke-linejoin:round;">
-]>
-<svg xmlns="http://www.w3.org/2000/svg" width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve">
- <g id="Layer_x0020_1" style="&st6;">
- <path style="&st0;" d="M35.7,19.8v18.9H11V8.8h13.9l10.8,11z"/>
- <path style="&st3;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st7;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st4;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st2;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- </g>
- <g id="Layer_x0020_4" style="&st6;">
- <path style="&st9;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M20.6,14.7l-2.5,2.5L17,13.4l3.6,1.3z"/>
- <path style="&st1;" d="M19.6,22.2l3-0.3l2.4-2.4l0.4-2.8"/>
- <path style="&st2;" d="M20.4,14.9L18.3,17l1.6,5.2l2.7-0.3l2.4-2.4l0.3-2.4l-5-2.2z"/>
- </g>
- <g id="crop" style="&st6;">
- <path style="&st5;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.tif
deleted file mode 100644
index 08644d6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/note.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/prev.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/prev.gif
deleted file mode 100644
index 64ca8f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/prev.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/prev.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/prev.png
deleted file mode 100644
index cf24654..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/prev.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/prev.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/prev.svg
deleted file mode 100644
index 6d88ffd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/prev.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- <path style="&st3;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/springsource.jpg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/springsource.jpg
deleted file mode 100644
index 2d7280c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/springsource.jpg
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/testing-greenpages/integration-test-runner.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/testing-greenpages/integration-test-runner.png
deleted file mode 100644
index 2c97a74..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/testing-greenpages/integration-test-runner.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/testing-greenpages/jpa-test-runner.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/testing-greenpages/jpa-test-runner.png
deleted file mode 100644
index 70f75ce..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/testing-greenpages/jpa-test-runner.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.gif
deleted file mode 100644
index 823f2b4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.png
deleted file mode 100644
index 5c4aab3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.svg
deleted file mode 100644
index 4a64a15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.svg
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#000000;stroke-width:1.0944;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#FFFFFF;stroke-width:5.6139;stroke-miterlimit:4;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path d="M9.5,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.8,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path d="M28.1,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,34.8l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8s0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8s-0.9-1.5-1.8-1.4z"/>
- <path d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6c0.9,0,1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st1;" d="M35.9,18.7c0,6.6-5.4,12-12,12c-6.6,0-12-5.4-12-12s5.4-12,12-12c6.6,0,12,5.4,12,12z"/>
- <path style="&st5;" d="M9.6,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.9,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path style="&st5;" d="M28.2,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,34.7l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6s1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st0;" d="M22.3,28.3l-3.5-10.7c0,0,6.6,3.9,10.5,0"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.tif
deleted file mode 100644
index 4a3d8c7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/tip.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/toc-blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/toc-blank.png
deleted file mode 100644
index 6ffad17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/toc-blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/toc-minus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/toc-minus.png
deleted file mode 100644
index abbb020..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/toc-minus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/toc-plus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/toc-plus.png
deleted file mode 100644
index 941312c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/toc-plus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/up.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/up.gif
deleted file mode 100644
index aabc2d0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/up.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/up.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/up.png
deleted file mode 100644
index 07634de..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/up.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/up.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/up.svg
deleted file mode 100644
index d31aa9c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/up.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- <path style="&st3;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/virgo-logo-large.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/virgo-logo-large.png
deleted file mode 100644
index f8fe1f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/virgo-logo-large.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/virgo-logo-small.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/virgo-logo-small.png
deleted file mode 100644
index 45e9224..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/virgo-logo-small.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.gif
deleted file mode 100644
index 3adf191..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.png
deleted file mode 100644
index 1c33db8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.svg
deleted file mode 100644
index fc8d748..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#000000;stroke:#FFFFFF;stroke-width:7.9139;stroke-linejoin:round;">
- <!ENTITY st1 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st2 "fill:none;stroke:none;">
- <!ENTITY st3 "fill:#000000;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_4" style="&st1;">
- <g style="&st4;">
- <path style="&st0;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path style="&st3;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path d="M11.7,17.7l18.7,18.7l5.9-5.9L17.6,11.7l-5.9,5.9z"/>
- <path d="M11.7,30.5l5.9,5.9l18.7-18.7l-5.9-5.9L11.7,30.5z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st2;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.tif
deleted file mode 100644
index 7b6611e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/warning.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/add-remove-projects.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/add-remove-projects.png
deleted file mode 100644
index 985f9ba..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/add-remove-projects.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/bundle-references.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/bundle-references.png
deleted file mode 100644
index 14aa958..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/bundle-references.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/create-par-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/create-par-project.png
deleted file mode 100644
index c2b379a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/create-par-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/greenpages-home-fail.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/greenpages-home-fail.png
deleted file mode 100644
index f0f009d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/greenpages-home-fail.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/greenpages-home-success.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/greenpages-home-success.png
deleted file mode 100644
index 9f77818..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/greenpages-home-success.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/greenpages-listing-success.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/greenpages-listing-success.png
deleted file mode 100644
index cd5afa0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/greenpages-listing-success.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/import-greenpages-app.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/import-greenpages-app.png
deleted file mode 100644
index acc9cb9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/import-greenpages-app.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/import-greenpages-web.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/import-greenpages-web.png
deleted file mode 100644
index 3f51246..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/import-greenpages-web.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/import-parent-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/import-parent-project.png
deleted file mode 100644
index 818a28c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/import-parent-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/java-perspective.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/java-perspective.png
deleted file mode 100644
index 09dc4ab..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/java-perspective.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/new-greenpages-controller.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/new-greenpages-controller.png
deleted file mode 100644
index 3d70570..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/new-greenpages-controller.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/new-par-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/new-par-project.png
deleted file mode 100644
index 13ff6f7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/new-par-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/new-server-runtime-environment.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/new-server-runtime-environment.png
deleted file mode 100644
index ec117a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/new-server-runtime-environment.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/package-explorer-par.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/package-explorer-par.png
deleted file mode 100644
index 89d66fe..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/package-explorer-par.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/par-content.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/par-content.png
deleted file mode 100644
index ed5cbe9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/par-content.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/servers-view.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/servers-view.png
deleted file mode 100644
index dfda014..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/servers-view.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/virgo-web-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/virgo-web-server.png
deleted file mode 100644
index 6c3c2f4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/virgo-web-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/web-bundle-deployed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/web-bundle-deployed.png
deleted file mode 100644
index 986fde3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/images/web-module/web-bundle-deployed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/index.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/index.html
deleted file mode 100644
index dd45a0b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/index.html
+++ /dev/null
@@ -1,36 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Creating an application with EclipseRT Virgo Web Server</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><meta name="description" content="Spring application programmers are introduced to Virgo Web Server by installing the Web Server and examining a small application called GreenPages. Despite its simplicity, GreenPages is designed to demonstrate many different Web Server features and to act as a template from which other modular applications can be built. This version of the guide is based on the following software versions: Web Server2.1.0.RELEASEGreenPages2.3.0.RELEASESpringSource Tool Suite2.5.0.RELEASEApache Maven2.2.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="next" href="pr01.html" title="Preface"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Creating an application with EclipseRT Virgo Web Server</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="pr01.html">Next</a></td></tr></table><hr></div><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="d0e1"></a>Creating an application with EclipseRT Virgo Web Server</h1></div><div><h2 class="subtitle">GreenPages: a demonstration</h2></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Christopher</span> <span class="surname">Frost</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Ben</span> <span class="surname">Hale</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Rob</span> <span class="surname">Harrop</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Glyn</span> <span class="surname">Normington</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Steve</span> <span class="surname">Powell</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Andy</span> <span class="surname">Wilkinson</span></h3></div></div></div><div><div class="mediaobject" align="right"><table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0"><tr><td align="right" valign="bottom"><img src="images/virgo-logo-large.png" align="right"></td></tr></table></div></div><div><span class="productname">Web Server<br></span></div><div><p class="releaseinfo">2.1.0.RELEASE</p></div><div><div class="abstract"><p class="title"><b>Abstract</b></p><p>
- Spring application programmers are introduced to Virgo Web Server
- by installing the Web Server and examining a small application called GreenPages.
- Despite its simplicity, GreenPages is designed to demonstrate many different Web Server features and to
- act as a template from which other modular applications can be built.
- </p><p>
- This version of the guide is based on the following software versions:
- </p><table class="simplelist" border="0" summary="Simple list"><tr><td></td><td><span class="emphasis"><em>Web Server</em></span></td><td>2.1.0.RELEASE</td></tr><tr><td></td><td><span class="emphasis"><em>GreenPages</em></span></td><td>2.3.0.RELEASE</td></tr><tr><td></td><td><span class="emphasis"><em>SpringSource Tool Suite</em></span></td><td>2.5.0.RELEASE</td></tr><tr><td></td><td><span class="emphasis"><em>Apache Maven</em></span></td><td>2.2.0</td></tr></table><p>
- </p></div></div></div><div><div><div class="legalnotice"><a name="d0e82"></a><p>
- Copyright © 2009, 2010 VMware Inc.
- </p><div class="mediaobject"><img src="images/virgo-logo-small.png"></div><p>
- </p><p>
- All rights reserved. This document is made available under the terms of the Eclipse Public License v1.0
- which is available at
- <a class="ulink" href="http://www.eclipse.org/legal/epl-v10.html" target="_top">http://www.eclipse.org/legal/epl-v10.html</a>.
- </p><p>Java, Sun, and Sun Microsystems
- are trademarks or registered
- trademarks of Sun Microsystems, Inc. in the United
- States and other countries.
- </p><p>OSGi is a trademark or a registered trademark of the OSGi Alliance in
- the United States, other countries, or both.
- </p><p>Eclipse is a trademark of Eclipse Foundation, Inc.</p><p>UNIX is a registered trademark of The Open Group.</p><p>Windows is a registered trademark of Microsoft Corporation in the
- United States and other countries.</p><p>Mac and Mac OS are trademarks of Apple Inc., registered in the U.S. and other countries.</p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="preface"><a href="pr01.html">Preface</a></span></dt><dt><span class="chapter"><a href="ch01.html">1. Concepts</a></span></dt><dd><dl><dt><span class="section"><a href="ch01.html#concepts.osgi">1.1. OSGi concepts</a></span></dt><dt><span class="section"><a href="ch01s02.html">1.2. Spring DM concepts</a></span></dt><dt><span class="section"><a href="ch01s03.html">1.3. Grouping bundles in Web Server</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch02.html">2. Installation</a></span></dt><dd><dl><dt><span class="section"><a href="ch02.html#installation.prereqs">2.1. Pre-requisites</a></span></dt><dt><span class="section"><a href="ch02s02.html">2.2. Installing Web Server</a></span></dt><dt><span class="section"><a href="ch02s03.html">2.3. Installing the SpringSource Tool Suite</a></span></dt><dt><span class="section"><a href="ch02s04.html">2.4. Installing Apache Maven</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch03.html">3. Installing GreenPages</a></span></dt><dd><dl><dt><span class="section"><a href="ch03.html#installing.greenpages.introduction">3.1. Introduction</a></span></dt><dt><span class="section"><a href="ch03s02.html">3.2. Obtaining GreenPages</a></span></dt><dt><span class="section"><a href="ch03s03.html">3.3. Building and installing GreenPages</a></span></dt><dt><span class="section"><a href="ch03s04.html">3.4. Browsing the GreenPages application</a></span></dt><dt><span class="section"><a href="ch03s05.html">3.5. Running GreenPages from Eclipse</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch04.html">4. The Web Module</a></span></dt><dd><dl><dt><span class="section"><a href="ch04.html#web.module.introduction">4.1. Introduction</a></span></dt><dt><span class="section"><a href="ch04s02.html">4.2. GreenPages set up</a></span></dt><dt><span class="section"><a href="ch04s03.html">4.3. The controller</a></span></dt><dt><span class="section"><a href="ch04s04.html">4.4. Deploying a bundle</a></span></dt><dt><span class="section"><a href="ch04s05.html">4.5. Creating a PAR</a></span></dt><dt><span class="section"><a href="ch04s06.html">4.6. Referencing an OSGi Service</a></span></dt><dt><span class="section"><a href="ch04s07.html">4.7. Publishing an OSGi Service</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch05.html">5. The Middle Tier</a></span></dt><dd><dl><dt><span class="section"><a href="ch05.html#middle-tier.introduction">5.1. Introduction</a></span></dt><dt><span class="section"><a href="ch05s02.html">5.2. Creating the DataSource project</a></span></dt><dt><span class="section"><a href="ch05s03.html">5.3. Building the JPA module</a></span></dt><dt><span class="section"><a href="ch05s04.html">5.4. Trying out the JPA middle tier</a></span></dt><dt><span class="section"><a href="ch05s05.html">5.5. Applying best practices to the middle tier</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch06.html">6. Testing GreenPages</a></span></dt><dd><dl><dt><span class="section"><a href="ch06.html#testing.greenpages.introduction">6.1. Introduction</a></span></dt><dt><span class="section"><a href="ch06s02.html">6.2. Single bundle integration testing</a></span></dt><dt><span class="section"><a href="ch06s03.html">6.3. Contributing OSGi sourced dependencies</a></span></dt><dt><span class="section"><a href="ch06s04.html">6.4. Multi bundle integration testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch07.html">7. Automated Build</a></span></dt><dd><dl><dt><span class="section"><a href="ch07.html#automated.build.introduction">7.1. Introduction</a></span></dt><dt><span class="section"><a href="ch07s02.html">7.2. Setting up for Automated Build</a></span></dt><dt><span class="section"><a href="ch07s03.html">7.3. Create POM</a></span></dt><dt><span class="section"><a href="ch07s04.html">7.4. Adding the par plugin</a></span></dt><dt><span class="section"><a href="ch07s05.html">7.5. Adding the dependency plugin</a></span></dt><dt><span class="section"><a href="ch07s06.html">7.6. Automatically running the tests</a></span></dt><dt><span class="section"><a href="ch07s07.html">7.7. Deploying the application</a></span></dt></dl></dd><dt><span class="appendix"><a href="apa.html">A. Further Resources</a></span></dt><dd><dl><dt><span class="section"><a href="apa.html#further.resources.projects">A.1. Projects</a></span></dt><dt><span class="section"><a href="apas02.html">A.2. Documentation</a></span></dt></dl></dd></dl></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="pr01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"> </td><td width="40%" align="right" valign="top"> Preface</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ivy.xml b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ivy.xml
deleted file mode 100644
index e9c1f04..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/ivy.xml
+++ /dev/null
@@ -1,28 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<?xml-stylesheet type="text/xsl" href="http://ivyrep.jayasoft.org/ivy-doc.xsl"?>
-<ivy-module xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://incubator.apache.org/ivy/schemas/ivy.xsd" version="1.3">
-
- <info organisation="org.eclipse.virgo.documentation" module="virgo-getting-started" revision="2.1.0.RELEASE" status="release" publication="20101028121522"/>
-
- <configurations>
- <conf name="compile" visibility="public" extends="aspects" description="Maven compile dependencies"/>
- <conf name="optional" visibility="public" extends="compile" description="Maven optional dependencies"/>
- <conf name="provided" visibility="public" description="Maven provided dependencies"/>
- <conf name="server-provided" visibility="public" description="Maven provided dependencies that already exist in the platform"/>
- <conf name="runtime" visibility="public" extends="compile" description="Runtime dependencies"/>
- <conf name="test" visibility="private" description="Test dependencies"/>
- <conf name="aspects" visibility="private" description="Aspects to be woven"/>
- <conf name="external" visibility="private" description="External candidates to be woven"/>
- <conf name="additional" visibility="private" description="Additional candidates to be included in the PAR"/>
- <conf name="doc" visibility="public" description="Documentation"/>
- </configurations>
-
- <publications>
- <!-- <artifact name="${ant.project.name}" ext="pdf" type="pdf"/> -->
- <artifact name="virgo-getting-started" ext="zip" type="zip"/>
- <artifact name="virgo-getting-started-single" ext="zip" type="zip"/>
- </publications>
-
- <dependencies/>
-
-</ivy-module>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/pr01.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/pr01.html
deleted file mode 100644
index 1894271..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/pr01.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Preface</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="up" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="prev" href="index.html" title="Creating an application with EclipseRT Virgo Web Server"><link rel="next" href="ch01.html" title="1. Concepts"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Preface</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch01.html">Next</a></td></tr></table><hr></div><div class="preface" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="d0e111"></a>Preface</h2></div></div></div><p>
- This Guide introduces some basic concepts, explains how to install Virgo Web Server
- and the associated Eclipse<span class="trademark"></span>™ tools, and examines a sample
- web application in detail, including how the application is built and tested.
- </p><p>It is intended for Spring application programmers and assumes little or no
- understanding of OSGi<span class="trademark"></span>™ or Virgo Web Server.</p><p>Questions about Web Server and SpringSource Tool Suite (or this Guide) may be posted to the Web Server Community Forums
- (<a class="ulink" href="http://www.eclipse.org/forums" target="_top">http://www.eclipse.org/forums</a>).</p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Creating an application with EclipseRT Virgo Web Server </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 1. Concepts</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/virgo-getting-started.zip b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/virgo-getting-started.zip
deleted file mode 100644
index f67f012..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/html/virgo-getting-started.zip
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/css/highlight.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/css/highlight.css
deleted file mode 100644
index 2cb42fd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/css/highlight.css
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- code highlight CSS resembling the Eclipse IDE default color schema and the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-.hl-keyword {
- color: #7F0055;
- font-weight: bold;
-}
-
-.hl-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-multiline-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-tag {
- color: #646571;
-}
-
-.hl-attribute {
- color: #7F0055;
-}
-
-.hl-value {
- color: #0093CF;
-}
-
-.hl-string {
- color: #0093CF;
-}
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/css/stylesheet.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/css/stylesheet.css
deleted file mode 100644
index b02eca7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/css/stylesheet.css
+++ /dev/null
@@ -1,77 +0,0 @@
-@IMPORT url("highlight.css");
-
-/*
- code CSS resembling the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-html {
- padding: 0pt;
- margin: 0pt;
-}
-
-body {
- margin-left: 10%;
- margin-right: 10%;
- color: #111111;
- font-family: Arial, Sans-serif;
-}
-
-div {
- margin: 0pt;
-}
-
-p {
- text-align: justify;
-}
-
-hr {
- border: 1px solid gray;
- background: gray;
-}
-
-a {
- color: #002E62; /* Dark Blue */
-}
-
-a:visited {
- color: #646571; /* Gray */
-}
-
-a:hover, a:active {
- color: #0093CF; /* Light Blue */
-}
-
-h1,h2,h3,h4 {
- color: #002E62;
- font-family: Arial, Sans-serif;
-}
-
-pre {
- line-height: 1.0;
- color: black;
-}
-
-pre.programlisting {
- font-size: 10pt;
- padding: 7pt 3pt;
- border: 1pt solid black;
- background: #eeeeee;
- clear: both;
-}
-
-div.table {
- margin: 1em;
- padding: 0.5em;
- text-align: center;
-}
-
-div.table table {
- display: table;
- width: 100%;
-}
-
-div.table td {
- padding-left: 7px;
- padding-right: 7px;
-}
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/annot-close.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/annot-close.png
deleted file mode 100644
index b9e1a0d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/annot-close.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/annot-open.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/annot-open.png
deleted file mode 100644
index 71040ec..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/annot-open.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/automated-build/remove-application.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/automated-build/remove-application.png
deleted file mode 100644
index 6ee8ce8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/automated-build/remove-application.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/blank.png
deleted file mode 100644
index 764bf4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/1.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/1.gif
deleted file mode 100644
index 9e7a87f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/1.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/1.png
deleted file mode 100644
index 7d47343..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/1.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/1.svg
deleted file mode 100644
index e2e87dc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/1.svg
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M10.428,10.411h0.56c3.78,0,4.788-1.96,4.872-3.444h3.22v19.88h-3.92V13.154h-4.732V10.411z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/10.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/10.gif
deleted file mode 100644
index e80f7f8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/10.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/10.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/10.png
deleted file mode 100644
index 997bbc8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/10.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/10.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/10.svg
deleted file mode 100644
index 4740f58..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/10.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.815,10.758h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.11H3.815V10.758z"/>
- <path style="fill:#FFFFFF;" d="M22.175,7.806c4.009,0,5.904,2.76,5.904,8.736c0,5.975-1.896,8.76-5.904,8.76
- c-4.008,0-5.904-2.785-5.904-8.76C16.271,10.566,18.167,7.806,22.175,7.806z M22.175,22.613c1.921,0,2.448-1.68,2.448-6.071
- c0-4.393-0.527-6.049-2.448-6.049c-1.92,0-2.448,1.656-2.448,6.049C19.727,20.934,20.255,22.613,22.175,22.613z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/11.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/11.gif
deleted file mode 100644
index 67f91a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/11.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/11.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/11.png
deleted file mode 100644
index ce47dac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/11.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/11.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/11.svg
deleted file mode 100644
index 09a0b2c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/11.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.209,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H5.209V10.412z"/>
- <path style="fill:#FFFFFF;" d="M18.553,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.359V12.764h-4.056V10.412z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/12.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/12.gif
deleted file mode 100644
index 54c4b42..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/12.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/12.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/12.png
deleted file mode 100644
index 31daf4e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/12.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/12.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/12.svg
deleted file mode 100644
index 9794044..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/12.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/13.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/13.gif
deleted file mode 100644
index dd5d7d9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/13.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/13.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/13.png
deleted file mode 100644
index 14021a8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/13.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/13.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/13.svg
deleted file mode 100644
index 64268bb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/13.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M20.611,14.636h0.529c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.288-2.185-2.137-2.185
- c-2.303,0-2.303,2.185-2.303,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.279,0,5.279,1.152,5.279,4.752
- c0,1.728-1.08,2.808-2.039,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/14.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/14.gif
deleted file mode 100644
index 3d7a952..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/14.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/14.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/14.png
deleted file mode 100644
index 64014b7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/14.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/14.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/14.svg
deleted file mode 100644
index 469aa97..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/14.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.146V10.412z"/>
- <path style="fill:#FFFFFF;" d="M28.457,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L22.746,7.46h3.815v10.656h1.896V20.732z
- M23.201,18.116c0-4.128,0.072-6.792,0.072-7.32h-0.048l-4.272,7.32H23.201z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/15.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/15.gif
deleted file mode 100644
index 1c9183d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/15.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/15.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/15.png
deleted file mode 100644
index 0d65765..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/15.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/15.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/15.svg
deleted file mode 100644
index 8202233..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/15.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M19.342,14.943c0.625-0.433,1.392-0.937,3.048-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.176,6.121-6.192,6.121c-2.664,0-5.376-1.584-5.544-5.016h3.36c0.144,1.391,0.888,2.326,2.376,2.326
- c1.607,0,2.544-1.367,2.544-3.191c0-1.512-0.72-3.047-2.496-3.047c-0.456,0-1.608,0.023-2.256,1.223l-3-0.143l1.176-9.361h9.36
- v2.832h-6.937L19.342,14.943z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/16.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/16.svg
deleted file mode 100644
index 01d6bf8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/16.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M24.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L19.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H24.309z M22.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C24.62,16.868,23.229,16.172,22.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/17.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/17.svg
deleted file mode 100644
index 0a04c55..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/17.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M27.838,11.006c-1.631,1.776-5.807,6.816-6.215,14.16h-3.457c0.36-6.816,4.632-12.24,6.072-13.776
- h-8.472l0.072-2.976h12V11.006z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/18.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/18.svg
deleted file mode 100644
index 1cb891b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/18.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/19.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/19.svg
deleted file mode 100644
index e6fbb17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/19.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.746h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.041h-3.36V13.097H4.146V10.746z"/>
- <path style="fill:#FFFFFF;" d="M20.225,20.898v0.023c0.192,1.176,0.936,1.68,1.968,1.68c1.392,0,2.783-1.176,2.808-4.752
- l-0.048-0.049c-0.768,1.152-2.088,1.441-3.24,1.441c-3.264,0-5.16-2.473-5.16-5.329c0-4.176,2.472-6.12,5.808-6.12
- c5.904,0,6,6.36,6,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.391H20.225z M22.434,16.553
- c1.176,0,2.472-0.84,2.472-2.855c0-1.944-0.841-3.145-2.568-3.145c-0.864,0-2.424,0.433-2.424,2.88
- C19.913,16.001,21.161,16.553,22.434,16.553z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/2.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/2.gif
deleted file mode 100644
index 94d42a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/2.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/2.png
deleted file mode 100644
index 5d09341..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/2.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/2.svg
deleted file mode 100644
index 07d0339..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/2.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M9.668,12.328c0-6.469,4.732-7.028,6.496-7.028c3.808,0,6.833,2.24,6.833,6.271
- c0,3.416-2.213,5.152-4.145,6.469c-2.632,1.848-4.004,2.744-4.452,3.668h8.624v3.472H9.444c0.14-2.324,0.308-4.76,4.62-7.896
- c3.584-2.604,5.012-3.612,5.012-5.853c0-1.315-0.84-2.828-2.744-2.828c-2.744,0-2.828,2.269-2.856,3.725H9.668z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/20.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/20.svg
deleted file mode 100644
index ccbfd40..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/20.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/21.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/21.svg
deleted file mode 100644
index 93ec53f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/21.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.306,13.151c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392v2.976H5.114c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H5.306z"/>
- <path style="fill:#FFFFFF;" d="M19.49,10.079h0.48c3.239,0,4.104-1.681,4.176-2.952h2.761v17.04h-3.361V12.431H19.49V10.079z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/22.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/22.svg
deleted file mode 100644
index f48c5f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/22.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/23.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/23.svg
deleted file mode 100644
index 6624212..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/23.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M21.612,14.636h0.528c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.287-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.521-0.911,2.521-2.808
- c0-2.328-2.257-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/24.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/24.svg
deleted file mode 100644
index a3d5525..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/24.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H4.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H4.972z"/>
- <path style="fill:#FFFFFF;" d="M30.124,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L24.412,7.46h3.816v10.656h1.896V20.732z
- M24.868,18.116c0-4.128,0.071-6.792,0.071-7.32h-0.047l-4.272,7.32H24.868z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/25.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/25.svg
deleted file mode 100644
index 56614a9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/25.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.676,14.276c0.624-0.433,1.393-0.937,3.049-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.177,6.12-6.193,6.12c-2.664,0-5.375-1.584-5.543-5.016h3.36c0.144,1.392,0.889,2.327,2.376,2.327
- c1.608,0,2.544-1.367,2.544-3.191c0-1.513-0.72-3.048-2.496-3.048c-0.455,0-1.607,0.023-2.256,1.224l-3-0.144l1.176-9.36h9.36
- v2.832h-6.937L20.676,14.276z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/26.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/26.svg
deleted file mode 100644
index 56faeac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/26.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M25.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L20.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H25.309z M23.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C25.62,16.868,24.229,16.172,23.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/27.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/27.svg
deleted file mode 100644
index a75c812..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/27.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M29.172,10.34c-1.632,1.776-5.808,6.816-6.216,14.16H19.5c0.36-6.816,4.632-12.24,6.072-13.776
- H17.1l0.072-2.976h12V10.34z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/28.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/28.svg
deleted file mode 100644
index 7f8cf1a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/28.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/29.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/29.svg
deleted file mode 100644
index cb63adf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/29.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.893,20.564v0.023c0.191,1.176,0.936,1.68,1.967,1.68c1.393,0,2.785-1.176,2.809-4.752
- l-0.048-0.048c-0.769,1.152-2.088,1.44-3.24,1.44c-3.264,0-5.16-2.473-5.16-5.328c0-4.176,2.472-6.12,5.807-6.12
- c5.904,0,6.001,6.36,6.001,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.392H20.893z M23.1,16.22
- c1.176,0,2.473-0.84,2.473-2.855c0-1.944-0.84-3.145-2.568-3.145c-0.863,0-2.424,0.433-2.424,2.88
- C20.58,15.668,21.828,16.22,23.1,16.22z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/3.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/3.gif
deleted file mode 100644
index dd3541a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/3.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/3.png
deleted file mode 100644
index ef7b700..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/3.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/3.svg
deleted file mode 100644
index 918be80..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/3.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M15.127,14.005h0.616c1.176,0,3.332-0.112,3.332-2.688c0-0.728-0.336-2.548-2.492-2.548
- c-2.688,0-2.688,2.548-2.688,3.248h-3.64c0-3.724,2.1-6.384,6.58-6.384c2.66,0,6.16,1.344,6.16,5.544
- c0,2.016-1.261,3.276-2.38,3.78v0.056c0.699,0.196,2.996,1.232,2.996,4.62c0,3.752-2.772,6.412-6.776,6.412
- c-1.876,0-6.916-0.42-6.916-6.636h3.836l-0.028,0.027c0,1.064,0.28,3.473,2.912,3.473c1.568,0,2.94-1.064,2.94-3.276
- c0-2.716-2.632-2.828-4.452-2.828V14.005z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/30.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/30.svg
deleted file mode 100644
index dc43ba1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/30.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M8.268,14.636h0.528c1.008,0,2.856-0.096,2.856-2.304c0-0.624-0.288-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.376,5.496-5.808,5.496
- c-1.608,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/4.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/4.gif
deleted file mode 100644
index 4bcbf7e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/4.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/4.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/4.png
deleted file mode 100644
index adb8364..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/4.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/4.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/4.svg
deleted file mode 100644
index 8eb6a53..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/4.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M21.891,20.784h-2.212v4.396h-3.92v-4.396h-7.84v-3.389L15.227,5.3h4.452v12.432h2.212V20.784z
- M15.759,17.731c0-4.815,0.084-7.924,0.084-8.54h-0.056l-4.984,8.54H15.759z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/5.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/5.gif
deleted file mode 100644
index 1c62b4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/5.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/5.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/5.png
deleted file mode 100644
index 4d7eb46..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/5.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/5.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/5.svg
deleted file mode 100644
index ca7a9f2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/5.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M14.035,14.252c0.728-0.504,1.624-1.092,3.556-1.092c2.66,0,6.02,1.848,6.02,6.411
- c0,2.717-1.372,7.141-7.224,7.141c-3.108,0-6.272-1.849-6.468-5.853h3.92c0.168,1.624,1.036,2.717,2.772,2.717
- c1.876,0,2.968-1.597,2.968-3.725c0-1.764-0.839-3.556-2.912-3.556c-0.532,0-1.876,0.028-2.632,1.428l-3.5-0.168l1.372-10.92
- h10.919v3.304h-8.092L14.035,14.252z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/6.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/6.gif
deleted file mode 100644
index 23bc555..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/6.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/6.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/6.png
deleted file mode 100644
index 0ba694a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/6.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/6.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/6.svg
deleted file mode 100644
index 783a0b9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/6.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M19.106,10.673c-0.112-1.12-0.84-1.904-2.296-1.904c-2.548,0-3.136,2.912-3.276,5.488l0.056,0.056
- c0.532-0.728,1.512-1.651,3.724-1.651c4.116,0,6.077,3.164,6.077,6.131c0,4.34-2.66,7.252-6.497,7.252
- c-6.02,0-7.196-5.039-7.196-9.996c0-3.78,0.504-10.416,7.392-10.416c0.812,0,3.08,0.308,4.061,1.288
- c1.092,1.063,1.483,1.652,1.848,3.752H19.106z M16.614,15.797c-1.484,0-2.996,0.924-2.996,3.416c0,2.156,1.232,3.697,3.108,3.697
- c1.428,0,2.745-1.094,2.745-3.781C19.471,16.609,17.846,15.797,16.614,15.797z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/7.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/7.gif
deleted file mode 100644
index e55ce89..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/7.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/7.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/7.png
deleted file mode 100644
index 472e96f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/7.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/7.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/7.svg
deleted file mode 100644
index 59b3714..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/7.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M24.28,9.66c-1.904,2.071-6.776,7.951-7.252,16.52h-4.032c0.42-7.952,5.404-14.28,7.084-16.072
- h-9.884l0.084-3.472h14V9.66z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/8.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/8.gif
deleted file mode 100644
index 49375e0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/8.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/8.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/8.png
deleted file mode 100644
index 5e60973..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/8.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/8.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/8.svg
deleted file mode 100644
index c1803a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/8.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M16.28,26.712c-5.124,0-6.888-3.332-6.888-6.048c0-1.009,0-3.641,3.024-5.04
- c-1.568-0.784-2.408-2.044-2.408-3.893c0-3.388,2.716-5.432,6.188-5.432c4.116,0,6.3,2.436,6.3,5.18
- c0,1.708-0.7,3.164-2.296,4.004c1.903,0.952,2.968,2.212,2.968,4.788C23.168,22.792,21.544,26.712,16.28,26.712z M16.224,17.332
- c-1.428,0-2.8,0.924-2.8,3.08c0,1.903,1.092,3.164,2.884,3.164c2.043,0,2.829-1.765,2.829-3.137
- C19.137,19.04,18.408,17.332,16.224,17.332z M18.744,11.899c0-1.512-1.036-2.464-2.296-2.464c-1.764,0-2.688,1.008-2.688,2.464
- c0,1.177,0.868,2.464,2.548,2.464C17.848,14.363,18.744,13.328,18.744,11.899z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/9.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/9.gif
deleted file mode 100644
index da12a4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/9.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/9.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/9.png
deleted file mode 100644
index a0676d2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/9.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/9.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/9.svg
deleted file mode 100644
index bc149d3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/callouts/9.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M13.953,21.921v0.027c0.224,1.372,1.092,1.961,2.296,1.961c1.624,0,3.248-1.372,3.276-5.545
- l-0.057-0.056c-0.896,1.344-2.436,1.68-3.78,1.68c-3.808,0-6.02-2.884-6.02-6.216c0-4.872,2.884-7.14,6.776-7.14
- c6.888,0,7,7.42,7,10.22c0,7.7-3.641,10.192-7.224,10.192c-3.388,0-5.824-1.96-6.16-5.124H13.953z M16.529,16.853
- c1.372,0,2.884-0.979,2.884-3.332c0-2.268-0.98-3.668-2.996-3.668c-1.008,0-2.828,0.504-2.828,3.36
- C13.589,16.209,15.045,16.853,16.529,16.853z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.gif
deleted file mode 100644
index d9f5e5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.png
deleted file mode 100644
index 5b7809c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.tif
deleted file mode 100644
index 4a28294..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/caution.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/concepts/bundle-lifecycle.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/concepts/bundle-lifecycle.graffle
deleted file mode 100644
index 13bf766..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/concepts/bundle-lifecycle.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/concepts/bundle-lifecycle.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/concepts/bundle-lifecycle.png
deleted file mode 100644
index 259232b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/concepts/bundle-lifecycle.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/draft.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/draft.png
deleted file mode 100644
index 59673fe..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/draft.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/home.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/home.gif
deleted file mode 100644
index 6784f5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/home.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/home.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/home.png
deleted file mode 100644
index cbb711d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/home.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/home.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/home.svg
deleted file mode 100644
index e803a31..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/home.svg
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st1 "fill:none;stroke:none;">
- <!ENTITY st2 "fill:#000000;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:6.3469;stroke-linejoin:round;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st0;">
- <g style="&st4;">
- <path style="&st3;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M41.8,22.8l-5.1-4.2v-0.1L31,13.7v0l-6.5-5.5C24.2,8,24,8,23.8,8.2L6.2,22.9c-0.1,0.1-0.1,0.3,0.1,0.3h1.6H10h28.1h1.2h2.3c0.2,0,0.4-0.2,0.2-0.4z"/>
- <path d="M35.8,16.8l0-5.1c0-0.2-0.1-0.4-0.3-0.4h-3.2c-0.2,0-0.3,0.1-0.3,0.3v2.2l3.9,2.9z"/>
- <path d="M11.9,24.7V37c0,0.3,0.1,0.4,0.3,0.4h23.6c0.3,0,0.4-0.2,0.4-0.4V24.7H11.9z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st1;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.gif
deleted file mode 100644
index 6795d9a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.png
deleted file mode 100644
index 12c90f6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.tif
deleted file mode 100644
index 184de63..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/important.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/addandremove.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/addandremove.png
deleted file mode 100644
index ae65908..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/addandremove.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/addedtoserver.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/addedtoserver.png
deleted file mode 100644
index 6cc93a4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/addedtoserver.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/browse-1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/browse-1.png
deleted file mode 100644
index 3e055a0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/browse-1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/browse-2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/browse-2.png
deleted file mode 100644
index 3a312f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/browse-2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/browse-3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/browse-3.png
deleted file mode 100644
index 1a94346..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/browse-3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/greenpages.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/greenpages.graffle
deleted file mode 100644
index ec8a872..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/greenpages.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/greenpages.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/greenpages.png
deleted file mode 100644
index 1ee409c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/greenpages.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/import-projects2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/import-projects2.png
deleted file mode 100644
index 0396216..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/import-projects2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/import-projects3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/import-projects3.png
deleted file mode 100644
index fdd527f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/import-projects3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/import-projects4.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/import-projects4.png
deleted file mode 100644
index 3f07f08..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/import-projects4.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/installed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/installed.png
deleted file mode 100644
index c30f88e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/installed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/new-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/new-server.png
deleted file mode 100644
index 968ed62..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/new-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/problem-warning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/problem-warning.png
deleted file mode 100644
index bc3ea15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/problem-warning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/servers.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/servers.png
deleted file mode 100644
index 73e2877..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/servers.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/success.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/success.png
deleted file mode 100644
index 4585322..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/installing-greenpages/success.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/add-to-par.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/add-to-par.png
deleted file mode 100644
index 5fe41f6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/add-to-par.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/config-bundle-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/config-bundle-project.png
deleted file mode 100644
index abc60c7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/config-bundle-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/config-src-folders.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/config-src-folders.png
deleted file mode 100644
index 461f4b3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/config-src-folders.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-bundle-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-bundle-project.png
deleted file mode 100644
index b3b6d81..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-bundle-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-jpadirectory.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-jpadirectory.png
deleted file mode 100644
index 98e3776..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-jpadirectory.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-jpalisting.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-jpalisting.png
deleted file mode 100644
index 694e8bc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-jpalisting.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-project.png
deleted file mode 100644
index f7e63d5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/create-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/db-module-create-module-context.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/db-module-create-module-context.png
deleted file mode 100644
index be8a158..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/db-module-create-module-context.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/db-module-namespace-declaration-configuration.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/db-module-namespace-declaration-configuration.png
deleted file mode 100644
index c4d703a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/db-module-namespace-declaration-configuration.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/db-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/db-project.png
deleted file mode 100644
index 76f135d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/db-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-antlr-asm-jpa-download.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-antlr-asm-jpa-download.png
deleted file mode 100644
index 98765b0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-antlr-asm-jpa-download.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-core-full-dependencies.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-core-full-dependencies.png
deleted file mode 100644
index f98b708..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-core-full-dependencies.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-core-search.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-core-search.png
deleted file mode 100644
index 612d1c8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-core-search.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-jpa-search.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-jpa-search.png
deleted file mode 100644
index 32a2752..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/eclipselink-jpa-search.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/implement-directory.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/implement-directory.png
deleted file mode 100644
index f55e10c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/implement-directory.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/implement-listing.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/implement-listing.png
deleted file mode 100644
index c8de301..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/implement-listing.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/namespace-declaration-configuration.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/namespace-declaration-configuration.png
deleted file mode 100644
index 5c743e8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/namespace-declaration-configuration.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/new-bundle-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/new-bundle-project.png
deleted file mode 100644
index ffe4a51..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/new-bundle-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/search-for-commons-dbcp.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/search-for-commons-dbcp.png
deleted file mode 100644
index ffef240..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/search-for-commons-dbcp.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/search-for-commons-pool.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/search-for-commons-pool.png
deleted file mode 100644
index 8bc3674..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/search-for-commons-pool.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/structure.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/structure.graffle
deleted file mode 100644
index 07669d5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/structure.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/structure.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/structure.png
deleted file mode 100644
index 775c86f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/middle-tier/structure.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/next.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/next.gif
deleted file mode 100644
index aa1516e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/next.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/next.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/next.png
deleted file mode 100644
index 45835bf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/next.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/next.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/next.svg
deleted file mode 100644
index 75fa83e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/next.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- <path style="&st3;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.gif
deleted file mode 100644
index f329d35..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.png
deleted file mode 100644
index d0c3c64..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.svg
deleted file mode 100644
index 648299d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.svg
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#FFFFFF;stroke-width:12.1438;stroke-linejoin:round;">
- <!ENTITY st1 "fill:none;stroke-width:1.2429;">
- <!ENTITY st2 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st4 "fill:#FFFFFF;stroke-width:6.3824;stroke-linejoin:round;">
- <!ENTITY st5 "fill:none;stroke:none;">
- <!ENTITY st6 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st7 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st8 "stroke:none;">
- <!ENTITY st9 "fill:none;stroke-width:4.9715;stroke-linejoin:round;">
-]>
-<svg xmlns="http://www.w3.org/2000/svg" width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve">
- <g id="Layer_x0020_1" style="&st6;">
- <path style="&st0;" d="M35.7,19.8v18.9H11V8.8h13.9l10.8,11z"/>
- <path style="&st3;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st7;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st4;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st2;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- </g>
- <g id="Layer_x0020_4" style="&st6;">
- <path style="&st9;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M20.6,14.7l-2.5,2.5L17,13.4l3.6,1.3z"/>
- <path style="&st1;" d="M19.6,22.2l3-0.3l2.4-2.4l0.4-2.8"/>
- <path style="&st2;" d="M20.4,14.9L18.3,17l1.6,5.2l2.7-0.3l2.4-2.4l0.3-2.4l-5-2.2z"/>
- </g>
- <g id="crop" style="&st6;">
- <path style="&st5;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.tif
deleted file mode 100644
index 08644d6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/note.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/prev.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/prev.gif
deleted file mode 100644
index 64ca8f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/prev.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/prev.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/prev.png
deleted file mode 100644
index cf24654..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/prev.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/prev.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/prev.svg
deleted file mode 100644
index 6d88ffd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/prev.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- <path style="&st3;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/springsource.jpg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/springsource.jpg
deleted file mode 100644
index 2d7280c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/springsource.jpg
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/testing-greenpages/integration-test-runner.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/testing-greenpages/integration-test-runner.png
deleted file mode 100644
index 2c97a74..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/testing-greenpages/integration-test-runner.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/testing-greenpages/jpa-test-runner.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/testing-greenpages/jpa-test-runner.png
deleted file mode 100644
index 70f75ce..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/testing-greenpages/jpa-test-runner.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.gif
deleted file mode 100644
index 823f2b4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.png
deleted file mode 100644
index 5c4aab3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.svg
deleted file mode 100644
index 4a64a15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.svg
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#000000;stroke-width:1.0944;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#FFFFFF;stroke-width:5.6139;stroke-miterlimit:4;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path d="M9.5,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.8,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path d="M28.1,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,34.8l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8s0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8s-0.9-1.5-1.8-1.4z"/>
- <path d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6c0.9,0,1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st1;" d="M35.9,18.7c0,6.6-5.4,12-12,12c-6.6,0-12-5.4-12-12s5.4-12,12-12c6.6,0,12,5.4,12,12z"/>
- <path style="&st5;" d="M9.6,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.9,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path style="&st5;" d="M28.2,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,34.7l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6s1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st0;" d="M22.3,28.3l-3.5-10.7c0,0,6.6,3.9,10.5,0"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.tif
deleted file mode 100644
index 4a3d8c7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/tip.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/toc-blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/toc-blank.png
deleted file mode 100644
index 6ffad17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/toc-blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/toc-minus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/toc-minus.png
deleted file mode 100644
index abbb020..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/toc-minus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/toc-plus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/toc-plus.png
deleted file mode 100644
index 941312c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/toc-plus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/up.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/up.gif
deleted file mode 100644
index aabc2d0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/up.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/up.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/up.png
deleted file mode 100644
index 07634de..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/up.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/up.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/up.svg
deleted file mode 100644
index d31aa9c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/up.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- <path style="&st3;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/virgo-logo-large.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/virgo-logo-large.png
deleted file mode 100644
index f8fe1f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/virgo-logo-large.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/virgo-logo-small.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/virgo-logo-small.png
deleted file mode 100644
index 45e9224..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/virgo-logo-small.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.gif
deleted file mode 100644
index 3adf191..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.png
deleted file mode 100644
index 1c33db8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.svg
deleted file mode 100644
index fc8d748..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#000000;stroke:#FFFFFF;stroke-width:7.9139;stroke-linejoin:round;">
- <!ENTITY st1 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st2 "fill:none;stroke:none;">
- <!ENTITY st3 "fill:#000000;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_4" style="&st1;">
- <g style="&st4;">
- <path style="&st0;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path style="&st3;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path d="M11.7,17.7l18.7,18.7l5.9-5.9L17.6,11.7l-5.9,5.9z"/>
- <path d="M11.7,30.5l5.9,5.9l18.7-18.7l-5.9-5.9L11.7,30.5z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st2;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.tif
deleted file mode 100644
index 7b6611e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/warning.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/add-remove-projects.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/add-remove-projects.png
deleted file mode 100644
index 985f9ba..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/add-remove-projects.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/bundle-references.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/bundle-references.png
deleted file mode 100644
index 14aa958..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/bundle-references.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/create-par-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/create-par-project.png
deleted file mode 100644
index c2b379a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/create-par-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/greenpages-home-fail.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/greenpages-home-fail.png
deleted file mode 100644
index f0f009d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/greenpages-home-fail.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/greenpages-home-success.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/greenpages-home-success.png
deleted file mode 100644
index 9f77818..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/greenpages-home-success.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/greenpages-listing-success.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/greenpages-listing-success.png
deleted file mode 100644
index cd5afa0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/greenpages-listing-success.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/import-greenpages-app.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/import-greenpages-app.png
deleted file mode 100644
index acc9cb9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/import-greenpages-app.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/import-greenpages-web.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/import-greenpages-web.png
deleted file mode 100644
index 3f51246..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/import-greenpages-web.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/import-parent-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/import-parent-project.png
deleted file mode 100644
index 818a28c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/import-parent-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/java-perspective.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/java-perspective.png
deleted file mode 100644
index 09dc4ab..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/java-perspective.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/new-greenpages-controller.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/new-greenpages-controller.png
deleted file mode 100644
index 3d70570..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/new-greenpages-controller.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/new-par-project.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/new-par-project.png
deleted file mode 100644
index 13ff6f7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/new-par-project.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/new-server-runtime-environment.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/new-server-runtime-environment.png
deleted file mode 100644
index ec117a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/new-server-runtime-environment.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/package-explorer-par.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/package-explorer-par.png
deleted file mode 100644
index 89d66fe..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/package-explorer-par.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/par-content.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/par-content.png
deleted file mode 100644
index ed5cbe9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/par-content.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/servers-view.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/servers-view.png
deleted file mode 100644
index dfda014..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/servers-view.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/virgo-web-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/virgo-web-server.png
deleted file mode 100644
index 6c3c2f4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/virgo-web-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/web-bundle-deployed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/web-bundle-deployed.png
deleted file mode 100644
index 986fde3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/images/web-module/web-bundle-deployed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/virgo-getting-started-single.zip b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/virgo-getting-started-single.zip
deleted file mode 100644
index 1f04c06..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/virgo-getting-started-single.zip
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/virgo-getting-started.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/virgo-getting-started.html
deleted file mode 100644
index 30acf6b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-getting-started/htmlsingle/virgo-getting-started.html
+++ /dev/null
@@ -1,2203 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Creating an application with EclipseRT Virgo Web Server</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><meta name="description" content="Spring application programmers are introduced to Virgo Web Server by installing the Web Server and examining a small application called GreenPages. Despite its simplicity, GreenPages is designed to demonstrate many different Web Server features and to act as a template from which other modular applications can be built. This version of the guide is based on the following software versions: Web Server2.1.0.RELEASEGreenPages2.3.0.RELEASESpringSource Tool Suite2.5.0.RELEASEApache Maven2.2.0"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="d0e1"></a>Creating an application with EclipseRT Virgo Web Server</h1></div><div><h2 class="subtitle">GreenPages: a demonstration</h2></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Christopher</span> <span class="surname">Frost</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Ben</span> <span class="surname">Hale</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Rob</span> <span class="surname">Harrop</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Glyn</span> <span class="surname">Normington</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Steve</span> <span class="surname">Powell</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Andy</span> <span class="surname">Wilkinson</span></h3></div></div></div><div><div class="mediaobject" align="right"><table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0"><tr><td align="right" valign="bottom"><img src="images/virgo-logo-large.png" align="right"></td></tr></table></div></div><div><span class="productname">Web Server<br></span></div><div><p class="releaseinfo">2.1.0.RELEASE</p></div><div><div class="abstract"><p class="title"><b>Abstract</b></p><p>
- Spring application programmers are introduced to Virgo Web Server
- by installing the Web Server and examining a small application called GreenPages.
- Despite its simplicity, GreenPages is designed to demonstrate many different Web Server features and to
- act as a template from which other modular applications can be built.
- </p><p>
- This version of the guide is based on the following software versions:
- </p><table class="simplelist" border="0" summary="Simple list"><tr><td></td><td><span class="emphasis"><em>Web Server</em></span></td><td>2.1.0.RELEASE</td></tr><tr><td></td><td><span class="emphasis"><em>GreenPages</em></span></td><td>2.3.0.RELEASE</td></tr><tr><td></td><td><span class="emphasis"><em>SpringSource Tool Suite</em></span></td><td>2.5.0.RELEASE</td></tr><tr><td></td><td><span class="emphasis"><em>Apache Maven</em></span></td><td>2.2.0</td></tr></table><p>
- </p></div></div></div><div><div><div class="legalnotice"><a name="d0e82"></a><p>
- Copyright © 2009, 2010 VMware Inc.
- </p><div class="mediaobject"><img src="images/virgo-logo-small.png"></div><p>
- </p><p>
- All rights reserved. This document is made available under the terms of the Eclipse Public License v1.0
- which is available at
- <a class="ulink" href="http://www.eclipse.org/legal/epl-v10.html" target="_top">http://www.eclipse.org/legal/epl-v10.html</a>.
- </p><p>Java, Sun, and Sun Microsystems
- are trademarks or registered
- trademarks of Sun Microsystems, Inc. in the United
- States and other countries.
- </p><p>OSGi is a trademark or a registered trademark of the OSGi Alliance in
- the United States, other countries, or both.
- </p><p>Eclipse is a trademark of Eclipse Foundation, Inc.</p><p>UNIX is a registered trademark of The Open Group.</p><p>Windows is a registered trademark of Microsoft Corporation in the
- United States and other countries.</p><p>Mac and Mac OS are trademarks of Apple Inc., registered in the U.S. and other countries.</p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="preface"><a href="#d0e111">Preface</a></span></dt><dt><span class="chapter"><a href="#concepts">1. Concepts</a></span></dt><dd><dl><dt><span class="section"><a href="#concepts.osgi">1.1. OSGi concepts</a></span></dt><dt><span class="section"><a href="#concepts.springdm">1.2. Spring DM concepts</a></span></dt><dt><span class="section"><a href="#concepts.grouping">1.3. Grouping bundles in Web Server</a></span></dt></dl></dd><dt><span class="chapter"><a href="#installation">2. Installation</a></span></dt><dd><dl><dt><span class="section"><a href="#installation.prereqs">2.1. Pre-requisites</a></span></dt><dt><span class="section"><a href="#installation.dmserver">2.2. Installing Web Server</a></span></dt><dt><span class="section"><a href="#installation.sts">2.3. Installing the SpringSource Tool Suite</a></span></dt><dt><span class="section"><a href="#installation.maven">2.4. Installing Apache Maven</a></span></dt></dl></dd><dt><span class="chapter"><a href="#installing.greenpages">3. Installing GreenPages</a></span></dt><dd><dl><dt><span class="section"><a href="#installing.greenpages.introduction">3.1. Introduction</a></span></dt><dt><span class="section"><a href="#installing.greenpages.obtaining">3.2. Obtaining GreenPages</a></span></dt><dt><span class="section"><a href="#installing.greenpages.building">3.3. Building and installing GreenPages</a></span></dt><dt><span class="section"><a href="#installing.greenpages.browsing">3.4. Browsing the GreenPages application</a></span></dt><dt><span class="section"><a href="#installing.greenpages.tools">3.5. Running GreenPages from Eclipse</a></span></dt></dl></dd><dt><span class="chapter"><a href="#web.module">4. The Web Module</a></span></dt><dd><dl><dt><span class="section"><a href="#web.module.introduction">4.1. Introduction</a></span></dt><dt><span class="section"><a href="#setting.up">4.2. GreenPages set up</a></span></dt><dt><span class="section"><a href="#controller">4.3. The controller</a></span></dt><dt><span class="section"><a href="#deploy.bundle">4.4. Deploying a bundle</a></span></dt><dt><span class="section"><a href="#par.project">4.5. Creating a PAR</a></span></dt><dt><span class="section"><a href="#osgi.reference">4.6. Referencing an OSGi Service</a></span></dt><dt><span class="section"><a href="#osgi.service">4.7. Publishing an OSGi Service</a></span></dt></dl></dd><dt><span class="chapter"><a href="#middle-tier">5. The Middle Tier</a></span></dt><dd><dl><dt><span class="section"><a href="#middle-tier.introduction">5.1. Introduction</a></span></dt><dt><span class="section"><a href="#middle-tier.create-db-project">5.2. Creating the DataSource project</a></span></dt><dt><span class="section"><a href="#middle-tier.building-jpa-module">5.3. Building the JPA module</a></span></dt><dt><span class="section"><a href="#middle-tier.trying-it-out">5.4. Trying out the JPA middle tier</a></span></dt><dt><span class="section"><a href="#middle-tier.applying-best-practices">5.5. Applying best practices to the middle tier</a></span></dt></dl></dd><dt><span class="chapter"><a href="#testing.greenpages">6. Testing GreenPages</a></span></dt><dd><dl><dt><span class="section"><a href="#testing.greenpages.introduction">6.1. Introduction</a></span></dt><dt><span class="section"><a href="#testing.greenpages.single.bundle">6.2. Single bundle integration testing</a></span></dt><dt><span class="section"><a href="#testing.greenpages.contributing.osgi">6.3. Contributing OSGi sourced dependencies</a></span></dt><dt><span class="section"><a href="#testing.greenpages.application">6.4. Multi bundle integration testing</a></span></dt></dl></dd><dt><span class="chapter"><a href="#automated.build">7. Automated Build</a></span></dt><dd><dl><dt><span class="section"><a href="#automated.build.introduction">7.1. Introduction</a></span></dt><dt><span class="section"><a href="#automated.build.setup">7.2. Setting up for Automated Build</a></span></dt><dt><span class="section"><a href="#automated.build.create.pom">7.3. Create POM</a></span></dt><dt><span class="section"><a href="#automated.build.par.plugin">7.4. Adding the par plugin</a></span></dt><dt><span class="section"><a href="#automated.build.dependency.plugin">7.5. Adding the dependency plugin</a></span></dt><dt><span class="section"><a href="#running.tests">7.6. Automatically running the tests</a></span></dt><dt><span class="section"><a href="#automated.build.deploy.application">7.7. Deploying the application</a></span></dt></dl></dd><dt><span class="appendix"><a href="#further.resources">A. Further Resources</a></span></dt><dd><dl><dt><span class="section"><a href="#further.resources.projects">A.1. Projects</a></span></dt><dt><span class="section"><a href="#further.resources.documentation">A.2. Documentation</a></span></dt></dl></dd></dl></div><div class="preface" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="d0e111"></a>Preface</h2></div></div></div><p>
- This Guide introduces some basic concepts, explains how to install Virgo Web Server
- and the associated Eclipse<span class="trademark"></span>™ tools, and examines a sample
- web application in detail, including how the application is built and tested.
- </p><p>It is intended for Spring application programmers and assumes little or no
- understanding of OSGi<span class="trademark"></span>™ or Virgo Web Server.</p><p>Questions about Web Server and SpringSource Tool Suite (or this Guide) may be posted to the Web Server Community Forums
- (<a class="ulink" href="http://www.eclipse.org/forums" target="_top">http://www.eclipse.org/forums</a>).</p></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="concepts"></a>1. Concepts</h2></div></div></div><p>
- Virgo Web Server is a Java application server composed of a
- collection of modules which supports applications which are also composed of a
- collection of modules.
- These may be traditional Java web applications packaged as Web ARchive (<code class="literal">.war</code>)
- files as well as other modular applications.
- Modules may be shared between applications and multiple versions of modules
- can co-exist.
-</p><p>This chapter introduces concepts
-necessary for developing Web Server applications.
-These concepts will become clearer as the GreenPages application is explored
-in later chapters.</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="concepts.osgi"></a>1.1 OSGi concepts</h2></div></div></div><p>Modules in Virgo are represented using a standard Java
-module system known as <span class="emphasis"><em>OSGi</em></span>.
-Modules consist of programs and resources organised by Java package together
-with metadata which declares imported and exported packages.
-A module <span class="emphasis"><em>exports</em></span> a package to make the corresponding programs and resources
-available for use by other modules.
-A module <span class="emphasis"><em>imports</em></span> a package to use the corresponding programs and resources of
-another module.</p><p>
- Representing a program as a collection of modules makes it easier for the
- programmer to manage it and modify it and for teams of programmers to divide
- responsibilities between themselves.
- A module is similar to a Java class in this respect. Design principles similar to those for
- organising data and programs into classes can be applied
- to organising applications into modules.
-</p><p>
- An industry consortium known as the
- <span class="emphasis"><em>OSGi Alliance</em></span> (see <a class="xref" href="#further.resources.projects" title="A.1 Projects">the appendix Projects</a>) develops OSGi
- specifications, reference implementations, and compliance tests.
- Virgo Web Server is built on the Equinox OSGi framework which is also
- the reference implementation for the OSGi framework specification.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e164"></a>Bundles</h3></div></div></div><p>Modules in OSGi are known as <span class="emphasis"><em>bundles</em></span>.
-Each bundle is stored in a file which conforms to the JAR file format and
-can contain Java classes, a manifest (in <code class="literal">META-INF/MANIFEST.MF</code>),
-and further resource files.</p><p>The OSGi framework enables bundles to be installed and run.</p><p>OSGi identifies bundles “<span class="quote">by name</span>” or “<span class="quote">by identifier</span>” (id).</p><p>The <span class="emphasis"><em>symbolic name</em></span> and
-<span class="emphasis"><em>version</em></span> of a bundle is an attribute of the bundle itself and uniquely identifies that bundle (by name) in an OSGi framework.
-A bundle usually declares its <span class="emphasis"><em>symbolic name</em></span> and <span class="emphasis"><em>version</em></span>
-in its manifest (a file called <code class="literal">MANIFEST.MF</code>) like this:
-</p><pre class="programlisting">Bundle-SymbolicName: org.foo.bundle
-Bundle-Version: 1.2.3.BUILD-2009-06-04
-</pre><p>
-</p><p>Additionally, the OSGi framework
-assigns a distinct number, known as a <span class="emphasis"><em>bundle id</em></span>, to each bundle
-as it is installed. Bundles may be referred to “<span class="quote">by identifier</span>” using this number.
-The OSGi framework itself resides in a
-bundle with bundle id <code class="literal">0</code>.</p><p>The
-dependencies between bundles are expressed statically in terms of packages and
-dynamically in terms of services. A package is familiar to Java programmers.
-For example, a Java program may depend on a class <code class="literal">org.foo.X</code>,
-from package <code class="literal">org.foo</code>, and a bundle
-containing that program
-would either need to contain <code class="literal">org.foo.X</code> or depend on the
-package <code class="literal">org.foo</code>.
-Package dependencies are specified in the bundle manifest, for example:
-</p><pre class="programlisting">Import-Package: org.foo
-</pre><p>
-</p><p>A bundle which provides a package for use by other bundles <span class="emphasis"><em>must</em></span>
-export the package in its manifest. For example:
-</p><pre class="programlisting">Export-Package: org.foo
-</pre><p>
-</p><p>The OSGi framework ensures that a given bundle’s package dependencies
-can be <span class="emphasis"><em>satisfied</em></span> before the bundle runs. This process is known as
-<span class="emphasis"><em>resolution</em></span>.</p><p>After a bundle is resolved, its classes and resources are available for
-loading.
-In OSGi, bundles and their packages do not appear on the application classpath.
-Instead, each bundle has a class loader which loads its own classes and loads classes belonging to each of its
-imported packages by deferring to the bundle class loader that exports the package.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e252"></a>Life cycle</h3></div></div></div><p>The OSGi framework manages the <span class="emphasis"><em>life cycle</em></span> of each bundle. A bundle is
-first of all <span class="emphasis"><em>install</em></span>ed and will be in the INSTALLED state.
-If a request is made to <span class="emphasis"><em>start</em></span> the bundle, the OSGi framework <span class="emphasis"><em>resolve</em></span>s the bundle
-and, if resolution was successful, will subsequently move the bundle to the ACTIVE state.
-If a request is made to <span class="emphasis"><em>stop</em></span> the bundle, the OSGi framework will move the
-bundle back to the RESOLVED state. A request may then be made to <span class="emphasis"><em>uninstall</em></span>
-the bundle.</p><p>While the bundle is INSTALLED, ACTIVE or RESOLVED, it may be <span class="emphasis"><em>updated</em></span> to pick up
-some changes. These changes are not detected by bundles which were depending
-on the bundle before it was updated.
-A “<span class="quote">refresh packages</span>” operation may be performed to ripple the
-changes out to those bundles. (See <a class="xref" href="#concepts.services" title="Services">Services concepts</a>.)</p><p>The life cycle of a bundle can be summarised by a state transition diagram.
-This diagram shows some more of the intermediate states of a bundle not described in the overview above:
-</p><div class="figure"><a name="d0e287"></a><p class="title"><b>Figure 1.1. Bundle life cycle</b></p><div class="figure-contents"><div class="mediaobject" align="center"><img src="images/concepts/bundle-lifecycle.png" align="middle" alt="Bundle life cycle"></div></div></div><p><br class="figure-break"></p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="concepts.services"></a>Services</h3></div></div></div><p>Bundles may publish Java objects, known as <span class="emphasis"><em>services</em></span>,
-to a registry managed by the OSGi framework. Other bundles running in
-the same OSGi framework can then find and use those services. Services
-are typically instances of some shared Java interface. A bundle which
-provides a service need not then export the package containing the
-<span class="emphasis"><em>implementation</em></span>
-class of the service.
-</p><p>For example, a bundle could export a package containing the interface
-<code class="literal">org.bar.SomeInterface</code>, thus:
-
-</p><pre class="programlisting">Export-Package: org.bar
-</pre><p>
-</p><p>…implement the interface with a class <code class="literal">SomeImpl</code>:
-
-</p><pre class="programlisting">package org.bar.impl;
-
-class SomeImpl implements SomeInterface {
- …
-}
-</pre><p>
-</p><p>…create an instance of <code class="literal">SomeImpl</code> and
-then publish this instance (as an instance of the interface <code class="literal">SomeInterface</code>).
-</p><p>An OSGi framework publishes a number of standard services. For example, the
-<span class="emphasis"><em>Package Admin</em></span> service provides the “<span class="quote">refresh packages</span>” life cycle operation
-mentioned above.</p><p>OSGi provides an <em class="glossterm">API</em> which can be used to publish and find services,
-but it is much simpler to use Spring DM to accomplish this. (See <a class="xref" href="#concepts.springdm" title="1.2 Spring DM concepts">Spring DM concepts</a>.)</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e347"></a>Versioning</h3></div></div></div><p>
- OSGi allows different versions of bundles, packages, and several
- other entities, to co-exist in the same framework
- and provides some mechanisms for managing these versions.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e352"></a>Version numbers</h4></div></div></div><p>An OSGi <span class="emphasis"><em>version number</em></span> consists of up to three numeric components,
-or exactly three
-numeric components followed by a string component. These components are
-separated by a period (“<span class="quote"><code class="literal">.</code></span>”) and
-are called the <span class="emphasis"><em>major</em></span>, <span class="emphasis"><em>minor</em></span>, <span class="emphasis"><em>micro</em></span>,
-and <span class="emphasis"><em>qualifier</em></span> components, respectively.
-</p><p>For example, the version <code class="literal">2.4.1.ga</code> has major component <code class="literal">2</code>, minor component
-<code class="literal">4</code>, micro component <code class="literal">1</code>,
-and a qualifier component <code class="literal">ga</code>. (There are restrictions on the characters that can appear in
-a qualifier. For example: letters, digits, underscores and hyphens are allowed; periods and commas are not.)</p><p>Trailing components may be omitted along with their period (<code class="literal">.</code>). So, for example, the version
-numbers <code class="literal">2</code>, <code class="literal">2.0</code>, and <code class="literal">2.0.0</code>
-all denote the same version. This example demonstrates that <code class="literal">0</code> is assumed if a numeric component is omitted,
-and the empty string is assumed for an omitted qualifier.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e410"></a>Version ranges</h4></div></div></div><p>Dependencies on bundles and packages have an associated <span class="emphasis"><em>version range</em></span>
-which is specified using an interval notation: a square bracket
-“<span class="quote"><code class="literal">[</code></span>” or “<span class="quote"><code class="literal">]</code></span>” denotes
-an <span class="emphasis"><em>inclusive</em></span> end of the range and a round bracket
-“<span class="quote"><code class="literal">(</code></span>” or “<span class="quote"><code class="literal">)</code></span>” denotes
-an <span class="emphasis"><em>exclusive</em></span> end of the range. Where one end of the range is to be included and the other excluded, it is permitted to
-pair a round bracket with a square bracket.
-The examples below make this clear.</p><p>If a single version number is used where a version <span class="emphasis"><em>range</em></span> is
-required this does <span class="emphasis"><em>not</em></span> indicate a single version, but the range <span class="emphasis"><em>starting</em></span> from that version and
-including all higher versions.</p><p>There are three common cases:
-
-</p><div class="itemizedlist"><ul type="disc"><li><p>A “<span class="quote">strict</span>” version range, such as <code class="literal">[1.2,1.2]</code>, which
-denotes that version and only that version.</p></li><li><p>A “<span class="quote">half-open</span>” range, such as
-<code class="literal">[1.2,2)</code>, which has an inclusive lower limit
-and an exclusive upper limit, denoting version <code class="literal">1.2.0</code> and any version after this, up
-to, <span class="emphasis"><em>but not including</em></span>, version <code class="literal">2.0.0</code>.
-</p></li><li><p>An “<span class="quote">unbounded</span>” version range, such as <code class="literal">1.2</code>, which
-denotes version <code class="literal">1.2</code> and <span class="emphasis"><em>all</em></span> later versions.</p></li></ul></div><p>
-
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e497"></a>Versioning policies</h4></div></div></div><p>A <span class="emphasis"><em>versioning policy</em></span> is a way of using version numbers to indicate compatible
-and incompatible changes.
-OSGi does not mandate a particular versioning policy.
-Instead, a specific versioning policy may be implemented using version ranges.</p><p>Strict and half-open version ranges are most useful in representing versioning
-policies.
-Unbounded version ranges can lead to problems as they (unrealistically) assume that
-compatibility will be preserved indefinitely.</p><p>For example, a conservative versioning policy might assume that any change, other than
-in the qualifier component of a version, implies an incompatible
-change to the object.
-Such a policy would employ version ranges such as <code class="literal">[1.2.1.beta,1.2.2)</code>
-which accept any version from <code class="literal">1.2.1.beta</code> (inclusive) up to but not including
-<code class="literal">1.2.2</code> (exclusive).
-</p><p>Alternatively, a relaxed versioning policy might assume that only changes in the major component of
-a version denote an incompatible change.
-Such a policy would employ version ranges such as <code class="literal">[1.2,2)</code> to capture this.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e524"></a>Bundle version</h4></div></div></div><p>Each bundle has a version.
-The bundle’s version may be specified in the manifest using a
-<code class="literal">Bundle-Version</code> header:
-
-</p><div class="informalexample"><pre class="programlisting">Bundle-Version: 1.4.3.BUILD-20090302
-</pre></div><p>
-If not specified the bundle version is assumed to be <code class="literal">0</code>.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e540"></a>Package version</h4></div></div></div><p>Each exported package has a version.
-The exported package’s version may be specified on the Export-Package manifest header. For example
-
-</p><div class="informalexample"><pre class="programlisting">Export-Package: org.foo;version="2.9",org.bar;version="1"
-</pre></div><p>
-
-exports two packages: <code class="literal">org.foo</code>, at version <code class="literal">2.9.0</code> and
-<code class="literal">org.bar</code>, at version <code class="literal">1.0.0</code>.
-</p><p>If the version attribute is omitted the version is assumed to be <code class="literal">0</code>.</p><p>Each package <span class="emphasis"><em>import</em></span> has a version <span class="emphasis"><em>range</em></span>.
-The package import version range may be specified on the <code class="literal">Import-Package</code> manifest header.
-If interval notation is used, the version range must be enclosed in double quotes, for example:
-</p><div class="informalexample"><pre class="programlisting">Import-Package: org.foo;version="[2,3)",org.bar;version="[1,1]"</pre></div><p>
-seeks to import a package <code class="literal">org.foo</code> in the range <code class="literal">[2.0.0,3.0.0)</code> and a package
-<code class="literal">org.bar</code> with the (exact) version <code class="literal">1.0.0</code>.
-</p><p>If a version range is not specified on an import, the range <code class="literal">0</code> is assumed, meaning that
-any version of this package would satisfy the import.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e599"></a>Bundle manifest version</h4></div></div></div><p>Bundle manifests have a version which is <code class="literal">1</code> by default,
-indicating OSGi Release 3 semantics.
-Web Server is based on OSGi Release 4 and therefore expects bundle manifests to be
-at version <code class="literal">2</code>, indicating OSGi Release 4 semantics. (See <a class="xref" href="#further.resources.projects" title="A.1 Projects">the appendix Projects</a>.)
-The bundle manifest’s version should be specified on the Bundle-ManifestVersion manifest header, exactly as follows:
-</p><div class="informalexample"><pre class="programlisting">Bundle-ManifestVersion: 2
-</pre></div><p>
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e617"></a>Manifest version</h4></div></div></div><p>Manifests themselves also have a version which <span class="emphasis"><em>must</em></span> be specified as <code class="literal">1.0</code>.
-This is not an OSGi definition but part of the JAR file specification
-(<a class="ulink" href="http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html" target="_top">http://java.sun.com/javase/6/docs/technotes/guides/jar/jar.html</a>).
-
-</p><div class="informalexample"><pre class="programlisting">Manifest-Version: 1.0
-</pre></div><p>
-
-</p></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="concepts.springdm"></a>1.2 Spring DM concepts</h2></div></div></div><p>Spring DM is a project which enables <span class="emphasis"><em>services</em></span> to be published and consumed
-using descriptions written in XML.
-Web Server has Spring DM built-in.</p><p>The XML descriptions reside in files with extension <code class="literal">.xml</code> in the
-bundle’s <code class="literal">META-INF/spring</code> sub-directory.</p><p>
- To publish a service, an <code class="literal"><osgi:service></code> tag is used, specifying the
- implementation class of the service and the interface class to be used.
- Spring DM constructs an instance of the implementation class and
- publishes that instance in the OSGi service registry under the interface when the bundle is started.
-</p><p>To consume a service, an <code class="literal"><osgi:reference></code> tag is used and the
-service may be passed into other Spring beans using Spring’s dependency
-injection facilities.</p><p>Spring DM automatically creates proxies for OSGi services so that the actual service
-object may come and go at runtime.
-If a service disappears, any proxies to the service will wait for the service to re-appear.
-This effect is known as <span class="emphasis"><em>damping</em></span>.</p><p>When a bundle is started, Spring DM builds the application contexts
-specified by the XML descriptions, creates proxies for the specified services, and publishes
-the specified services to the OSGi service registry.</p><p>When a bundle is stopped, Spring DM retracts any services it published on behalf of the bundle
-and closes the bundle’s application contexts.
-Web Server turns off damping of a service proxy while the proxy’s application context
-is being closed.</p><p>(Spring DM has been contributed to Eclipse as the <span class="emphasis"><em>Gemini Blueprint</em></span> project.)</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="concepts.grouping"></a>1.3 Grouping bundles in Web Server</h2></div></div></div><p>Web Server provides a way of grouping together a collection
-of OSGi bundles which comprise a single application.
-These bundles are placed in a JAR file with extension “<span class="quote"><code class="literal">.par</code></span>”. This is called a PAR file.</p><p>All the bundles in a PAR file are resolved together and so mutual dependencies are permitted.</p><p>At runtime a PAR file provides a <span class="emphasis"><em>scope</em></span> in the sense that bundles
-inside the PAR file may depend on packages and services outside the PAR file,
-but bundles outside the PAR file may not depend on packages and services
-provided by the PAR file.</p><p>Virgo also provides the plan artifact as another way of grouping bundles and other artifacts into an application.
-A <span class="emphasis"><em>plan</em></span> is a file (in XML format) listing a collection of artifacts.
-This Guide makes no further reference to plans.
-See <a class="xref" href="#further.resources.documentation" title="A.2 Documentation">Section A.2, “Documentation”</a> for a link to more Virgo documentation.</p><p>PAR files (or individual bundles) are <span class="emphasis"><em>deployed</em></span> into Web Server by dropping them into a “<span class="quote">pickup</span>”
-directory or using the Administration Console web application provided with Web Server.
-During deployment, the bundles in the PAR file are installed into OSGi, resolved together, and then started together.</p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="installation"></a>2. Installation</h2></div></div></div><p>
-Before developing an application with Web Server, it is essential to install <span class="emphasis"><em>Web Server</em></span>,
-an <span class="emphasis"><em>Integrated Development Environment</em></span> (IDE), and a build system integrated with Eclipse.
-The IDE used here is the
-Eclipse-based <span class="emphasis"><em>SpringSource Tool Suite</em></span> (STS), and
-the build system used here is <span class="emphasis"><em>Apache Maven</em></span>.
-</p><p>STS is supplied as a fully configured Eclipse IDE, with Virgo Web Server and Maven plugins built-in.</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation.prereqs"></a>2.1 Pre-requisites</h2></div></div></div><p>
-Before proceeding, ensure that a Java<span class="trademark"></span>™ Standard Edition Development Kit (JDK)
-for Java 6 or later is installed and that the <code class="literal">JAVA_HOME</code> environment variable
-is set to the root directory of the JDK.
-(<span class="emphasis"><em>A Java Runtime Environment (JRE) alone is not sufficient,
-a development kit is necessary to use the facilities in STS.</em></span>)
-</p><p>
-To verify this, issue the command <code class="literal">"%JAVA_HOME%"\bin\java -version</code> from
-a command prompt on Windows (or <code class="literal">$JAVA_HOME/bin/java -version</code> from a terminal window on UNIX)
-and ensure that the command completes successfully and reports
-a Java version <code class="literal">1.6.</code><span class="emphasis"><em>x</em></span> (denoting Java 6) or greater.
-</p><p>
-Also issue the command <code class="literal">"%JAVA_HOME%"\bin\jar</code> to ensure that there is a means of
-extracting files from zip archives.
-If the <code class="literal">jar</code> command is unavailable, download and install a suitable zip program
-such as <code class="literal">7zip</code>, <code class="literal">gzip</code>, or <code class="literal">WinZip</code>.
-This is most relevant for Windows operating systems where the inbuilt zip extraction utility may
-not handle long pathnames correctly.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation.dmserver"></a>2.2 Installing Web Server</h2></div></div></div><p>
-Although the steps are similar, the details of installing the Virgo Web Server
-depend on the operating system.
-</p><p>
-Obtain Web Server from the
-download site (<a class="ulink" href="http://www.eclipse.org/virgo/download" target="_top">http://www.eclipse.org/virgo/download</a>).
-This guide is consistent with version 2.1.0.RELEASE of Web Server.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e780"></a>Installing Web Server on Windows<span class="trademark"></span>™ operating systems</h3></div></div></div><p>
-Unzip the download of Web Server to the root directory of
-a drive (this will avoid possible problems with long pathnames).
-Set an environment variable <code class="literal">%VWS_HOME%</code> to refer to the unzipped folder…
-</p><pre class="programlisting">prompt> cd C:\
-prompt> "%JAVA_HOME%"\bin\jar xf <span class="emphasis"><em>\path\to\</em></span>virgo-web-server-2.1.0.RELEASE.zip
-prompt> set VWS_HOME=C:\virgo-web-server-2.1.0.RELEASE
-</pre><p>
-</p><p>
-To verify the installation, issue the command:
-<code class="literal">"%VWS_HOME%"\bin\startup.bat</code> and ensure a message numbered <code class="literal">UR0001I</code>
-is displayed.
-Many other messages about starting and installing other required artifacts are produced,
-but the <code class="literal">UR0001I</code> message indicates that the user region is ready for use.
-(<span class="emphasis"><em>Timestamps have been removed
-and thread names and other details may vary with different installations and versions.</em></span>)
-</p><pre class="programlisting">system-artifacts <TC0000I> Starting Tomcat.
-system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme http on port 8080.
-system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme https on port 8443.
-system-artifacts <TC0010I> Creating AJP/1.3 connector with scheme http on port 8009.
-system-artifacts <TC0001I> Started Tomcat.
-system-artifacts <DE0004I> Starting bundle 'org.eclipse.virgo.web.core' version '2.1.0.RELEASE'.
-system-artifacts <DE0004I> Starting bundle 'org.eclipse.virgo.web.dm' version '2.1.0.RELEASE'.
-start-signalling-1 <DE0005I> Started bundle 'org.eclipse.virgo.web.dm' version '2.1.0.RELEASE'.
-system-artifacts <DE0005I> Started bundle 'org.eclipse.virgo.web.tomcat' version '2.1.0.RELEASE'.
-start-signalling-1 <DE0005I> Started bundle 'org.eclipse.gemini.web.tomcat' version '1.1.0.RELEASE'.
-start-signalling-2 <DE0005I> Started bundle 'org.eclipse.virgo.web.core' version '2.1.0.RELEASE'.
-start-signalling-2 <DE0005I> Started plan 'org.eclipse.virgo.web' version '2.1.0'.
-Thread-2 <UR0001I> User region ready. </pre><p>
-</p><p>Shut down the server by pressing <code class="literal">Ctrl-C</code>.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e818"></a>Installing Web Server on UNIX<span class="trademark"></span>™ operating systems</h3></div></div></div><p>
- Unzip the download of Web Server to a suitable location on the file system, such
- as the home directory. (If the download was automatically unzipped by the operating
- system, simply move the unzipped directory to the chosen location.)
- Set an environment variable <code class="literal">$VWS_HOME</code> to refer to the unzipped folder…
-</p><pre class="programlisting">prompt$ mkdir <span class="emphasis"><em>/path/to/home/</em></span>springsource
-prompt$ cd <span class="emphasis"><em>/path/to/home/</em></span>springsource
-prompt$ unzip <span class="emphasis"><em>/path/to/</em></span>virgo-web-server-2.1.0.RELEASE.zip
-prompt$ export VWS_HOME=<span class="emphasis"><em>/path/to/home/</em></span>springsource/virgo-web-server-2.1.0.RELEASE
-</pre><p>
-</p><p>
-To verify the installation, use a terminal window to issue the command:
-<code class="literal">$VWS_HOME/bin/startup.sh</code> and ensure a message numbered <code class="literal">UR0001I</code> is displayed.
-Many other messages about starting and installing other required artifacts are produced,
-but the <code class="literal">UR0001I</code> message indicates that the user region is ready for use.
-(<span class="emphasis"><em>Timestamps have been removed
-and thread names and other details may vary with different installations and versions.</em></span>)
-</p><pre class="programlisting">system-artifacts <TC0000I> Starting Tomcat.
-system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme http on port 8080.
-system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme https on port 8443.
-system-artifacts <TC0010I> Creating AJP/1.3 connector with scheme http on port 8009.
-system-artifacts <TC0001I> Started Tomcat.
-system-artifacts <DE0004I> Starting bundle 'org.eclipse.virgo.web.core' version '2.1.0.RELEASE'.
-system-artifacts <DE0004I> Starting bundle 'org.eclipse.virgo.web.dm' version '2.1.0.RELEASE'.
-start-signalling-1 <DE0005I> Started bundle 'org.eclipse.virgo.web.dm' version '2.1.0.RELEASE'.
-system-artifacts <DE0005I> Started bundle 'org.eclipse.virgo.web.tomcat' version '2.1.0.RELEASE'.
-start-signalling-1 <DE0005I> Started bundle 'org.eclipse.gemini.web.tomcat' version '1.1.0.RELEASE'.
-start-signalling-2 <DE0005I> Started bundle 'org.eclipse.virgo.web.core' version '2.1.0.RELEASE'.
-start-signalling-2 <DE0005I> Started plan 'org.eclipse.virgo.web' version '2.1.0'.
-Thread-2 <UR0001I> User region ready. </pre><p>
-</p><p>Shut down the server by pressing <code class="literal">Ctrl-C</code>. </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation.sts"></a>2.3 Installing the SpringSource Tool Suite</h2></div></div></div><p>
-The SpringSource Tool Suite (STS) is a development environment based on Eclipse that
-is already configured with
-
-the plugins needed to
-work with Web Server and OSGi.
-Although the steps are similar, the details of installing STS depend on the operating system.
-</p><p>
-Go to the STS download site (<a class="ulink" href="http://www.springsource.com/products/springsource-tool-suite-download" target="_top">http://www.springsource.com/products/springsource-tool-suite-download</a>)
-and download the variant appropriate to the operating system being used.
-This guide is consistent with STS version 2.5.0.RELEASE. Previous versions may not work properly with
-the latest revision of GreenPages, currently 2.3.0.RELEASE.
-</p><p>
-It is possible to use vanilla Eclipse, and add the SpringSource Tools to it. Please refer to the installation instructions in the
-<a class="ulink" href="http://www.eclipse.org/virgo/documentation/" target="_top">Virgo Programmer Guide</a>.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e882"></a>Installing STS on Windows<span class="trademark"></span>™ operating systems</h3></div></div></div><p>
-Unzip the download of STS to the root directory of
-a drive (this will avoid possible problems with long pathnames).
-</p><pre class="programlisting">prompt> cd C:\
-prompt> "%JAVA_HOME%"\bin\jar xf \<span class="emphasis"><em>full…path…to</em></span>\springsource-tool-suite-2.5.0.RELEASE-e3.6.1-win32.zip
-</pre><p>
-</p><p>
-To verify the installation, run the <code class="literal">eclipse.exe</code> (or <code class="literal">sts.exe</code>) executable in the unzipped directory
-and check that STS displays a welcome panel.
-The first time there may be a short delay due to the initial set-up of indexes.
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="d0e903"></a>Installing STS on UNIX<span class="trademark"></span>™ operating systems</h4></div></div></div><p>
-Unpack the download of STS to a suitable location on the file system, such
-as <code class="literal">/opt</code> or, if root access is not available, the home directory.
-(If the download was automatically unpacked by the operating
-system, simply move the unpacked directory to the chosen location.)
-</p><p>
-To verify the installation, run the STS executable (<code class="literal">STS.app</code> on Mac OS X)
-in the unpacked directory and check that STS displays a welcome panel.
-The first time there may be a short delay due to the initial set-up of indexes.
-</p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e918"></a>Note about Java versions in STS</h3></div></div></div><p>
- SpringSource Tool Suite runs on Eclipse using Java Version 1.6, and Web Server requires Java Version 1.6.
- The GreenPages application built here also requires Java Version 1.6.
- The default Java compiler settings in STS should not need adjusting, but should be checked.
-</p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation.maven"></a>2.4 Installing Apache Maven</h2></div></div></div><p>
-<span class="emphasis"><em>Apache Maven</em></span>, or Maven for short, is a software project management and comprehension tool
-which uses a central <span class="emphasis"><em>Project Object Model</em></span> (POM) to manage a project’s build, reporting
-and documentation generation. POM files (<code class="literal">pom.xml</code>) are included in the projects for
-GreenPages.
-</p><p>
-To install Maven, visit the Maven website (<a class="ulink" href="http://maven.apache.org" target="_top">http://maven.apache.org</a>)
-and follow the download instructions from there.
-This document has been written and tested with Maven version 2.2.0. The rest of the document
-assumes that Maven
-commands (<code class="literal">mvn …</code>) are available from the command line.
-</p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="installing.greenpages"></a>3. Installing and exploring GreenPages</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.introduction"></a>3.1 Introduction</h2></div></div></div><p>GreenPages is a simple application that allows users to search an online email address directory. Each listing
- in the directory details the relevant email addresses and the name of the owner. GreenPages has only three screens:
- the search screen, the results screen and the listing detail screen.</p><p>In the search screen, users can enter search criteria to be matched against the listings in the directory.
- The result screen displays any listings that match the criteria entered by the user. The listing detail screen
- shows all the data known about a given listing.</p><p>Despite its simplicity, GreenPages is designed to demonstrate many different Web Server features and to
- act as a template from which other modular applications can be built. In particular, GreenPages demonstrates:
- </p><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>module dependencies with <code class="literal">Import-Package</code>,</p></li><li style="list-style-type: disc"><p>load-time weaving with JPA and AspectJ,</p></li><li style="list-style-type: disc"><p>bundle classpath scanning, and</p></li><li style="list-style-type: disc"><p>service export, lookup and injection.</p></li></ul></div><p>In addition to demonstrating common Web Server features, GreenPages demonstrates integration with:
- </p><div class="itemizedlist"><ul type="bullet"><li style="list-style-type: disc"><p>Spring Framework 3.0;</p></li><li style="list-style-type: disc"><p>FreeMarker 2.3;</p></li><li style="list-style-type: disc"><p>EclipseLink 1.0.0;</p></li><li style="list-style-type: disc"><p>H2 1.0.71; and</p></li><li style="list-style-type: disc"><p>Commons DBCP 1.2.2.</p></li></ul></div><p>
- </p><p>The GreenPages application is packaged as a PAR file containing four modules.
- </p><div class="mediaobject" align="center"><table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0" width="461"><tr><td align="center"><img src="images/installing-greenpages/greenpages.png" align="middle" width="461"></td></tr></table></div><p>
- </p><p>
- The <code class="literal">greenpages.db</code> module provides access to an external database and publishes a
- <code class="literal">javax.sql.DataSource</code> service.
- </p><p>
- The <code class="literal">greenpages.app</code> module exports a <code class="literal">greenpages</code> package containing
- <code class="literal">Directory</code> and <code class="literal">Listing</code> interfaces.
- </p><p>
- The <code class="literal">greenpages.jpa</code> module imports the <code class="literal">greenpages</code> package and
- uses the <code class="literal">javax.sql.DataSource</code> service to
- access the external database and publishes its contents as a <code class="literal">greenpages.Directory</code> service.
- </p><p>
- The <code class="literal">greenpages.web</code> module imports the <code class="literal">greenpages</code> package and uses the
- <code class="literal">greenpages.Directory</code> service to respond to web requests.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.obtaining"></a>3.2 Obtaining GreenPages</h2></div></div></div><p>This document provides instructions for building the complete GreenPages application and running it in Web Server as well as running tests and executing it from the SpringSource Tool Suite.
- In addition, the application is examined in development stages from SpringSource Tool Suite, stepping through the development process and comparing this to the solution.
- </p><p>To get the completed GreenPages application, including tests and explanatory skeleton parts:
- </p><div class="orderedlist"><ol type="1"><li><p>download the latest ZIP file from </p><pre class="programlisting">http://eclipse.org/virgo/download/</pre></li><li><p>extract all the files from the ZIP file to a convenient directory (preserving the directory structure).</p></li></ol></div><p>
-</p><p>To extract the files on Windows:
-</p><pre class="programlisting">prompt> mkdir c:\springsource\samples
-prompt> cd c:\springsource\samples
-prompt> jar xf c:\path\to\greenpages-2.3.0.RELEASE.zip
-prompt> set GREENPAGES_HOME=c:\springsource\samples\greenpages-2.3.0.RELEASE</pre><p>
-</p><p>To extract the files on Unix systems:
-</p><pre class="programlisting">prompt$ mkdir -p /opt/springsource/samples
-prompt$ cd /opt/springsource/samples
-prompt$ unzip /path/to/greenpages-2.3.0.RELEASE.zip
-prompt$ export GREENPAGES_HOME=/opt/springsource/samples/greenpages-2.3.0.RELEASE
-</pre><p>
-</p><p>The environment variable <code class="literal">GREENPAGES_HOME</code> set here is not used by the projects, but is used as a shorthand
- in the instructions that follow.
-</p><p>The GreenPages zip file contains two main directories called <code class="literal">solution</code> and <code class="literal">start</code>.
- The <code class="literal">solution</code> directory contains the completed application which can be built and tested (as described in the next section).
- The <code class="literal">start</code> directory contains an initial skeleton of the GreenPages application which can be used to generate the full application.
- The examination steps refer to this skeleton by way of illustration.
-</p><p>To follow the examination steps read <a class="xref" href="#web.module" title="4. The Web Module">Chapter 4, <i>The Web Module</i></a> <span class="emphasis"><em>after</em></span> installing the full application in the following section.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.building"></a>3.3 Building and installing GreenPages</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.building.mvn"></a>Building with Apache Maven</h3></div></div></div><p>GreenPages uses Apache Maven as its primary build system. Each module of the application can be built
- separately and the entire application can built and assembled into a PAR file from a single location.
- To build the application and assemble it into a PAR
- file:
- </p><div class="orderedlist"><ol type="1"><li><p>Make <code class="code">$GREENPAGES_HOME/solution</code> the current directory.</p></li><li><p>Run the command
- <code class="code">mvn package</code>. The first time this is run several files will be downloaded
- from Maven repositories and SpringSource repositories. Subsequent runs will not need to do this.
- </p></li><li><p>Verify that the
- <code class="code">greenpages-2.3.0.RELEASE.par</code> file exists in
- <code class="code">$GREENPAGES_HOME/solution/greenpages/target</code>.
- </p></li></ol></div><p>
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.building.par.provided"></a>Installing dependencies into Web Server</h3></div></div></div><p>
- Unlike traditional Java EE applications, GreenPages does not package all of its dependencies inside its
- deployment unit. Instead, it relies on the mechanisms of OSGi to locate its dependencies at runtime.
- When running an OSGi application on Web Server, these dependencies can be loaded into memory as needed, but first they
- must be made available to Web Server.
- </p><p>The Maven build included with GreenPages uses the <code class="code">dependency:copy-dependencies</code> plugin to gather
- all the artifacts that GreenPages depends on that are not supplied by the Web Server runtime. These dependencies
- can then be installed into the Web Server repository. Dependencies are gathered automatically during the
- <code class="code">package</code> phase. These dependencies can be found in
- <code class="literal">$GREENPAGES_HOME/solution/greenpages/target/par-provided</code>. To install dependencies
- simply copy all the <code class="code">*.jar</code> files from this directory into <code class="literal">$VWS_HOME/repository/usr</code>.
- </p><p>Installing dependencies on Windows:
-</p><pre class="programlisting">prompt> cd %GREENPAGES_HOME%\solution\greenpages
-prompt> copy target\par-provided\* %VWS_HOME%\repository\usr
-</pre><p>
-</p><p>Installing Dependencies on UNIX:
-</p><pre class="programlisting">prompt$ cd $GREENPAGES_HOME/solution/greenpages
-prompt$ cp target/par-provided/* $VWS_HOME/repository/usr
-</pre><p>
-</p><p>
- Notice that Web Server will not necessarily see these dependencies unless its repository indexes are rebuilt.
- Different repositories behave differently in this respect; some are passive (their indexes are built only once upon startup)
- and some are active (they can detect new files or files being removed dynamically).
- The <code class="literal">usr</code> repository is active so there is no
- need to restart Web Server when copying these files.
- The next time Web Server is started the <code class="literal">-clean</code> option will cause Web Server to re-scan the repository directories in any case.
- It is always safe to start Web Server with the <code class="literal">-clean</code> option.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.building.db"></a>Starting and configuring the database</h3></div></div></div><p>GreenPages uses the H2 database to store all its data. Before starting the application, start the database server and populate the database with data.</p><div class="orderedlist"><ol type="1"><li><p>Change to the <code class="code">$GREENPAGES_HOME/db</code> current directory. On Unix:</p><pre class="programlisting">prompt$ cd $GREENPAGES_HOME/db</pre><p>On Windows:</p><pre class="programlisting">prompt> cd %GREENPAGES_HOME%\db</pre></li><li><p>Run the database startup script appropriate to the operating system. For Unix, this is <code class="literal">run.sh</code>, run in the background:</p><pre class="programlisting">prompt$ sh run.sh &</pre><p>Press Return to continue.</p><p>On Windows, run the <code class="literal">run.bat</code> command:</p><pre class="programlisting">prompt> run</pre><p>For both platforms, the command might invoke a browser window offering a connection to the database; close this window.</p></li><li><p>Run the data population script appropriate to the operating system. For Unix, this is <code class="literal">data.sh</code>:</p><pre class="programlisting">prompt$ sh data.sh</pre><p>On Windows, run the <code class="literal">data.bat</code> command:</p><pre class="programlisting">prompt> data</pre></li></ol></div><p>
-Run these commands once to start a database server for H2; the server will continue to run in the background.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.building.par"></a>Installing and starting GreenPages PAR</h3></div></div></div><p>To install the GreenPages PAR into Web Server and start it:
- </p><div class="orderedlist"><ol type="1"><li><p>Copy the GreenPages PAR to the <code class="code">$VWS_HOME/pickup</code> directory. On Unix:</p><pre class="programlisting">prompt$ cd $VWS_HOME
-prompt$ cp $GREENPAGES_HOME/solution/greenpages/target/greenpages-solution-2.3.0.RELEASE.par pickup/</pre><p>On Windows:</p><pre class="programlisting">prompt> cd %VWS_HOME%
-prompt> copy %GREENPAGES_HOME%\solution\greenpages\target\greenpages-solution-2.3.0.RELEASE.par pickup\</pre></li><li><p>Start Web Server with the <code class="literal">-clean</code> option. On Unix:</p><pre class="programlisting">prompt$ $VWS_HOME/bin/startup.sh -clean</pre><p>On Windows:</p><pre class="programlisting">prompt> "%VWS_HOME%"\bin\startup.bat -clean</pre></li><li><p>Verify that GreenPages starts correctly by checking in the Web Server output for the log message:
-</p><pre class="programlisting"><DE0005I> Started par 'greenpages' version '2.3.0.RELEASE'. </pre><p>
-</p></li></ol></div><p>
-</p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.browsing"></a>3.4 Browsing the GreenPages application</h2></div></div></div><p>
- Once installed and started, the GreenPages
- application can be accessed with a web browser using the address
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- </p><p>
- From the home page, a search query can be entered into the search box:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/browse-1.png" align="middle"></div><p>
-</p><p>
- After entering a query into the search box, the results page shows all the matches from the
- directory:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/browse-2.png" align="middle"></div><p>
-</p><p>
- Clicking on <span class="emphasis"><em>view</em></span> next to an entry in the search listing displays the full details for that
- listing entry:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/browse-3.png" align="middle"></div><p>
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installing.greenpages.tools"></a>3.5 Running GreenPages from Eclipse</h2></div></div></div><p>Using Eclipse and the Web Server tools, it is possible to run applications directly from the IDE.
- As changes are made to the application in the IDE,
- they can be automatically applied to the running application allowing for rapid feedback of changes in function.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.tools.importing"></a>Importing the GreenPages projects into Eclipse</h3></div></div></div><p>
- Before starting the GreenPages application from Eclipse, import the projects:
- </p><div class="orderedlist"><ol type="1"><li><p>Open the Import Wizard using
- <span class="guimenu">File</span> → <span class="guimenuitem">Import</span>.
-</p></li><li><p>From the Import Wizard select
- <span class="guimenu">General</span> → <span class="guimenuitem">Existing Projects into Workspace</span>
-and click <span class="emphasis"><em>Next</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/import-projects2.png" align="middle"></div><p>
-</p></li><li><p>Click <span class="guibutton">Browse…</span> and select <code class="code">$GREENPAGES_HOME/solution</code> as the root directory.</p></li><li><p>In the <span class="emphasis"><em>Import Projects</em></span> window, select all the projects and click <span class="emphasis"><em>Finish</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/import-projects3.png" align="middle"></div><p>
-</p></li><li><p>Validate that the imported projects appear in Package Explorer:
-
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/import-projects4.png" align="middle"></div><p>
-
-There may be compilation errors at this stage.
-</p></li></ol></div><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.tools.configuring"></a>Configuring Web Server target runtime</h3></div></div></div><p>
- Projects for Web Server are associated with a Virgo Web Server runtime environment in Eclipse. This is to allow
- launching and testing from within Eclipse, and also to allow classpath construction in Eclipse to
- mirror the dynamic classpath in the Web Server runtime.
- </p><p>
- Compilation errors in the previous step will be resolved here.
- </p><p>
- To configure a Web Server runtime environment:
- </p><div class="orderedlist"><ol type="1"><li><p>Open <span class="guimenu">Window</span> → <span class="guisubmenu">Show View</span> → <span class="guimenuitem">Other…</span>.</p></li><li><p>In the <span class="emphasis"><em>Show View</em></span> dialog choose
-<span class="guimenu">Server</span> → <span class="guimenuitem">Servers</span> to make the servers view visible:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/servers.png" align="middle"></div><p>
-</p></li><li><p>Right-click in the <span class="emphasis"><em>Servers</em></span> (which may not be empty) view and select
- <span class="guimenu">New</span> → <span class="guimenuitem">Server</span>.
-</p></li><li><p>In the <span class="emphasis"><em>New Server</em></span> dialog, choose
-<span class="guimenu">EclipseRT</span> → <span class="guimenuitem">Virgo Web Server</span>
- and click <span class="emphasis"><em>Next</em></span>.
-</p></li><li><p>Click <span class="guibutton">Browse</span> and select the <code class="code">$VWS_HOME</code> directory. Ensure that a JRE is selected
-supporting Java 1.6 or above.
-Click <span class="guibutton">Finish</span> to complete creation of the server:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/new-server.png" align="middle"></div><p>
-</p></li><li><p>Select all projects (except <span class="emphasis"><em>Servers</em></span>) in <span class="emphasis"><em>Package Explorer</em></span>.
-Right-click on the projects and choose <span class="guimenuitem">Close Project</span>
-and then <span class="guimenuitem">Open Project</span>.
-</p></li></ol></div><p>
-It is possible that there remain spurious build errors from Eclipse (see the <span class="emphasis"><em>Problems</em></span> view), in which case
-a project clean build may clear the problems. Select <span class="guimenu">Project</span> → <span class="guimenuitem">Clean…</span>
-from the main menu, and choose to <span class="emphasis"><em>Clean all projects</em></span>.
-It may be necessary to repeat this on a few projects.
-(This process is sometimes known as the “<span class="quote">Eclipse dance</span>”.)
-</p><p>
-Despite the dance steps outlined, there will remain some <span class="emphasis"><em>Warnings</em></span> like this:
-</p><div class="mediaobject" align="center"><img src="images/installing-greenpages/problem-warning.png" align="middle"></div><p>
-It is safe to ignore these.
-</p><p>
- When STS starts the Web Server it uses a ‘warm start’ by default.
- It is useful to set the <code class="literal">-clean</code> option so that every server start is a clean one.
- This is done by an option on the Web Server Overview window, which is obtained by opening the Web Server entry in the Servers window in STS.
- (Double-click, or right-click and choose Open.)
- The check box is labelled ‘Start server with -clean option’.
- Close the window before proceeding.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installing.greenpages.tools.run"></a>Running GreenPages from within Eclipse</h3></div></div></div><p>
- Now that GreenPages is successfully imported into Eclipse, run the project directly from within the IDE.</p><p>If the GreenPages PAR file was copied to the <code class="literal">pickup</code> directory, be sure it is now removed so that it does not conflict with the deployment of the Eclipse project. On Unix:</p><pre class="programlisting">prompt$ cd $VWS_HOME/pickup
-prompt$ rm greenpages-solution-2.3.0.RELEASE.par</pre><p>On Windows:</p><pre class="programlisting">prompt> cd %VWS_HOME%\pickup
-prompt> del greenpages-solution-2.3.0.RELEASE.par</pre><p>Also, to prevent conflicts with the server configured in Eclipse, stop a currently-running Web Server by typing <code class="literal">Control-C</code> in the console window.</p><p>
- To run GreenPages from within Eclipse:
- </p><div class="orderedlist"><ol type="1"><li><p>
- Right click on the Web Server instance in the <span class="emphasis"><em>Servers</em></span> view and select the <span class="guimenu">Add and Remove…</span>
- menu item.
-
-
-
-
-
-
-
-
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/addedtoserver.png" align="middle"></div><p>
- </p></li><li><p>
- Add <span class="emphasis"><em>greenpages-solution</em></span> (which is the containing project or PAR) to the server and finish.
- </p></li><li><p>To start Web Server from within Eclipse right-click on the Web Server node in the Servers window and choose <span class="guimenuitem">Start</span>.
- The <span class="emphasis"><em>Servers</em></span> view should now show the server and the added project:
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/installed.png" align="middle"></div><p>
- </p></li><li><p>
- Verify that GreenPages is started correctly by checking for
- <code class="code"><DE0005I> Started par 'greenpages' version '2.3.0.RELEASE'.</code> in the Console window.
- </p><div class="mediaobject" align="center"><img src="images/installing-greenpages/success.png" align="middle"></div><p>
- </p></li></ol></div><p>
- </p><p>
- (<span class="emphasis"><em>If errors are shown implying that GreenPages failed to be installed, this may be because some dependencies were not
- copied to Web Server, as described in section <a class="xref" href="#installing.greenpages.building.par.provided" title="Installing dependencies into Web Server">the section called “Installing dependencies into Web Server”</a>. Check this.</em></span>)
- </p><p>Once installed and started GreenPages is again available from a web browser at the address
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- </p></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="web.module"></a>4. The Web Module</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="web.module.introduction"></a>4.1 Introduction</h2></div></div></div><p>
- In common with most Enterprise Java applications GreenPages uses a web-based interface for user interactions.
- The following steps show how the controller for the application is constructed,
- using a service from the OSGi Service Registry.
- </p><p>
- It is assumed that the instructions in <a class="xref" href="#installation" title="2. Installation">Chapter 2, <i>Installation</i></a> have been followed already
- and that the GreenPages
- zip file has been downloaded and unzipped as described in <a class="xref" href="#installing.greenpages" title="3. Installing and exploring GreenPages">Chapter 3, <i>Installing and exploring GreenPages</i></a>.
-
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="setting.up"></a>4.2 GreenPages set up</h2></div></div></div><p>
- Before beginning, configure the development environment to work with the
- application. In the case of GreenPages this means Maven and Eclipse.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="setting.up.eclipse"></a>Setting up Eclipse (STS)</h3></div></div></div><p>
- The following sections are most easily followed in the Java (or Spring) perspective (not, for example, the Java EE
- perspective). If not already in an appropriate perspective, switch in SpringSource Tool Suite using the
- <span class="guimenu">Open Perspective</span> menu:
- </p><div class="mediaobject" align="center"><img src="images/web-module/java-perspective.png" align="middle"></div><p>
- </p><p>
- In this step create a reference to the Web Server instance that the GreenPages application
- integrates with (the instance may already be created if the GreenPages solution has been run from STS).
- </p><p>
- In STS open <span class="guimenu">Preferences</span> → <span class="guimenuitem">Server</span> → <span class="guimenuitem">Runtime Environments</span>. Select <span class="emphasis"><em>Add…</em></span> to create a
- new Web Server runtime environment. In the dialog that opens, select the <span class="emphasis"><em>Virgo Web Server
- (runtime) v2.1</em></span> and check the box to <span class="emphasis"><em>Create a new local server</em></span>.
- When complete, press <span class="emphasis"><em>Next</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/new-server-runtime-environment.png" align="middle"></div><p>
- </p><p>
- In the next dialog, set the <span class="emphasis"><em>Virgo Web Server installation directory</em></span> field to the
- <span class="emphasis"><em>value</em></span> of <code class="literal">$VWS_HOME</code> and
- check that the <span class="emphasis"><em>JRE:</em></span> option is set to Java 1.6 or later.
- <span class="emphasis"><em>This may not be the workbench default.</em></span>
- When complete, press <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/virgo-web-server.png" align="middle"></div><p>
- </p><p>
- After returning to the <span class="emphasis"><em>Preferences</em></span> window, press <span class="emphasis"><em>OK</em></span> to return to
- Eclipse.
- The <span class="emphasis"><em>Servers</em></span> view has opened and now shows an instance of
- <span class="emphasis"><em>Virgo Web Server</em></span> in it.
- </p><div class="mediaobject" align="center"><img src="images/web-module/servers-view.png" align="middle"></div><p>
- There is also a <span class="emphasis"><em>Servers</em></span> project, in which the server is listed.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="controller"></a>4.3 The controller</h2></div></div></div><p>
- The Spring’s MVC style of web application development is used in which the central type
- is the <code class="literal">Controller</code> class.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="import.greenpages.web"></a>Import the web project</h3></div></div></div><p>
- The GreenPages application is divided into OSGi bundles that are represented as Eclipse
- projects. In this step import the <code class="literal">greenpages.web</code> project.
- </p><p>
- Starting with no projects, import the web project by right-clicking in the <span class="emphasis"><em>Package Explorer</em></span>
- view and selecting the <span class="emphasis"><em>Import…</em></span> menu item.
- In the dialog that opens, choose <span class="guimenuitem">General</span> → <span class="guimenuitem">Existing Projects into Workspace</span> and select <span class="emphasis"><em>Next</em></span>.
- In the following dialog set the <span class="emphasis"><em>root directory</em></span> to the value of
- <code class="literal">$GREENPAGES_HOME/start/greenpages.web</code> and press <span class="emphasis"><em>Finish</em></span>.
- </p><p>
- (Initially this project may have compiler errors;
- this is to be expected particularly if the Maven repository hasn’t yet been created.)
-
-
-
-
-
-
-
-
- When this project is imported go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="controller.controller"></a>The controller class</h3></div></div></div><p>
- In the <code class="literal">src/main/java</code> source folder of the <code class="literal">greenpages.web</code> project
- the package <code class="classname">greenpages.web</code>
- should contain the controller class named
- <code class="classname">GreenPagesController</code>.
- Create this by right-clicking on the <code class="literal">greenpages.web</code> package in the
- <code class="literal">src/main/java</code> source folder and selecting
- <span class="guimenuitem">New</span> → <span class="guimenuitem">Class</span>.
- (If <span class="emphasis"><em>Class</em></span> is not offered on the <span class="emphasis"><em>New</em></span> menu
- the <span class="emphasis"><em>Java</em></span> perspective may not be being used, in which case look for
- the <span class="emphasis"><em>Class</em></span> option under <span class="emphasis"><em>Other…</em></span> in the <span class="emphasis"><em>Java</em></span> section.)
- </p><p>
- Name the new class <code class="classname">GreenPagesController</code> and press <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/new-greenpages-controller.png" align="middle"></div><p>
- </p><p>
- The code should be edited to look like this:
-</p><pre class="programlisting">@Controller
-<span class="hl-keyword">public</span> <span class="hl-keyword">class</span> GreenPagesController {
- …
- @RequestMapping(<span class="hl-string">"/home.htm"</span>)
- <span class="hl-keyword">public</span> <span class="hl-keyword">void</span> home() {
- }
- …
-</pre><p>
- </p><p>
- The annotations <code class="classname">Controller</code> and <code class="classname">RequestMapping</code>
- are from Spring Framework and are imported by adding the lines:
-</p><pre class="programlisting"><span class="hl-keyword">import</span> org.springframework.stereotype.Controller;
-<span class="hl-keyword">import</span> org.springframework.web.bind.annotation.RequestMapping;
-</pre><p>
- </p><p>
- STS will offer (as a <span class="emphasis"><em>Quick Fix</em></span>) to insert imports for these Spring Framework annotations
- the first time they are used.
- (Java 1.6 supports annotations, and the Spring Framework libraries are accessible by
- linking to the correct Web Server runtime environment or generating the correct dependencies for the Maven plug-in.)
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="controller.component.scanning"></a>Enabling component scanning</h3></div></div></div><p>
- Spring will detect the <code class="classname">@Controller</code> annotation and create a bean of controller type,
- <span class="emphasis"><em>provided that</em></span> it scans the classpath for these.
- Spring’s component scanning is enabled by inserting a <code class="literal">context</code> tag
- in one of the Spring bean definition files.
- </p><p>
- Open the <code class="filename">WEB-INF/greenpages-servlet.xml</code> file in the
- <code class="literal">src/main/webapp</code> folder and ensure the following lines are present:
-</p><pre class="programlisting"> <<span class="hl-comment">!-- enable classpath scanning --</span>>
- <<span class="hl-tag">context:component-scan</span> <span class="hl-attribute">base-package</span>=<span class="hl-value">"greenpages.web"</span> />
-</pre><p>
- </p><p>
- Experiment by adding and removing this line, saving the file after each change.
- (<span class="emphasis"><em>Easily done by commenting it—use the
- <span class="emphasis"><em>Toggle Comment</em></span>
- shortcut in STS.</em></span>)
- Look in the <span class="emphasis"><em>Spring Explorer</em></span> view for a bean named <code class="literal">greenPagesController</code>
- dynamically created by the <code class="literal">component-scan</code> tag.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="deploy.bundle"></a>4.4 Deploying a bundle</h2></div></div></div><p>
- During development time, it can be helpful to run an application inside of the deployment container. In the case
- of GreenPages, this means deploying the <code class="literal">greenpages.web</code> bundle to the Virgo Web Server.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deploy.bundle.deploy.and.start"></a>Deploying the <code class="literal">greenpages.web</code> bundle and starting the Web Server</h3></div></div></div><p>
- The Web Server can be used while working in Eclipse.
- In this step the <code class="literal">greenpages.web</code> bundle is deployed and the Web Server instance is started.
- </p><p>
- Drag the <code class="literal">greenpages.web</code> project from the <span class="emphasis"><em>Package Explorer</em></span> and drop it
- on the Web Server instance in the <span class="emphasis"><em>Servers</em></span> view.
- Because <code class="literal">greenpages.web</code> is a web bundle the server will start automatically, and
- a browser window may open.
- Expand the Web Server instance and the bundle <code class="literal">greenpages.web</code> will be listed as a child.
- </p><div class="mediaobject" align="center"><img src="images/web-module/web-bundle-deployed.png" align="middle"></div><p>
- </p><p>
- If deployment is successful the console will contain the message:
- </p><pre class="programlisting"><DE0005I> Started bundle 'greenpages.web' version '2.3.0'</pre><p>
- </p><p>
- Leave the server instance running and go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deploy.bundle.web.module.manifest"></a>Creating web module metadata</h3></div></div></div><p>
- The Web Server has special knowledge of web application bundles. In this step web bundle
- metadata is added to the bundle and a web browser is used to navigate to it.
- </p><p>
- Open a web browser and navigate to
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- If the link is not currently served by any bundle in the Web Server there may be an error displayed:
- </p><div class="mediaobject" align="center"><img src="images/web-module/greenpages-home-fail.png" align="middle"></div><p>
- or else there is a blank page displayed. No pages are served.
- </p><p>
- To fix this issue the <code class="literal">greenpages.web</code> bundle must be declared to be a web bundle and a
- context path defined.
- </p><p>
- Open the <code class="filename">template.mf</code> file (at the top level under the <code class="literal">greenpages.web</code> project)
- and add (and save) the following entry (using the <span class="emphasis"><em>template.mf</em></span> pane of the editor):
-</p><pre class="programlisting">Web-ContextPath: greenpages
-</pre><p>
- Be careful not to insert any blank lines or trailing spaces in this file.
- </p><p>
- Once added, right-click on the <code class="literal">greenpages.web</code> project and select
- <span class="guimenu">Spring Tools</span> → <span class="guimenuitem">Run generation of MANIFEST.MF file</span>.
- This will use a tool called Bundlor (included in STS) to update the OSGi metadata in the
- <code class="filename">MANIFEST.MF</code> file. Once Bundlor has finished running, open the
- <code class="filename">META-INF/MANIFEST.MF</code> file in the <code class="literal">src/main/webapp</code> folder.
- </p><p>It should look something like the following:
-</p><pre class="programlisting">Manifest-Version: 1.0
-Bundle-Name: GreenPages Web
-Import-Library: org.springframework.spring;version="[3.0, 3.1)"
-Import-Bundle: com.springsource.org.apache.taglibs.standard;version="[
- 1.1.2,1.3)"
-Web-ContextPath: greenpages
-Import-Package: org.eclipse.virgo.web.dm;version="[2.0.0, 3.0.0)
- ",freemarker.cache;version="[2.3.15,2.3.15]",javax.servlet.jsp.jstl.c
- ore;version="[1.1.2,1.2.0)",javax.sql,org.apache.commons.dbcp,org.spr
- ingframework.core.io,org.springframework.stereotype,org.springframewo
- rk.web.bind.annotation,org.springframework.web.context,org.springfram
- ework.web.servlet
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: greenpages.web
-Tool: Bundlor 1.0.0.RELEASE
-Bundle-Version: 2.3.0
-</pre><p>
- although the order of the entries may be different.
- </p><p>
- The server (if it is still running) will track these changes and automatically refresh
- (or restart) the <code class="literal">greenpages.web</code> bundle as required.
- Observe the context path for the web bundle being announced
- (it should now be <code class="literal">'/greenpages'</code>
- whereas previously it would have been a default context path
- derived from the bundle name: <code class="literal">'/greenpages.web'</code>).
- </p><p>
- By default, Bundlor generates <code class="literal">Import-Package</code> entries with no version range specified.
- In the absence of a version range, the OSGi default (which denotes <span class="emphasis"><em>any</em></span> version) is used.
- While this is very flexible it is generally a good idea to restrict an import by specifying a narrower range.
- This can be achieved by providing Bundlor with some additional information in the manifest template,
- as in the next step.
- </p><p>
- Add (and save) the following entry to the <code class="filename">template.mf</code> file:
-</p><pre class="programlisting">Import-Template:
- org.springframework.*;version="[3.0.0, 3.1.0)"
-</pre><p>
- (Again, be careful not to leave trailing spaces on lines or insert blank lines in this file, except that there
- must be one trailing space after the colon to indicate that the header continues on the next line.)
- </p><p>
- Re-run the MANIFEST.MF generation as described earlier.
- In the <code class="filename">MANIFEST.MF</code> file the <code class="literal">Import-Package</code> entry
- should now have version ranges on each of the <code class="literal">springframework</code> packages:
-</p><pre class="programlisting">Import-Package: org.eclipse.virgo.web.dm;version="[2.0.0, 3.0.0)
- ",freemarker.cache;version="[2.3.15,2.3.15]",javax.servlet.jsp.jstl.c
- ore;version="[1.1.2,1.2.0)",javax.sql,org.apache.commons.dbcp,org.spr
- ingframework.core.io;version="[3.0.0, 3.1.0)",org.springframework.ste
- reotype;version="[3.0.0, 3.1.0)",org.springframework.web.bind.annotat
- ion;version="[3.0.0, 3.1.0)",org.springframework.web.context;version=
- "[3.0.0, 3.1.0)",org.springframework.web.servlet;version="[3.0.0, 3.1
- .0)"
-</pre><p>
- </p><p>
- Behind the scenes the Web Server Tools have refreshed the deployed bundle as changes were made. Once again
- navigate to
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- This page now displays an entry field.
- </p><div class="mediaobject" align="center"><img src="images/web-module/greenpages-home-success.png" align="middle"></div><p>
- Put any characters into the entry field and press <span class="emphasis"><em>Submit</em></span>.
- This should display a “<span class="quote">404</span>” error page with the description:
-</p><pre class="programlisting">description The requested resource () is not available.</pre><p>
- This is because there is no search page (<code class="literal">search.htm</code>) to process this request yet.
- The next section will address this.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="par.project"></a>4.5 Creating a PAR</h2></div></div></div><p>
- At the end of the previous step, the Web Server instance was started
- and the <code class="literal">greenpages.web</code> bundle deployed.
- This bundle shows a static home page but a search value causes an error.
- The error appears because the URL for that search is not serviced by the controller.
- The application logic behind the search request is not in the <code class="literal">greenpages.web</code> project but
- in another project called <code class="literal">greenpages.app</code>.
- This section creates the <code class="literal">greenpages.app</code> project
- and then combines the two projects into a PAR so as to deploy them together as a single unit.
- </p><p>
- While executing these instructions it is not necessary to remove bundles from the Web Server instance,
- nor to stop the instance.
- As changes are made the bundle will be refreshed (or redeployed) and the server instance
- may report errors if the changes are incomplete.
- These may safely be ignored.
- Alternatively, the <code class="literal">greenpages.web</code> bundle can be removed from the Web Server instance,
- or the server can be stopped while these changes are made.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="parent.project.importing"></a>Importing the parent project</h3></div></div></div><p>
- All of the bundles in the GreenPages sample are Maven projects which refer to a ‘parent’ project.
- To allow STS to accommodate references to the parent, import this project first.
- </p><p>
- In the same way that the starting <code class="literal">greenpages.web</code> project was imported
- (see <a class="xref" href="#controller" title="4.3 The controller">Section 4.3, “The controller”</a>)
- import the <code class="literal">$GREENPAGES_HOME/start/parent</code> project.
- </p><div class="mediaobject" align="center"><img src="images/web-module/import-parent-project.png" align="middle"></div><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="par.project.importing.project"></a>Importing the <code class="literal">greenpages.app</code> project</h3></div></div></div><p>
- In this step, the <code class="literal">greenpages.app</code> project is imported which contains the business
- interfaces (and stub implementations of these interfaces).
- </p><p>
- In the same way that the starting <code class="literal">greenpages.web</code> project was imported
- (see <a class="xref" href="#controller" title="4.3 The controller">Section 4.3, “The controller”</a>)
- import the <code class="literal">$GREENPAGES_HOME/start/greenpages.app</code> project.
- </p><div class="mediaobject" align="center"><img src="images/web-module/import-greenpages-app.png" align="middle"></div><p>
- </p><p>
- When Eclipse finishes importing the project, go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="par.project.add.implementation"></a>Adding the controller implementation</h3></div></div></div><p>
- The controller implementation will depend on the <code class="interfacename">Directory</code> and
- <code class="interfacename">Listing</code> interfaces found in the <code class="literal">greenpages.app</code> project. In
- this step, the implementation is added.
- </p><p>
- Open the <code class="classname">GreenPagesController</code> class.
- Add the following field and methods to the class:
-</p><pre class="programlisting">@Autowired
-<span class="hl-keyword">private</span> Directory directory;
-
-@RequestMapping(<span class="hl-string">"/search.htm"</span>)
-<span class="hl-keyword">public</span> List<Listing> search(@RequestParam(<span class="hl-string">"query"</span>) String query) {
- <span class="hl-keyword">return</span> <span class="hl-keyword">this</span>.directory.search(query);
-}
-
-@RequestMapping(<span class="hl-string">"/entry.htm"</span>)
-<span class="hl-keyword">public</span> Listing entry(@RequestParam(<span class="hl-string">"id"</span>) <span class="hl-keyword">int</span> id) {
- <span class="hl-keyword">return</span> <span class="hl-keyword">this</span>.directory.findListing(id);
-}
-</pre><p>
- Add the (<span class="emphasis"><em>Quick Fix</em></span>) suggested imports for the annotations <code class="classname">Autowired</code>
- and <code class="classname">RequestParam</code>,
- and choose the import for <code class="classname">List< ></code> from <code class="classname">java.util.List</code>.
- </p><p>
- Eclipse will not be able to suggest import statements for the
- <code class="interfacename">Listing</code> and <code class="interfacename">Directory</code> types. This is because
- the <code class="literal">greenpages.web</code> and <code class="literal">greenpages.app</code> projects are not linked together
- and therefore cannot see each other’s types.
- </p><p>
- Proceed to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="par.project.new.par"></a>Creating a PAR project</h3></div></div></div><p>
- In Web Server, applications consisting of multiple bundles can be packaged as part of a PAR.
- In this step a PAR project
- containing the <code class="literal">greenpages.web</code> and <code class="literal">greenpages.app</code> bundles is
- created and deployed to the server.
- </p><p>
- Right-click in the <span class="emphasis"><em>Package Explorer</em></span> and select <span class="guimenu">New</span> → <span class="guimenuitem">Project…</span>. In the dialog that opens select
- <span class="guimenu">EclipseRT</span> → <span class="guimenuitem">PAR Project</span> and press
- <span class="emphasis"><em>Next</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/web-module/new-par-project.png" align="middle"></div><p>
- </p><p>
- In the New PAR Project dialog, ensure the <span class="emphasis"><em>Use default location</em></span> option is unchecked,
- name the project <code class="literal">greenpages</code>, set the location to
- <code class="filename">$GREENPAGES_HOME/start/greenpages</code> and press <span class="emphasis"><em>Next</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/create-par-project.png" align="middle"></div><p>
- </p><p>
- In the next dialog, some of the PAR properties are pre-populated.
- Change the Application Name to <code class="literal">Greenpages PAR</code> and the Version to
- <code class="literal">2.3.0</code>, then
- ensure that the <span class="emphasis"><em>Target Runtime</em></span>
- is set to <span class="emphasis"><em>Virgo Web Server (Runtime) v2.1</em></span> and press <span class="emphasis"><em>Next</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/par-content.png" align="middle"></div><p>
- </p><p>
- In the next dialog, select the <code class="literal">greenpages.app</code> and <code class="literal">greenpages.web</code>
- bundles so that they are contained in the PAR and press <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/bundle-references.png" align="middle"></div><p>
- The project <code class="literal">greenpages.web</code> still shows errors; these are soon to be fixed.
- </p><p>
- The package explorer view will now show the following:
- </p><div class="mediaobject" align="center"><img src="images/web-module/package-explorer-par.png" align="middle"></div><p>
- </p><p>
- PAR project creation is complete, go to the next section.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="osgi.reference"></a>4.6 Referencing an OSGi Service</h2></div></div></div><p>
- In an OSGi-based application, the business logic behind a controller is typically accessed through the OSGi
- Service Registry.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.reference.export.package"></a>Exporting Packages</h3></div></div></div><p>
- By default, Bundlor detects and exports all packages in a bundle.
- In this step Bundlor is told what to
- export from the <code class="literal">greenpages.app</code> bundle and which types from those packages to use in the
- <code class="literal">greenpages.web</code> bundle.
- </p><p>
- Add and save the following entry to the <code class="filename">template.mf</code> file in the
- <code class="literal">greenpages.app</code> project and then run the <code class="literal">MANIFEST.MF</code> generation on the project as
- explained in <a class="xref" href="#deploy.bundle.web.module.manifest" title="Creating web module metadata">the section called “Creating web module metadata”</a>.
-</p><pre class="programlisting">Excluded-Exports:
- greenpages.internal
-</pre><p>
- (As before, be careful not to leave trailing spaces on the ends of lines, except for the one space after the colon,
- and not to add any blank lines to the file. The second line of this entry has a leading space—do not omit it.)
- </p><p>
- Check that the package is no longer exported in the <code class="literal">greenpages.app</code> <code class="literal">MANIFEST.MF</code> file
- which should look something like this:
-</p><pre class="programlisting">Manifest-Version: 1.0
-Bundle-Name: GreenPages Service
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: greenpages
-Tool: Bundlor 1.0.0.RELEASE
-Export-Package: greenpages;version="2.3.0"
-Bundle-Version: 2.3.0
-</pre><p>
- Go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.reference.referencing.projects.packages"></a>Referencing Projects and Packages</h3></div></div></div><p>
- Now that the <code class="literal">greenpages.app</code> bundle exports the package that the
- <code class="interfacename">Directory</code> and <code class="interfacename">Listing</code> interfaces reside in,
- the <code class="literal">greenpages.web</code> bundle must import it.
- In this step the Maven
- <code class="filename">pom.xml</code> file is updated to depend on the <code class="literal">greenpages.app</code> bundle and import the
- package.
- </p><p>
- Open the <code class="filename">pom.xml</code> file in the <code class="literal">greenpages.web</code> project.
- (Edit the source directly by using the <code class="literal">pom.xml</code> tab in the editor.)
- In this file add
- the following entry (between the <code class="literal"><dependencies></code> tags):
-</p><pre class="programlisting"><<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.app<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
-<<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- Open the <code class="classname">GreenPagesController</code> class and import the <code class="classname">Listing</code> and
- <code class="classname">Directory</code> types.
- (Eclipse should now offer these as a <span class="emphasis"><em>Quick Fix</em></span>.
- It it does not, set <code class="literal">greenpages.app</code> as a project dependency of <code class="literal">greenpages.web</code>
- in the Build Path of the web project.)
- The class should now compile cleanly.
- </p><p>
-The following imports should now have been added to the <code class="classname">GreenPagesController</code> class:
-</p><pre class="programlisting">import greenpages.Directory;
-import greenpages.Listing;
-
-import java.util.List;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-</pre><p>
-</p><p>
- Add the following package clause to the <code class="literal">Import-Template</code> entry in the
- <code class="filename">template.mf</code> file in the <code class="literal">greenpages.web</code> project. When added run the
- MANIFEST.MF generation on the project as described in <a class="xref" href="#deploy.bundle.web.module.manifest" title="Creating web module metadata">the section called “Creating web module metadata”</a>.
- </p><pre class="programlisting">greenpages.*;version="[2.3, 2.4)"</pre><p>
- Be careful to include the “<span class="quote"><code class="literal">.*</code></span>” in the package pattern.
- </p><p>
- Once Bundlor has finished, go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.reference.deploy.par"></a>Deploying a PAR</h3></div></div></div><p>
- Currently the Web Server instance has a single web module bundle deployed. In this step, the
- <code class="literal">greenpages.web</code> bundle is undeployed and <code class="literal">greenpages</code> PAR is deployed.
- </p><p>
- Right-click on the Web Server in the <span class="emphasis"><em>Servers</em></span> view, and select
- <span class="emphasis"><em>Add and Remove…</em></span>. In the dialog that opens, remove the
- <code class="literal">greenpages.web</code> bundle and add the <code class="literal">greenpages</code> PAR to the server. When
- the configuration is complete, press <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/web-module/add-remove-projects.png" align="middle"></div><p>
- </p><p>
- Eclipse automatically undeploys the <code class="literal">greenpages.web</code> bundle and deploys the
- <code class="literal">greenpages</code> PAR.
- When this happens, the deployment may fail with an error.
- If it does not, open the browser again at
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>
- and observe the failure which should have a root cause similar to:
-</p><pre class="programlisting">org.springframework.beans.factory.NoSuchBeanDefinitionException:
- No matching bean of type [greenpages.Directory] found for dependency:
- expected at least 1 bean which qualifies as autowire candidate for this dependency.
- Dependency annotations: {@org.springframework.beans.factory.annotation.Autowired(required=true)}
-</pre><p>
- This error is caused by there being no instance of <code class="classname">Directory</code> to inject into the controller.
- The next section will supply one.
-</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.reference.reference"></a>Referencing an OSGi Service</h3></div></div></div><p>
- There is no instance of <code class="interfacename">Directory</code> to be
- injected into the controller.
- In the GreenPages application, it is intended that this
- implementation is used through an interface in
- the OSGi <span class="emphasis"><em>Service Registry</em></span>.
- Using a service in the Service Registry enables
- another bundle to
- provide an implementation without revealing the implementation or the provider to all clients of the
- service.
- Web Server supports the use of the Spring DM <span class="emphasis"><em>namespace</em></span> for
- referencing elements in the OSGi Service Registry.
- This step adds an OSGi Service Reference to an implementation of the
- <code class="interfacename">Directory</code> interface.
- </p><p>
- In the <code class="filename">webapp/WEB-INF/applicationContext.xml</code> file in the <code class="literal">greenpages.web</code>
- projects add a reference to a
- <code class="interfacename">greenpages.Directory</code> instance in the OSGi service registry using
- the <code class="literal"><osgi:reference/></code> tag as follows:
-</p><pre class="programlisting"><<span class="hl-tag">osgi:reference</span> <span class="hl-attribute">id</span>=<span class="hl-value">"directory"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"greenpages.Directory"</span>/>
-</pre><p>
- </p><p>
- The tools will automatically redeploy the <code class="literal">greenpages.web</code> bundle when the change to the
- bean definition has been saved.
- The web bundle will not completely start.
-
- </p><p>
- This is because there is no provider of a <code class="interfacename">greenpages.Directory</code> in
- the Service Registry. The next step will address this.
- </p><p>
- The error is re-issued as the Web Server instance waits for the service to be supplied. After about five minutes
- the server will “<span class="quote">time-out</span>” and the deploy will be abandoned. This same error (and time-out)
- will occur each time the PAR is redeployed as each change is made.
- </p><p>Stop the server instance by right-clicking on the server in the <span class="emphasis"><em>Servers</em></span> view and
- selecting <span class="emphasis"><em>Stop</em></span>. This will avoid unnecessary delays as changes are made.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="osgi.service"></a>4.7 Publishing an OSGi Service</h2></div></div></div><p>
- At the end of the previous step, a dependency was created on an OSGi Service Registry exposed instance of
- <code class="classname">greenpages.Directory</code>. The application would not start because no other bundle was
- contributing an instance of this service to the Service Registry.
- </p><p>Stop the server instance before proceeding.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.service.implementation"></a>Add Implementation</h3></div></div></div><p>
- In this step Spring’s context scanning is added which will create an instance of the
- <code class="classname">DirectoryImpl</code> class.
- </p><p>
- Open the <code class="classname">greenpages.internal.DirectoryImpl</code> class in the <code class="literal">greenpages.app</code>
- project. Add the <code class="interfacename">@Component</code> annotation to the class:
-</p><pre class="programlisting">@Component(<span class="hl-string">"directory"</span>)
-<span class="hl-keyword">public</span> <span class="hl-keyword">class</span> DirectoryImpl <span class="hl-keyword">implements</span> Directory {
-…
-</pre><p>
- generating imports with Eclipse’s help if necessary.
- </p><p>
- Open the <code class="filename">META-INF/spring/module-context.xml</code> in the <code class="literal">greenpages.app</code>
- project. Add component scanning to this file:
-</p><pre class="programlisting"><<span class="hl-tag">context:component-scan</span> <span class="hl-attribute">base-package</span>=<span class="hl-value">"greenpages.internal"</span>/>
-</pre><p>
- </p><p>
- When complete, go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.service.publish"></a>Publish OSGi Service</h3></div></div></div><p>
- In this step the <code class="classname">DirectoryImpl</code> instance is published to the OSGi Service
- Registry.
- </p><p>
- Open the <code class="filename">META-INF/spring/osgi-context.xml</code> file. Add the
- <code class="literal"><osgi:service/></code> tag to publish the <code class="literal">directory</code> bean with an
- interface of <code class="interfacename">greenpages.Directory</code>.
-</p><pre class="programlisting"><<span class="hl-tag">osgi:service</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"directory"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"greenpages.Directory"</span>/>
-</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="osgi.server.working"></a>A Working Web Application</h3></div></div></div><p>
- Start (or restart) the Web Server instance from the <code class="literal">Servers</code> view. If the GreenPages PAR was not
- removed before, it will be automatically deployed, otherwise deploy it as before. There should be no errors reported.
- When GreenPages is deployed successfully, open a web browser and navigate to
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>. On
- the home page type <code class="literal">wilkinson</code> into the search field and press <span class="emphasis"><em>Submit</em></span>.
- Unlike the previous attempt, this should return a list (of size 1) of search results. From here, select
- <span class="emphasis"><em>view</em></span> to get the “<span class="quote">detailed</span>” listing.
- </p><div class="mediaobject" align="center"><img src="images/web-module/greenpages-listing-success.png" align="middle"></div><p>
- This uses a stub implementation of the <code class="classname">Directory</code> interface which only knows about “<span class="quote">Andy Wilkinson</span>”.
- </p><p>
- The web interface is complete enough. Go to the next chapter to see the middle tier implementation.
- </p></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="middle-tier"></a>5. The Middle Tier</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.introduction"></a>5.1 Introduction</h2></div></div></div><p>
- GreenPages’ middle-tier provides implementations of the <code class="literal">Directory</code> and <code class="literal">Listing</code>
- interfaces that can be used by the Web bundle.
- The implementation will use EclipseLink JPA to access a database via a <code class="literal">DataSource</code> published in the
- OSGi service registry.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.introduction.database"></a>The database</h3></div></div></div><p>
- The GreenPages application uses a very simple database that contains a single table.
- The table, named <code class="literal">LISTING</code>, consists of four columns:
- </p><div class="informaltable"><table style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col><col><col></colgroup><tbody><tr><td style="border-right: 1.0pt solid ; "><code class="literal">LISTING_NUMBER</code></td><td style="border-right: 1.0pt solid ; "><code class="literal">FIRST_NAME</code></td><td style="border-right: 1.0pt solid ; "><code class="literal">LAST_NAME</code></td><td style=""><code class="literal">EMAIL_ADDRESS</code></td></tr></tbody></table></div><p>
- Scripts are provided with the sample source code (in <code class="literal">$GREENPAGES_HOME/db</code>) to start, create, and populate the database.
- These will be used during the creation of the middle tier.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.introduction.jpa"></a>Using JPA</h3></div></div></div><p>
- The middle tier will provide JPA-based implementations of the <code class="literal">Directory</code> and <code class="literal">Listing</code> interfaces with the four
- attributes of a <code class="literal">Listing</code> (first name, last name, email address, and id) being mapped to the corresponding columns in the
- <code class="literal">LISTING</code>.
- JPA will be used to implement the queries that search the database and return <code class="literal">Listings</code>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.introduction.structure"></a>Structure</h3></div></div></div><p>
- The middle tier consists of two bundles, <code class="literal">greenpages.jpa</code> that publishes a <code class="literal">Directory</code>
- implementation for consumption by the Web bundle, and <code class="literal">greenpages.db</code> to configure and publish the
- <code class="literal">DataSource</code> used to access the database.
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/structure.png" align="middle"></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.create-db-project"></a>5.2 Creating the DataSource project</h2></div></div></div><p>
- This section describes how to use
- the bundle project creation wizard to create a new <code class="literal">Bundle Project</code>. The project’s Spring bean
- definition files will also be created using the Spring bean configuration file creation wizard.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.create-db-project.new-bundle-project"></a>Creating a new Bundle Project</h3></div></div></div><p>
- Create a new project by right-clicking in the <span class="emphasis"><em>Package Explorer</em></span> view and selecting
- <span class="guimenu">New</span> → <span class="guimenuitem">Project…</span>. In the resulting
- dialog select <span class="guimenu">EclipseRT</span> → <span class="guimenuitem">Bundle
- Project</span> and press <span class="emphasis"><em>Next</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/new-bundle-project.png" align="middle"></div><p>
- </p><p>
- In the <span class="emphasis"><em>New Bundle Project</em></span> dialog, name the project <code class="literal">greenpages.db</code>.
- Choose the create the project from an existing source location and specify a location that will place the new
- <code class="literal">greenpages.db</code> alongside the project skeletons that were imported into the workspace
- earlier. If the <code class="literal">start</code> directory of the GreenPages sample is being used this will
- be <code class="literal">$GREENPAGES_HOME/start/greenpages.db</code> (and, <span class="emphasis"><em>mutatis mutandis</em></span> on Windows).
- Click <span class="emphasis"><em>Next</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/create-bundle-project.png" align="middle"></div><p>
- </p><p>
- In this page of the wizard, many of the <span class="emphasis"><em>Bundle Properties</em></span> are already populated. The
- <code class="literal">Bundle-SymbolicName</code> is the name of the project. The <code class="literal">Bundle-Name</code> is
- derived from the <code class="literal">Bundle-SymbolicName</code>. The <code class="literal">Bundle-Version</code> is
- set, and there is no <code class="literal">Bundle-Description</code>.
- </p><p>
- Change the <code class="literal">Bundle-Name</code> to “<span class="quote"><code class="literal">GreenPages DataSource</code></span>” to more accurately
- describe the bundle’s purpose. An option to ‘Enable Bundle Classpath Container’ is already selected. It should
- be <span class="emphasis"><em>de</em></span>-selected, as a Maven Classpath container will be configured later.
- Ensure that the <span class="emphasis"><em>Target Runtime</em></span>
- is set to <span class="emphasis"><em>Virgo Web Server (Runtime) v2.1</em></span>.
- Click <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/config-bundle-project.png" align="middle"></div><p>
- The <code class="literal">greenpages.db</code> project appears in the <span class="emphasis"><em>Package Explorer</em></span> view.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.create-db-project.configuring-classpath"></a>Configuring the project’s classpath container</h3></div></div></div><p>
- Before a Maven Classpath Container can be added to the project, a <code class="literal">pom.xml</code> file must
- be created.
- Create a new file in the root of the <code class="literal">greenpages.db</code> project named
- <code class="literal">pom.xml</code> and add the following contents to it:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">project</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://maven.apache.org/POM/4.0.0"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"</span>>
-
- <<span class="hl-tag">parent</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.parent<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>2.3.0.RELEASE<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">relativePath</span>>../parent<<span class="hl-tag">/relativePath</span>>
- <<span class="hl-tag">/parent</span>>
-
- <<span class="hl-tag">modelVersion</span>>4.0.0<<span class="hl-tag">/modelVersion</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.db<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">name</span>>greenpages.db<<span class="hl-tag">/name</span>>
- <<span class="hl-tag">packaging</span>>jar<<span class="hl-tag">/packaging</span>>
-
- <<span class="hl-tag">dependencies</span>>
- <<span class="hl-tag">/dependencies</span>>
-
-<<span class="hl-tag">/project</span>>
-</pre><p>
- Save the file.
- </p><p>
- A Maven Classpath Container can now be added to the project. Right-click the
- <code class="literal">greenpages.db</code> project in the Package Explorer and select
- <span class="guimenu">Maven 2</span> → <span class="guimenuitem">Enable dependency management</span>.
- Eclipse will perform some workspace building, and the <code class="literal">greenpages.db</code> project will now be marked as a Maven project.
- (If the error <code class="literal">Cannot find artifact for parent POM</code> occurs check that the version is correct.
- It may differ from the one given here.)
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.create-db-project.config-src-folders"></a>Configuring the source folders</h3></div></div></div><p>
- The last part of the setup of the project is to configure its source folders.
- Return to the <span class="emphasis"><em>Properties</em></span> dialog of
- the <code class="literal">greenpages.db</code> project (from the <span class="emphasis"><em>Package Explorer</em></span> view).
- Select <span class="emphasis"><em>Java Build Path</em></span> on the left-hand side and the <span class="emphasis"><em>Source</em></span> tab
- on the right-hand side.
- Remove any pre-configured source folders by selecting them and
- clicking <span class="emphasis"><em>Remove</em></span>.
- </p><p>
- Now click <span class="emphasis"><em>Add folder</em></span> and then
- <span class="emphasis"><em>Create new folder…</em></span>.
- Specify <code class="literal">src/main/resources</code> as the folder
- name and click <span class="emphasis"><em>Finish</em></span>, then <span class="emphasis"><em>OK</em></span> and <span class="emphasis"><em>OK</em></span> again.
- </p><p>
- The final change to be made is to drag the <code class="literal">META-INF</code> folder from <code class="literal">src</code>
- to <code class="literal">src/main/resources</code>.
- Once these changes have been made the project will appear
- similar to the following in the <span class="emphasis"><em>Package Explorer</em></span> view:
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/db-project.png" align="middle"></div><p>
- </p><p>
- (It is useful to check that the Maven project just configured has the correct Java System library associated with it and that
- the <code class="literal">MANIFEST.MF</code> file that we have just moved is correctly generated when necessary.
- To ensure this, disable the dependency management (enabled in the previous section) and then re-enable it, saving the changes in between.
- This step may also change the Java system libraries associated with the build (right-click on the <code class="literal">greenpages.db</code> project, under Properties, Java build path and Libraries).
- If the Java system libraries look incorrect, simply remove them in the Libraries window and reset them.)
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.create-db-project.config-datasource"></a>Configuring the DataSource</h3></div></div></div><p>
- The DataSource bundle’s main rôle is to configure and create a <code class="literal">DataSource</code> object and to
- publish this to the OSGi service registry. This will be done by creating
- a handful of Spring beans.
- </p><p>
- By default, Spring DM looks for application context files in a bundle’s <code class="literal">META-INF/spring</code>
- directory. Create a new folder named <code class="literal">spring</code> in the <code class="literal">greenpages.db</code>
- project’s <code class="literal">META-INF</code> folder. Having created the new folder, right-click it in the
- Package Explorer and select
- <span class="guimenu">New </span> → <span class="guimenuitem">Spring Bean Configuration File</span>.
- This will open the wizard for creating Spring bean configuration files.
- </p><p>
- In the wizard enter a <code class="literal">File name</code> of <code class="literal">module-context.xml</code> and click
- <span class="emphasis"><em>Next</em></span>:
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/db-module-create-module-context.png" align="middle"></div><p>
- </p><p>
- Add the <span class="emphasis"><em>p - http://www.springframework.org/schema/p</em></span> namespace declaration to the pre-selected
- <span class="emphasis"><em>beans</em></span> declaration and then click <span class="emphasis"><em>Finish</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/middle-tier/db-module-namespace-declaration-configuration.png" align="middle"></div><p>
- </p><p>
- Update the newly-created file (which is opened by Eclipse) to declare a bean that defines the <code class="literal">DataSource</code>
- object that will be used to access the GreenPages database.
- Do this by adding the following bean declaration:
-</p><pre class="programlisting"> <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.apache.commons.dbcp.BasicDataSource"</span>
- <span class="hl-attribute">p:driverClassName</span>=<span class="hl-value">"org.h2.Driver"</span> <span class="hl-attribute">p:url</span>=<span class="hl-value">"jdbc:h2:~/greenpages-db/greenpages"</span>
- <span class="hl-attribute">p:username</span>=<span class="hl-value">"greenpages"</span> <span class="hl-attribute">p:password</span>=<span class="hl-value">"pass"</span>
- <span class="hl-attribute">init-method</span>=<span class="hl-value">"createDataSource"</span> <span class="hl-attribute">destroy-method</span>=<span class="hl-value">"close"</span> />
-</pre><p>
- The new bean has introduced a dependency on Commons DBCP, which will cause an error to be reported by Eclipse.
- </p><p>
- This dependency must be recorded in the project’s pom file. Open the pom file for <code class="literal">greenpages.db</code> and add
- the following dependency between the <code class="literal"><dependencies></code> tags:
-</p><pre class="programlisting"> <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.apache.commons<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.org.apache.commons.dbcp<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">/dependency</span>>
-</pre><p>
- Save the updated pom and then switch back to the editor for <code class="literal">module-context.xml</code>.
- Save the updated file and
- observe that the previously reported problem is now resolved as Commons DBCP is available on the classpath.
- </p><p>
- Now that the <code class="literal">DataSource</code> bean is available, it can be published into the OSGi service registry.
- </p><p>
- Right-click the <code class="literal">spring</code> folder and select
- <span class="guimenu">New </span> → <span class="guimenuitem">Spring Bean Configuration File</span> again.
- This time specify
- a name of <code class="literal">osgi-context.xml</code>, click <span class="emphasis"><em>Next</em></span>, and add the <code class="literal">osgi</code>
- namespace declaration
- (ensure that the resultant schema location string contains the URL
- <code class="literal">http://www.springframework.org/schema/osgi/spring-osgi-1.2.xsd</code>
- as
- <code class="literal">http://www.springframework.org/schema/osgi/spring-osgi-2.0-m1.xsd</code>
- will result in an obscure deployment failure due to an invalid 'cacheTarget' property).
- Click <span class="emphasis"><em>Finish</em></span> and then add the following to the new file to publish the
- <code class="literal">DataSource</code> as a service:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- export the dataSource bean to the OSGi service registry under the
- DataSource interface
- --</span>>
- <<span class="hl-tag">osgi:service</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"javax.sql.DataSource"</span> />
-</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="id=middle-tier.create-db-project.config-bundlor-template"></a>Configuring Bundlor’s manifest template</h3></div></div></div><p>
- Bundlor uses a manifest <span class="emphasis"><em>template</em></span> to control the contents of the generated manifest.
- Create a new file named
- <code class="literal">template.mf</code> in the root of the <code class="literal">greenpages.db</code> project.
- Open the existing
- <code class="literal">MANIFEST.MF</code> and switch to the <code class="literal">MANIFEST.MF</code> tab to view its source. Copy
- the contents. Switch to the editor for <code class="literal">template.mf</code>, switch to the
- <code class="literal">template.mf</code> tab and paste the contents from <code class="literal">MANIFEST.MF</code>. These entries
- will tell Bundlor what the resulting manifest’s bundle symbolic name, bundle version, etc. should be. Save the
- updated template.
- </p><p>
- Still in the <code class="literal">template.mf</code> editor switch to the <span class="emphasis"><em>Overview</em></span> tab
- and click <span class="emphasis"><em>Update MANIFEST.MF</em></span> which is under the “<span class="quote">Bundle Actions</span>” section.
- </p><p>
- At this point Bundlor will scan the project to determine its
- dependencies. It will scan both <code class="literal">module-context.xml</code> and <code class="literal">osgi-context.xml</code>
- looking for references to classes. For each class to which it finds a reference, an import for the class’s
- package will be added to the resulting manifest.
- </p><p>
- In this case, Bundlor will generate imports for
- both <code class="code">javax.sql</code> and <code class="code">org.apache.commons.dbcp</code>.
- These imports may not be resolved.
- The <code class="literal">greenpages.db</code> project needs to be associated with a Web Server instance which has the
- Commons DBCP bundle in its repository to resolve them.
- In any event the next step adds the <code class="literal">greenpages.db</code>
- project to the GreenPages PAR and will result in it inheriting the PAR project’s targetted runtime
- configuration.
- </p><p>
- Double-click the <code class="literal">MANIFEST.MF</code> file in the <code class="literal">greenpages</code> project in the
- <span class="emphasis"><em>Package Explorer</em></span> view.
- Switch to the <code class="literal">Dependencies</code> tab and click <span class="emphasis"><em>Add…</em></span>.
- Select <code class="literal">greenpages.db</code> and click <span class="emphasis"><em>OK</em></span>.
- Save the updated file.
- A problem concerning the <code class="code">org.apache.commons.dbcp</code> dependency should now be resolved
- (along with any other resolution errors) and (if the server is running) the
- GreenPages application will be redeployed due to the addition of the <code class="literal">greenpages.db</code>
- module.
- Start the server if it is not already running and observe that this deployment fails.
- </p><p>
- The deployment will fail because the <code class="code">org.h2.Driver</code> class that is referenced in the
- <code class="literal">DataSource</code> bean’s definition in <code class="literal">module-context.xml</code> is not available to
- the bundle.
- (Check for the exception <code class="code">org.springframework.beans.factory.BeanCreationException</code> with
- text something like:
-</p><pre class="programlisting">Error creating bean with name 'dataSource'
- defined in URL [bundleentry://68.fwk504117357/META-INF/spring/ module-context.xml]:
- Invocation of init method failed;
- nested exception is org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class 'org.h2.Driver'
-</pre><p>
- though the numbers might be different.)
- </p><p>
- There are a few cases where Bundlor will not identify a dependency on a class and, at the moment,
- this is one of them, although this is an area of Bundlor that is being improved all the time.
- Thankfully, it is easy to add the required import by making a simple update to the template.
- </p><p>
- Open the editor for the
- <code class="literal">template.mf</code> file in the <code class="literal">greenpages.db</code> project and add the following
- <code class="literal">Import-Package</code> header and save the updated manifest:
-</p><pre class="programlisting">Import-Package: org.h2;version="[1.0.71,1.0.71]"
-</pre><p>
- </p><p>
- Saving the manifest will trigger a redeployment (or click on <span class="emphasis"><em>Update MANIFEST.MF</em></span> as before)
- which will fail if the H2 database is not available.
- (Refer to the section <a class="xref" href="#installing.greenpages.building.db" title="Starting and configuring the database">the section called “Starting and configuring the database”</a>
- in <a class="xref" href="#installing.greenpages" title="3. Installing and exploring GreenPages">Chapter 3, <i>Installing and exploring GreenPages</i></a> to run and configure the database.)
- </p><p>
- If the database is running the GreenPages application should correctly deploy.
- Although the application web front-end will run, the database contents is
- not visible, of course, because we are still running with the <span class="emphasis"><em>stub</em></span> version of the <code class="code">search</code> method on the controller.
- The implementation of the <code class="code">Directory</code> service needs to be changed to exploit the database.</p><p>
- (One possible cause of failure here is the username and password on the <code class="literal">dataSource</code>
- bean defined in <code class="literal">module-context.xml</code>. Check that these are exactly correct.)
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.building-jpa-module"></a>5.3 Building the JPA module</h2></div></div></div><p>
- In this section the JPA module in GreenPages is created, building upon an existing skeleton.
- JPA and its metadata are configured, and a JPA-based Directory service implementation
- is published which is then consumed by the application’s Web bundle.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.completing-jpadirectory"></a>Completing the JPA-based Directory implementation</h3></div></div></div><p>
- The <code class="literal">greenpages.jpa</code> starter project provides the beginnings of a JPA-based implementation of
- <code class="literal">Directory</code> named <code class="literal">JpaDirectory</code>. Import the <code class="literal">greenpages.jpa</code> project
- from the <code class="literal">$GREENPAGES_HOME/start</code> directory.
- </p><p>
- Open the <code class="code">JpaDirectory.java</code> source file
- in the <code class="literal">greenpages.jpa</code> package of <code class="literal">greenpages.jpa</code> project (under <code class="code">src/main/java</code>).
- </p><p>
- The source file
- contains a Java Persistence Query Language (JPQL) search query that will be used to retrieve
- listings from the database, and empty
- implementations of the <code class="literal">search</code> and <code class="literal">findListing</code> methods.
- </p><p>
- First add an <code class="literal">EntityManager</code> to it.
- Before the new field
- can be added, <code class="literal">EntityManager</code> must be available on the classpath.
- Open the pom for
- <code class="literal">greenpages.jpa</code> and add the following dependency:
-</p><pre class="programlisting"> <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>javax.persistence<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.javax.persistence<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- Now return to <code class="literal">JpaDirectory</code> and add the following field to the class along with an
- import for <code class="literal">javax.persistence.EntityManager</code> (which should be suggested by Eclipse):
-</p><pre class="programlisting"> <span class="hl-keyword">private</span> EntityManager em;
-</pre><p>
- </p><p>
- This <code class="literal">EntityManager</code> can now be used to implement the <code class="literal">search</code> and
- <code class="literal">findListing</code> methods. Update the implementations of these two methods to match the
- following implementations and then save the updated class:
-</p><pre class="programlisting"> <span class="hl-keyword">public</span> Listing findListing(<span class="hl-keyword">int</span> id) {
- <span class="hl-keyword">return</span> em.find(JpaListing.<span class="hl-keyword">class</span>, id);
- }
-
- @SuppressWarnings(<span class="hl-string">"unchecked"</span>)
- <span class="hl-keyword">public</span> List<Listing> search(String term) {
- <span class="hl-keyword">return</span> em.createQuery(SEARCH_QUERY).setParameter(<span class="hl-string">"term"</span>,
- <span class="hl-string">"%"</span> + term.toUpperCase() + <span class="hl-string">"%"</span>).getResultList();
- }
-</pre><p>
- (Warnings from Eclipse should now be absent.)
- </p><p>
- The application context now needs to be updated to create <code class="literal">JpaDirectory</code> and to create
- an <code class="literal">EntityManager</code> that can be injected into <code class="literal">JpaDirectory</code>.
- </p><p>
- Open
- <code class="literal">module-context.xml</code> in the <code class="literal">META-INF/spring</code> folder of the
- <code class="literal">greenpages.jpa</code>. Add the following beans that will create <code class="literal">JpaDirectory</code>
- and an <code class="literal">EntityManager</code>, enable load-time weaving that is required by JPA, and enable
- annotation-based configuration that will allow the <code class="literal">EntityManager</code> to be injected into
- <code class="literal">JpaDirectory</code>:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- Activates a load-time weaver for the context. Any bean within the
- context that implements LoadTimeWeaverAware (such as
- LocalContainerEntityManagerFactoryBean) will receive a reference to
- the autodetected load-time weaver.
- --</span>>
- <<span class="hl-tag">context:load-time-weaver</span> <span class="hl-attribute">aspectj-weaving</span>=<span class="hl-value">"on"</span> />
-
- <<span class="hl-comment">!-- JPA EntityManagerFactory --</span>>
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"entityManagerFactory"</span>
- <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.orm.jpa.LocalContainerEntityManagerFactoryBean"</span>
- <span class="hl-attribute">p:dataSource-ref</span>=<span class="hl-value">"dataSource"</span>>
- <<span class="hl-tag">property</span> <span class="hl-attribute">name</span>=<span class="hl-value">"jpaVendorAdapter"</span>>
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"jpaVendorAdapter"</span>
- <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.orm.jpa.vendor.EclipseLinkJpaVendorAdapter"</span>
- <span class="hl-attribute">p:databasePlatform</span>=<span class="hl-value">"org.eclipse.persistence.platform.database.HSQLPlatform"</span>
- <span class="hl-attribute">p:showSql</span>=<span class="hl-value">"true"</span> />
- <<span class="hl-tag">/property</span>>
- <<span class="hl-tag">/bean</span>>
-
- <<span class="hl-comment">!--
- Activates various annotations to be detected in bean classes: Spring's
- @Required and @Autowired, as well as JSR 250's @PostConstruct,
- @PreDestroy and @Resource (if available) and JPA's @PersistenceContext
- and @PersistenceUnit (if available).
- --</span>>
- <<span class="hl-tag">context:annotation-config</span> />
-
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"directory"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"greenpages.jpa.JpaDirectory"</span> />
-</pre><p>
- </p><p>
- The addition of the new beans to the context has introduced a new dependency upon Spring’s ORM support and upon
- EclipseLink and its JPA implementation. Add the following dependencies to the pom file for
- <code class="literal">greenpages.jpa</code> and save it:
-</p><pre class="programlisting"> <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.springframework<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>org.springframework.spring-library<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">type</span>>libd<<span class="hl-tag">/type</span>>
- <<span class="hl-tag">/dependency</span>>
- <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.eclipse.persistence<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.org.eclipse.persistence<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">/dependency</span>>
- <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.eclipse.persistence<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.org.eclipse.persistence.jpa<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- Now switch back to <code class="literal">module-context.xml</code> for <code class="literal">greenpages.jpa</code> and observe
- that the errors relating to Spring’s ORM types have now been resolved.
- Save <code class="literal">module-context.xml</code>.
- </p><p>
- The application context now contains a factory that will create an <code class="literal">EntityManager</code> and is
- configured for annotation-based configuration.
- The last step in completing <code class="literal">JpaDirectory</code>
- is to annotate the <code class="literal">EntityManager</code> field so that Spring will inject the
- <code class="literal">EntityManager</code> created by the factory into the field.
- </p><p>
- Open <code class="literal">JpaDirectory.java</code> again and add an annotation <code class="literal">@PersistenceContext</code> to the
- <code class="literal">EntityManager</code> field.
-</p><pre class="programlisting">@PersistenceContext
-<span class="hl-keyword">private</span> EntityManager em;
-</pre><p>
- Eclipse will suggest an import for
- <code class="literal">javax.persistence.PersistenceContext</code>; accept this and save the file.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.providing-jpa-metadata"></a>Providing the JPA metadata</h3></div></div></div><p>
- JPA uses a file named <code class="literal">META-INF/persistence.xml</code> to describe persistence units.
- <code class="literal">persistence.xml</code> refers to a second file, typically named
- <code class="literal">META-INF/orm.xml</code>, to define entity mappings.
- In the case of GreenPages the
- <code class="literal">persistence.xml</code> file specifies a single persistence unit that points to the
- <code class="literal">greenpages.JpaListing</code> class.
- The specified mapping file
- (<code class="literal">META-INF/orm.xml</code>) tells the JPA implementation how to map
- <code class="literal">JpaListing</code> to the <code class="literal">LISTING</code> database table described above.
- (For more information on JPA consult the Documentation section in the appendix.)
- </p><p>
- Create a new file named <code class="literal">persistence.xml</code> in the <code class="literal">META-INF</code> folder of
- the <code class="literal">greenpages.jpa</code> project. Add the following contents to the new file and then save it:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8" ?</span>>
-<<span class="hl-tag">persistence</span> <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://java.sun.com/xml/ns/persistence"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://java.sun.com/xml/ns/persistence
- http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd"</span>
- <span class="hl-attribute">version</span>=<span class="hl-value">"1.0"</span>>
-
- <<span class="hl-tag">persistence-unit</span> <span class="hl-attribute">name</span>=<span class="hl-value">"GreenPages"</span> <span class="hl-attribute">transaction-type</span>=<span class="hl-value">"RESOURCE_LOCAL"</span>>
- <<span class="hl-tag">class</span>>greenpages.jpa.JpaListing<<span class="hl-tag">/class</span>>
- <<span class="hl-tag">/persistence-unit</span>>
-
-<<span class="hl-tag">/persistence</span>>
-</pre><p>
- </p><p>
- Now create a new file named <code class="literal">orm.xml</code> also in the <code class="literal">META-INF</code> folder
- alongside <code class="literal">persistence.xml</code>. Add the following contents to the new file and then save it:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8" ?</span>>
-<<span class="hl-tag">entity-mappings</span> <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://java.sun.com/xml/ns/persistence/orm"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://java.sun.com/xml/ns/persistence/orm
- http://java.sun.com/xml/ns/persistence/orm_1_0.xsd"</span>
- <span class="hl-attribute">version</span>=<span class="hl-value">"1.0"</span>>
- <<span class="hl-tag">package</span>>greenpages.jpa<<span class="hl-tag">/package</span>>
- <<span class="hl-tag">entity</span> <span class="hl-attribute">class</span>=<span class="hl-value">"greenpages.jpa.JpaListing"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"Listing"</span>>
- <<span class="hl-tag">table</span> <span class="hl-attribute">name</span>=<span class="hl-value">"LISTING"</span> />
- <<span class="hl-tag">attributes</span>>
- <<span class="hl-tag">id</span> <span class="hl-attribute">name</span>=<span class="hl-value">"listingNumber"</span>>
- <<span class="hl-tag">column</span> <span class="hl-attribute">name</span>=<span class="hl-value">"LISTING_NUMBER"</span> />
- <<span class="hl-tag">generated-value</span> <span class="hl-attribute">strategy</span>=<span class="hl-value">"TABLE"</span> />
- <<span class="hl-tag">/id</span>>
- <<span class="hl-tag">basic</span> <span class="hl-attribute">name</span>=<span class="hl-value">"firstName"</span>>
- <<span class="hl-tag">column</span> <span class="hl-attribute">name</span>=<span class="hl-value">"FIRST_NAME"</span> />
- <<span class="hl-tag">/basic</span>>
- <<span class="hl-tag">basic</span> <span class="hl-attribute">name</span>=<span class="hl-value">"lastName"</span>>
- <<span class="hl-tag">column</span> <span class="hl-attribute">name</span>=<span class="hl-value">"LAST_NAME"</span> />
- <<span class="hl-tag">/basic</span>>
- <<span class="hl-tag">basic</span> <span class="hl-attribute">name</span>=<span class="hl-value">"emailAddress"</span>>
- <<span class="hl-tag">column</span> <span class="hl-attribute">name</span>=<span class="hl-value">"EMAIL_ADDRESS"</span> />
- <<span class="hl-tag">/basic</span>>
- <<span class="hl-tag">/attributes</span>>
- <<span class="hl-tag">/entity</span>>
-<<span class="hl-tag">/entity-mappings</span>>
-</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.consuming-datasource"></a>Consuming the DataSource from the service registry</h3></div></div></div><p>
- The <code class="literal">entityManagerFactory</code> bean that was added earlier depends upon a bean named
- <code class="literal">dataSource</code> which it will use to connect the <code class="literal">EntityManager</code>
- to the GreenPages database.
- The <code class="literal">greenpages.db</code> module already publishes a
- <code class="literal">DataSource</code> to the service registry.
- <code class="literal">greenpages.jpa</code> must now be
- updated to consume this.
- </p><p>
- Open <code class="literal">osgi-context.xml</code> in the <code class="literal">META-INF/spring</code> folder of the
- <code class="literal">greenpages.jpa</code> project and add the following:
-</p><pre class="programlisting"> <<span class="hl-comment">!-- import the DataSource from OSGi --</span>>
- <<span class="hl-tag">osgi:reference</span> <span class="hl-attribute">id</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"javax.sql.DataSource"</span> />
-</pre><p>
- </p><p>
- This will result in a bean being created in the application context that is named <code class="literal">dataSource</code>.
- The bean will be of type <code class="literal">javax.sql.DataSource</code> and will be backed by a service found in the
- OSGi service registry that implements the <code class="literal">javax.sql.DataSource</code> interface.
- (Some warnings concerning the <code class="literal">dataSource</code> bean will now disappear.)
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.publishing-directory"></a>Publishing the Directory implementation to the service registry</h3></div></div></div><p>
- To make the JPA-based <code class="literal">Directory</code> implementation available to GreenPages’
- Web module it must be “<span class="quote">published</span>” to the OSGi service registry.
- </p><p>
- Open <code class="literal">osgi-context.xml</code> in the <code class="literal">META-INF/spring</code> folder of the
- <code class="literal">greenpages.jpa</code> project, add the following and then save the updated file:
-</p><pre class="programlisting"> <<span class="hl-comment">!-- export the directory bean to OSGi under the Directory interface --</span>>
- <<span class="hl-tag">osgi:service</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"directory"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"greenpages.Directory"</span> />
-</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.building-jpa-module.generating-manifest"></a>Generating greenpages.jpa’s manifest using Bundlor</h3></div></div></div><p>
- Open the <code class="literal">template.mf</code> file in the root of the <code class="literal">greenpages.jpa</code>
- project and switch to the <code class="literal">template.mf</code> tab. Add the following entries to the template
- and save it.
-</p><pre class="programlisting">Import-Bundle: com.springsource.org.eclipse.persistence;version="[1.0.0,1.0.0]",
- com.springsource.org.eclipse.persistence.jpa;version="[1.0.0,1.0.0]"
-Import-Package: org.springframework.context.weaving;version="[3.0,3.1)",
- org.springframework.transaction.aspectj;version="[3.0,3.1)"
-Excluded-Exports: greenpages.jpa
-</pre><p>
- </p><p>
- The <code class="literal">Excluded-Exports</code> header tells Bundlor that the
- <code class="literal">greenpages.jpa</code> should not be exported from the <code class="literal">greenpages.jpa</code>
- bundle.
- </p><p>
- The <code class="literal">Import-Package</code> entries for
- <code class="literal">org.springframework.context.weaving</code> and
- <code class="literal">org.springframework.transaction.aspectj</code> are needed as Bundlor cannot, yet,
- detect that these packages are required.
- </p><p>
- Lastly, the <code class="literal">Import-Bundle</code> entries for EclipseLink and its JPA implementation
- are needed as Bundlor cannot, yet, detect that EclipseLink is the JPA implementation that is
- being used by GreenPages.
- </p><p>
- Switch to the <span class="emphasis"><em>Overview</em></span> tab and click <span class="emphasis"><em>Update MANIFEST.MF</em></span>.
- As with <code class="literal">greenpages.db</code> before, this update may result in some errors being
- reported in the manifest as the project is not associated with a targetted runtime. Double-click the
- <code class="literal">MANIFEST.MF</code> file in the <code class="literal">greenpages</code> project in the Package Explorer.
- Switch to the <span class="emphasis"><em>Dependencies</em></span> tab and click <span class="emphasis"><em>Add…</em></span>. Select
- <code class="literal">greenpages.jpa</code> and click <span class="emphasis"><em>OK</em></span>. Save the updated file. The
- problems in the manifest should now be resolved and the GreenPages application should be redeployed
- due to the addition of the <code class="literal">greenpages.jpa</code> module. This redeployment should succeed
- and it’s now time to try the application again.
- </p><p>
- (A possible action if this fails is to Update (Maven) Dependencies on the project right-click menu in the Maven sub-menu.)
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.trying-it-out"></a>5.4 Trying out the JPA middle tier</h2></div></div></div><p>
- Open a Web browser and navigate to <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- Click the <span class="emphasis"><em>Submit</em></span> button. Unfortunately the search will not return any results
- as the Web bundle is still using the stub <code class="literal">Directory</code> implementation provided by the
- <code class="literal">greenpages.app</code> module, rather than the JPA-based implementation that is provided
- by <code class="literal">greenpages.jpa</code>.
- This can be confirmed by using the Equinox console or the web-based admin console to examine the services being used
- by <code class="literal">greenpages.web</code>.
- </p><p>
- The service which is being used by the Web bundle can be changed at runtime without having to restart the
- application or the Web Server. This can be achieved by changing <code class="literal">greenpages.app</code> so that it no longer
- publishes its <code class="literal">Directory</code> implementation. As a result of this <code class="literal">Directory</code>
- service no longer being available, the Web bundle will automatically switch to using the JPA-based
- implementation.
- </p><p>
- Open the <code class="literal">osgi-context.xml</code> file in the <code class="literal">META-INF/spring</code> folder of the
- <code class="literal">greenpages.app</code> project and comment out the publication of the directory service:
-</p><pre class="programlisting"><!-- <osgi:service interface="greenpages.Directory" ref="directory"/> -->
-</pre><p>
- </p><p>
- Now save the updated file which will cause the application to be updated and refreshed on the server.
- Switch back to the Web browser and click
- <span class="emphasis"><em>Submit</em></span> again.
- </p><p>
- This time eight results should be returned. Clicking on any of the
- <span class="emphasis"><em>View</em></span> links will display the listing’s details.
- The application is now working.
- All that remains is to apply some best practices to the middle tier.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="middle-tier.applying-best-practices"></a>5.5 Applying best practices to the middle tier</h2></div></div></div><p>
- While the application middle tier now works as required, it does not observe a few Spring-related best practices.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.applying-best-practices.transactions"></a>Using transactions</h3></div></div></div><p>
- At the moment, the middle tier does not make any use of transactions. This isn’t a problem while the
- database access methods are only running single queries, but could lead to problems in the future if the
- application is made more complex. Thankfully, adding the use of transactions to the middle tier is simple.
- </p><p>
- Open <code class="literal">module-context.xml</code> in the <code class="literal">META-INF/spring</code> folder of
- <code class="literal">greenpages.jpa</code>. Add the following bean definition to create a transaction manager and
- associate it with the context’s <code class="literal">EntityManager</code>:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- Transaction manager for a single JPA EntityManagerFactory (alternative to JTA)
- --</span>>
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"transactionManager"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.orm.jpa.JpaTransactionManager"</span>
- <span class="hl-attribute">p:entityManagerFactory-ref</span>=<span class="hl-value">"entityManagerFactory"</span> />
-</pre><p>
- (Save it, and the <code class="literal">greenpages.jpa</code> module will be refreshed.)
- </p><p>
- Next, Spring must be told to enable transaction management. In keeping with the use of annotation-based configuration
- for the <code class="literal">EntityManager</code>, annotation-based transaction configuration will also be used. Add the following
- to enable AspectJ-powered transaction demarcation for appropriately annotated beans:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- Instruct Spring to perform declarative transaction management
- automatically on annotated classes.
- --</span>>
- <<span class="hl-tag">tx:annotation-driven</span> <span class="hl-attribute">mode</span>=<span class="hl-value">"aspectj"</span> />
-</pre><p>
- </p><p>
- Save the updated file which will trigger (another) successful refresh of <code class="literal">greenpages.jpa</code>.
- </p><p>
- Lastly, <code class="literal">JpaDirectory</code> needs to be annotated so that it is identified as requiring Spring-based
- transaction management. Open <code class="literal">JpaDirectory.java</code> in <code class="literal">greenpages.jpa</code>.
- Annotate the class with
- <code class="literal">@Transactional</code> and add an
- import for <code class="literal">org.springframework.transaction.annotation.Transactional</code>, which Eclipse should suggest:
-</p><pre class="programlisting"><span class="hl-keyword">import</span> org.springframework.transaction.annotation.Transactional;
-
-@Transactional
-<span class="hl-keyword">final</span> <span class="hl-keyword">class</span> JpaDirectory <span class="hl-keyword">implements</span> Directory {
-…
-</pre><p>
- </p><p>
- Save the updated file triggering another successful refresh: <code class="literal">JpaDirectory</code> is now
- transactional.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.applying-best-practices.exception-translation"></a>Enabling exception translation</h3></div></div></div><p>
- When using JPA, the standard exceptions are somewhat out of keeping with Spring’s exception
- model. Spring provides support for automatically translating these exceptions into Spring’s
- <code class="literal">DataAccessException</code> hierarchy.
- </p><p>
- Open <code class="literal">module-context.xml</code> for <code class="literal">greenpages.jpa</code> again and add the
- following bean definition to add the exception translator to the application context:
-</p><pre class="programlisting"> <<span class="hl-comment">!--
- Post-processor to perform exception translation on @Repository classes
- (from native exceptions such as JPA PersistenceExceptions to
- Spring&rsquo;s DataAccessException hierarchy).
- --</span>>
- <<span class="hl-tag">bean</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"</span> />
-</pre><p>
- </p><p>
- Save the updated file. The translation will only occur on classes that are annotated with
- Spring’s <code class="literal">@Repository</code> stereotype annotation.
- <code class="literal">JpaDirectory</code> needs to have this annotation added to it complete the
- enabling of the exception translation.
- </p><p>
- Open <code class="literal">JpaDirectory.java</code> again, annotate the class with
- <code class="literal">@Repository</code> and add an import for
- <code class="literal">org.springframework.stereotype.Repository</code>:
-</p><pre class="programlisting"><span class="hl-keyword">import</span> org.springframework.stereotype.Repository;
-
-@Transactional
-@Repository
-<span class="hl-keyword">final</span> <span class="hl-keyword">class</span> JpaDirectory <span class="hl-keyword">implements</span> Directory {
-</pre><p>
- </p><p>
- Save the updated file.
- </p><p>
- At this point the redeploy of the GreenPages application may fail with an error similar to this:
-</p><pre class="programlisting"><SPDE0100E> The class with name 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor',
-referenced by bean 'org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor#0',
-could not be loaded by class loader 'ServerBundleClassLoader: [bundle=greenpages-1-greenpages.jpa_2.3.0]':
-…
-</pre><p>
-which indicates that there is some package (<code class="code">org.springframework.dao.annotation</code>) which is not
-available to the “<span class="quote"><code class="code">BundleClassLoader</code></span>” for bundle <code class="code">greenpages-1-greenpages.jpa_2.3.0</code>.
-We should look in the <code class="literal">MANIFEST.MF</code> file for this bundle, and see that this package is not
-imported (in the <code class="literal">Import-Package</code> header). Since Bundlor generated this file (controlled by the
-template file <code class="literal">template.mf</code>) we should check that the manifest was re-generated on our last change.
- </p><p>
- Open <code class="literal">template.mf</code> in <code class="literal">greenpages.jpa</code> and,
- in the <span class="emphasis"><em>Overview</em></span> pane, click on <span class="emphasis"><em>Update MANIFEST.MF</em></span>
- in the <span class="emphasis"><em>Bundle Actions</em></span> section. The <code class="literal">MANIFEST.MF</code> file
- is updated, and the application is redeployed, this time successfully. It might be worthwhile
- checking the option <span class="emphasis"><em>Automatically update MANIFEST.MF in the background</em></span> on
- the <code class="literal">template.mf</code> <span class="emphasis"><em>Overview</em></span> pane so that the <code class="literal">MANIFEST.MF
- </code> is kept up to date as the project is changed.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.applying-best-practices.versioning-imports"></a>Versioning imports</h3></div></div></div><p>
- By default, Bundlor generates <code class="literal">Import-Package</code> entries with no version range
- specified. In the absence of a version range, the OSGi default of “<span class="quote">any version</span>” is used.
- Whilst this is very flexible it’s generally a good idea to restrict an import by
- specifying a narrower range. This can be achieved by providing Bundlor with some additional
- information in the manifest template.
- </p><p>
- Open <code class="literal">template.mf</code> for <code class="literal">greenpages.jpa</code> and add the following
- <code class="literal">Import-Template</code> header:
-</p><pre class="programlisting">Import-Template: org.springframework.*;version="[3.0,3.1)",
- greenpages;version="[2.0,2.1)",
- javax.persistence;version="[1.0.0,1.0.0]"
-</pre><p>
- If there is already an <code class="literal">Import-Template</code> header in the template, extend it to include the
- above package version range specifications.
- </p><p>
- This header tells Bundlor that all imports of <code class="literal">org.springframework</code> packages
- should be in the range <code class="literal">3.0</code> inclusive to <code class="literal">3.1</code>
- exclusive, that an import of the <code class="literal">greenpages</code> package should be in the
- range <code class="literal">2.0</code> inclusive to <code class="literal">2.1</code> exclusive, and that an import of
- <code class="literal">javax.persistence</code> should be at exactly version <code class="literal">1.0.0</code>.
- </p><p>
- Bundlor has also generated an import for the <code class="literal">javax.sql</code> package due to
- the <code class="literal">greenpages.jpa</code> module’s use of <code class="literal">javax.sql.DataSource</code>.
- This class is provided by the JRE and as such is generally considered to be unversioned, that is it
- has the default OSGi version of zero. If version zero is <span class="emphasis"><em>precisely</em></span> what is required
- then add the following to the <code class="literal">Import-Template</code> header:
-</p><pre class="programlisting">,javax.sql;version="[0,0]"
-</pre><p>
- but if “<span class="quote">any</span>” version is acceptable add the following instead:
-</p><pre class="programlisting">,javax.sql;version="0"
-</pre><p>
- Either of these will successfully allow GreenPages to deploy and work correctly. The difference
- is in the level of flexibility allowed with the external dependency, something which is probably
- irrelevant in this case, but with other package sources might be important.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="middle-tier.applying-best-practices.congratulations"></a>Congratulations!</h3></div></div></div><p>
- The GreenPages middle tier is now complete and observes some “<span class="quote">best practice</span>”
- development with Spring and OSGi.
- </p></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="testing.greenpages"></a>6. Testing GreenPages</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="testing.greenpages.introduction"></a>6.1 Introduction</h2></div></div></div><p>
- Testing is one of the most important aspects of software development. Without testing it would be difficult
- to determine if a piece of code worked properly, changes would have undetected consequences, and the quality
- of products would generally be lower.
- </p><p>
- There are two major categories of testing generally recognised today: unit testing
- and integration testing. In the context of the
- GreenPages application, <span class="emphasis"><em>unit testing</em></span> means testing a single class in isolation from other application code.
- This type of testing does not change at all when developing for Web Server.
- </p><p>
- In our application <span class="emphasis"><em>integration testing</em></span> means testing an application or
- portion of an application with other code. This kind of testing does look a bit different when developing
- for Web Server. In most cases Web Server applications are made up of small bundles that consume services through the
- OSGi registry. In the following steps a single bundle and the entire GreenPages
- application will be integration tested outside the container.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="testing.greenpages.single.bundle"></a>6.2 Single bundle integration testing</h2></div></div></div><p>
- One of the most common forms of integration testing is ensuring that the object relational mapping in an
- application is working properly. This kind of testing typically uses a data access object to retrieve data
- from a live database. In this step a test case for the <code class="classname">JpaDirectory</code>
- class is created.
- </p><p>
- Before proceeding, stop any Web Server instance that was previously running.
- </p><p>
- Open the <code class="classname">greenpages.jpa.JpaDirectorySpringContextTests</code> class in the
- <code class="filename">src/test/java</code> source folder of the <code class="literal">greenpages.jpa</code> project. This
- class contains a method that uses <span class="emphasis"><em>JUnit</em></span> to test that a search completes
- correctly. Rather than instantiate
- this class directly in the test, the Spring Test Framework is used to instantiate and inject a
- <code class="classname">JpaDirectory</code> based on the <code class="literal">META-INF/spring/module-context.xml</code> file.
- </p><p>
- Add Spring Test Framework declarations to the test class. These declarations run the test with the
- <code class="classname">SpringJunit4ClassRunner</code> and configure the test with the
- <code class="literal">classpath:/META-INF/spring/module-context.xml</code> file:
-</p><pre class="programlisting">@RunWith(SpringJUnit4ClassRunner.<span class="hl-keyword">class</span>)
-@ContextConfiguration(locations = <span class="hl-string">"classpath:/META-INF/spring/module-context.xml"</span>)
-@TestExecutionListeners(value = DependencyInjectionTestExecutionListener.<span class="hl-keyword">class</span>)
-<span class="hl-keyword">public</span> <span class="hl-keyword">class</span> JpaDirectorySpringContextTests {
-…
-</pre><p>
- Use Eclipse to suggest the necessary imports until there are no errors.
- </p><p>
- When this configuration is complete, click on the <span class="emphasis"><em>Run</em></span> drop-down menu and select
- <span class="emphasis"><em>Run Configurations…</em></span>. In the the dialog that opens select
- <span class="guimenu">JUnit</span> → <span class="guimenuitem">JpaDirectorySpringContextTests</span>
- and press <span class="emphasis"><em>Run</em></span>.
- </p><div class="mediaobject" align="center"><img src="images/testing-greenpages/jpa-test-runner.png" align="middle"></div><p>
- </p><p>
- This test run will fail because there is no <code class="interfacename">DataSource</code> bean to be injected;
- it is typically sourced from the OSGi service registry at runtime:
-</p><pre class="programlisting">Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException:
- No bean named 'dataSource' is defined
-</pre><p>
- The next step will correct this error.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="testing.greenpages.contributing.osgi"></a>6.3 Contributing OSGi sourced dependencies</h2></div></div></div><p>
- In the previous step the <code class="classname">JpaDirectorySpringContextTests</code> test failed because it did
- not have a <code class="interfacename">DataSource</code> to be injected. In this step, an
- “<span class="quote">in-process</span>” database is instantiated and populated with data for testing.
- </p><p>
- Open the <code class="filename">test-context.xml</code> file in the
- <code class="literal">src/test/resources</code> <code class="filename">META-INF/spring</code> folder.
- In this file, define two beans; a
- <code class="interfacename">DataSource</code> and a <code class="classname">TestDataPopulator</code>.
- These two beans
- will provide a test <code class="interfacename">DataSource</code> complete with test data.
-</p><pre class="programlisting"> <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.apache.commons.dbcp.BasicDataSource"</span>
- <span class="hl-attribute">p:driverClassName</span>=<span class="hl-value">"org.h2.Driver"</span> <span class="hl-attribute">p:url</span>=<span class="hl-value">"jdbc:h2:.~/greenpages-db/greenpages"</span>
- <span class="hl-attribute">p:username</span>=<span class="hl-value">"greenpages"</span> <span class="hl-attribute">p:password</span>=<span class="hl-value">"pass"</span> <span class="hl-attribute">init-method</span>=<span class="hl-value">"createDataSource"</span>
- <span class="hl-attribute">destroy-method</span>=<span class="hl-value">"close"</span> />
-
- <<span class="hl-tag">bean</span> <span class="hl-attribute">class</span>=<span class="hl-value">"greenpages.jpa.TestDataPopulator"</span> <span class="hl-attribute">init-method</span>=<span class="hl-value">"populate"</span>>
- <<span class="hl-tag">constructor-arg</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"dataSource"</span> />
- <<span class="hl-tag">constructor-arg</span> <span class="hl-attribute">value</span>=<span class="hl-value">"file:../../db/db.sql"</span> />
- <<span class="hl-tag">/bean</span>>
-</pre><p>
- </p><p>
- Open the <code class="classname">JpaDirectorySpringContextTests</code> class and update the
- <code class="interfacename">ContextConfiguration</code> annotation to point at both the
- <code class="filename">module-context.xml</code> file and the <code class="filename">test-context.xml</code> file:
-</p><pre class="programlisting">@ContextConfiguration(locations = {
- <span class="hl-string">"classpath:/META-INF/spring/module-context.xml"</span>,
- <span class="hl-string">"classpath:/META-INF/spring/test-context.xml"</span> })
-</pre><p>
- </p><p>
- Once again use the <code class="literal">JpaDirectorySpringContextTests</code> JUnit profile to run the test class.
- Now that there is a <code class="interfacename">DataSource</code> being contributed, the test will pass.
- If the test fails, check that the H2 database server is still running in the background.
- </p><p>
- Proceed to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="testing.greenpages.application"></a>6.4 Multi bundle integration testing</h2></div></div></div><p>
- Earlier a single bundle was integration tested by providing a test implementation of its
- <code class="interfacename">DataSource</code> dependency.
- When integration testing it is often a good idea to
- test the entire application outside of the container.
- In this step a test case for the
- entire GreenPages application is created, starting with the <code class="classname">GreenPagesController</code> class
- and descending all the way to a database.
- It would be sensible to create this in a separate test bundle
- but as one of the bundles involved here is a web bundle the tests will have to go in there.
- </p><p>
- Since this project will be testing the GreenPages application as a whole, it needs to depend on the bundles
- that make up the application.
- Open the <code class="filename">pom.xml</code> file for the <code class="literal">greenpages.web</code>
- project and add a dependency declaration for the <code class="literal">greenpages.jpa</code> bundle:
-</p><pre class="programlisting"> <<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.jpa<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">scope</span>>test<<span class="hl-tag">/scope</span>>
- <<span class="hl-tag">/dependency</span>>
-</pre><p>
- noting that the scope is <code class="literal">test</code>.
- </p><p>
- Open the <code class="classname">GreenPagesSpringContextTests</code> class
- and add the Spring Test Framework declarations.
- These declarations should run the test with the
- <code class="classname">SpringJunit4ClassRunner</code> and configure the test with the
- <code class="literal">classpath*:/META-INF/spring/module-context.xml</code>,
- <code class="literal">file:src/main/webapp/WEB-INF/greenpages-servlet.xml</code> and
- <code class="literal">classpath:/META-INF/spring/test-context.xml</code> files. Note the use of
- <code class="literal">classpath*:</code> with respect to the <code class="literal">module-context.xml</code> path.
- This will
- cause Spring to look for files that match that path in all of the bundles on the classpath meaning that all
- the application beans will be instantiated.
- Also, as we do not want the <code class="literal">WEB-INF</code> folder
- on the classpath we must reference the servlet context for GreenPages with a full file path:
-</p><pre class="programlisting">@RunWith(SpringJUnit4ClassRunner.<span class="hl-keyword">class</span>)
-@ContextConfiguration(locations = {
- <span class="hl-string">"classpath*:/META-INF/spring/module-context.xml"</span>,
- <span class="hl-string">"file:src/main/webapp/WEB-INF/greenpages-servlet.xml"</span>,
- <span class="hl-string">"classpath:/META-INF/spring/test-context.xml"</span> })
-@TestExecutionListeners(value = DependencyInjectionTestExecutionListener.<span class="hl-keyword">class</span>)
-<span class="hl-keyword">public</span> <span class="hl-keyword">class</span> GreenPagesSpringContextTests {
-…
-</pre><p>
- It may be necessary to click on Update <code class="literal">MANIFEST.MF</code> on the template overview pane
- and <span class="emphasis"><em>Update Dependencies</em></span> from the <span class="emphasis"><em>Maven</em></span> menu,
- before Eclipse will suggest appropriate imports here.
- </p><p>
- When this configuration is complete, click on the <span class="emphasis"><em>Run</em></span> drop-down and select
- <span class="emphasis"><em>Run Configurations…</em></span>.
- In the the dialog that opens select
- <span class="guimenu">JUnit</span> → <span class="guimenuitem">GreenPagesSpringContextTests</span>
- and press <span class="emphasis"><em>Run</em></span>;
- </p><div class="mediaobject" align="center"><img src="images/testing-greenpages/integration-test-runner.png" align="middle"></div><p>
- </p><p>
- When this test is run, Spring creates an <code class="interfacename">ApplicationContext</code> that is built
- from the <code class="filename">module-context.xml</code> configuration files from all of the bundles.
- Because of
- this all of the internal dependencies are satisfied by the beans created directly by the bundles.
- </p><p>
- The test should pass. If it doesn't, try the usual Eclipse dance steps of opening and closing the project and doing a clean rebuild to clear the problem.
- </p><p>
- There are warnings output by this test concerning <code class="literal">log4j</code>:
-</p><pre class="programlisting">log4j:WARN No appenders could be found for logger
- (org.springframework.test.context.junit4.SpringJUnit4ClassRunner).
-log4j:WARN Please initialize the log4j system properly.
-</pre><p>
- These warnings are benign, and do not influence the tests in any way.
- </p><p>
- The next chapter constructs an automated build system that might be used to build GreenPages
- (and run its tests) outside of an interactive development environment.
- </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="automated.build"></a>7. Automated Build</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.introduction"></a>7.1 Introduction</h2></div></div></div><p>
- One of the most important components in application development is the automated build. This permits
- application artifacts to be created outside of the developer’s IDE. The application can be
- created and tested in a variety of environments including continuous integration.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.setup"></a>7.2 Setting up for Automated Build</h2></div></div></div><p>
- Before building and deploying from the command line, it is important to clean up the artifacts that Eclipse
- has deployed. In this section the GreenPages application will be undeployed within Eclipse and all of
- the GreenPages bundles built from the command line.
- </p><p>
- Right-click on the <code class="literal">greenpages</code> application in the <code class="literal">Servers</code> view and
- select <span class="emphasis"><em>Remove</em></span>. Once this is complete close Eclipse: it is no longer needed.
- </p><div class="mediaobject" align="center"><img src="images/automated-build/remove-application.png" align="middle"></div><p>
- </p><p>
- Run the following command from a command prompt with the <code class="filename">$GREENPAGES_HOME/start</code> as the current directory. This will build
- the individual bundles that make up the GreenPages application:
- </p><pre class="programlisting">mvn clean install</pre><p>
- </p><p>
- The first time this is run will cause Maven to download quite a few packages. It is likely also that
- this does not build successfully on the first try, due to warnings from Bundlor. These warnings are due to
- the lack of information regarding some of the packages required by <code class="literal">greenpages.db</code> and <code class="literal">greenpages.web</code>.
- For example warnings like the following may be issued:
-</p><pre class="programlisting">[WARNING] Bundlor Warnings:
-[WARNING] <SB0001W>: The import of package javax.sql does not specify a version.
-[WARNING] <SB0001W>: The import of package org.apache.commons.dbcp does not specify a version.
-[INFO] ------------------------------------------------------------------------
-[ERROR] BUILD ERROR
-[INFO] ------------------------------------------------------------------------
-[INFO] Bundle transformer returned warnings.
- Please fix manifest template at '/opt/greenpages-2.3.0.RELEASE/start/greenpages.db/template.mf'
- and try again.
-</pre><p>
- which indicate that there is no information in the <code class="literal">template.mf</code> file in the <code class="literal">greenpages.db</code> project
- to inform Bundlor what version of these packages to generate in the <code class="literal">MANIFEST.MF</code> for that bundle.
- </p><p>
- To correct these problems add the following lines to the <code class="literal">template.mf</code> file for
- the <code class="literal">greenpages.db</code> bundle:
-</p><pre class="programlisting">Import-Template: javax.sql;version="0",
- org.apache.commons.dbcp;version="[1.2.2.osgi, 1.2.2.osgi]"
-</pre><p>
- and, if further warnings are issued, in the <code class="literal">template.mf</code> file of other bundles (for example, <code class="literal">greenpages.jpa</code>).
- </p><p>
- When the <code class="literal">mvn</code> command returns successfully, go to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.create.pom"></a>7.3 Create POM</h2></div></div></div><p>
- All of the projects except the PAR project have Maven POM files for building. In this step
- an initial POM file for the PAR is created.
- </p><p>
- Using a text editor create a file called <code class="filename">$GREENPAGES_HOME/start/greenpages/pom.xml</code>.
- Open this file and add the following skeleton to it:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">project</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://maven.apache.org/POM/4.0.0"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"</span>>
-
- <<span class="hl-tag">parent</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.parent<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>2.3.0.RELEASE<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">relativePath</span>>../parent<<span class="hl-tag">/relativePath</span>>
- <<span class="hl-tag">/parent</span>>
-
- <<span class="hl-tag">modelVersion</span>>4.0.0<<span class="hl-tag">/modelVersion</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">name</span>>GreenPages PAR<<span class="hl-tag">/name</span>>
- <<span class="hl-tag">packaging</span>>par<<span class="hl-tag">/packaging</span>>
-
- <<span class="hl-tag">dependencies</span>>
- <<span class="hl-tag">/dependencies</span>>
-
- <<span class="hl-tag">build</span>>
- <<span class="hl-tag">plugins</span>>
- <<span class="hl-tag">/plugins</span>>
- <<span class="hl-tag">/build</span>>
-
-<<span class="hl-tag">/project</span>>
-</pre><p>
- ensuring that the version numbers are consistent
- (for example, <code class="literal">2.3.0.RELEASE</code> might be <code class="literal">2.3.0</code>
- depending on which version of <code class="literal">greenpages</code> being developed).
- </p><p>
- This skeleton defines a basic configuration with a parent POM. Notice that the <code class="literal">packaging</code>
- type is <code class="literal">par</code>. After this file is created execute the following command from the
- <code class="filename">$GREENPAGES_HOME/start/greenpages</code> directory.
- </p><pre class="programlisting">mvn clean package</pre><p>
- </p><p>
- This command returns an error indicating that Maven does not know how to build a PAR:
-</p><pre class="programlisting">[INFO] ------------------------------------------------------------------------
-[ERROR] BUILD ERROR
-[INFO] ------------------------------------------------------------------------
-[INFO] The plugin 'org.apache.maven.plugins:maven-par-plugin' does not exist
-[INFO] or no valid version could be found
-[INFO] ------------------------------------------------------------------------
-</pre><p>
- The next step will correct this.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.par.plugin"></a>7.4 Adding the <code class="literal">par</code> plugin</h2></div></div></div><p>
- Thorsten Maus contributed a Maven plugin to SpringSource (see <a class="xref" href="#further.resources.documentation" title="A.2 Documentation">Section A.2, “Documentation”</a>)
- that builds a PAR file from a list of dependencies. In this step the Maven <code class="literal">par</code> plugin is added
- to properly build a PAR artifact type.
- </p><p>
- In the <code class="literal"><build><plugins>…</plugins></build></code> section, add a plugin declaration for the
- <code class="literal">par</code> plugin.
-</p><pre class="programlisting"><<span class="hl-tag">plugin</span>>
- <<span class="hl-tag">groupId</span>>org.apache.maven.plugins<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>maven-par-plugin<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>1.0.0.RELEASE<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">applicationSymbolicName</span>>greenpages<<span class="hl-tag">/applicationSymbolicName</span>>
- <<span class="hl-tag">applicationDescription</span>>GreenPages<<span class="hl-tag">/applicationDescription</span>>
- <<span class="hl-tag">/configuration</span>>
-<<span class="hl-tag">/plugin</span>>
-</pre><p>
- </p><p>
- Declare the list of bundles to be packaged in the PAR as dependencies of the PAR project.
-</p><pre class="programlisting"><<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.app<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
-<<span class="hl-tag">/dependency</span>>
-<<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.jpa<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
-<<span class="hl-tag">/dependency</span>>
-<<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.db<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
-<<span class="hl-tag">/dependency</span>>
-<<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>com.springsource.dmserver<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>greenpages.web<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>${project.version}<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">type</span>>war<<span class="hl-tag">/type</span>>
-<<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- Now, run the following command.
-</p><pre class="programlisting">mvn clean package</pre><p>
- </p><p>
- This command will now complete successfully and build a PAR into <code class="filename">target/</code>:
-</p><pre class="programlisting">[INFO] Scanning for projects...
- [INFO] ------------------------------------------------------------------------
- [INFO] Building GreenPages PAR
- [INFO] task-segment: [clean, package]
- [INFO] ------------------------------------------------------------------------
- [INFO] [clean:clean {execution: default-clean}]
- [INFO] [resources:resources {execution: default-resources}]
- [INFO] [par:par {execution: default-par}]
- [INFO] Assembling Artifacts for PAR '…/start/greenpages/target/greenpages-2.3.0.RELEASE.par'
- [INFO] Added 'greenpages.app.jar'
- [INFO] Added 'greenpages.jpa.jar'
- [INFO] Added 'greenpages.db.jar'
- [INFO] Added 'greenpages.web.war'
- [INFO] [com.springsource.bundlor.:transform {execution: bundlor}]
- [INFO] Ignored project with non-bundle packaging: [par]
- [INFO] ------------------------------------------------------------------------
- [INFO] BUILD SUCCESSFUL
- [INFO] ------------------------------------------------------------------------</pre><p>
- Proceed to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.dependency.plugin"></a>7.5 Adding the <code class="literal">dependency</code> plugin</h2></div></div></div><p>
- Maven now successfully builds the PAR for the application, however the dependencies of the PAR
- are not apparent.
- In this step the Maven <code class="literal">dependency</code> plugin is added to
- collect the transitive dependency graph for the PAR.
- </p><p>
- In the <code class="literal"><build><plugins>…</plugins></build></code> section
- (after the <code class="literal">par</code> plugin
- declaration), add a plugin declaration for the <code class="literal">dependency</code> plugin:
-</p><pre class="programlisting"><<span class="hl-tag">plugin</span>>
- <<span class="hl-tag">groupId</span>>org.apache.maven.plugins<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>maven-dependency-plugin<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">executions</span>>
- <<span class="hl-tag">execution</span>>
- <<span class="hl-tag">id</span>>copy-dependencies<<span class="hl-tag">/id</span>>
- <<span class="hl-tag">phase</span>>package<<span class="hl-tag">/phase</span>>
- <<span class="hl-tag">goals</span>>
- <<span class="hl-tag">goal</span>>copy-dependencies<<span class="hl-tag">/goal</span>>
- <<span class="hl-tag">/goals</span>>
- <<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">outputDirectory</span>>${project.build.directory}/par-provided<<span class="hl-tag">/outputDirectory</span>>
- <<span class="hl-tag">overWriteIfNewer</span>>true<<span class="hl-tag">/overWriteIfNewer</span>>
- <<span class="hl-tag">excludeGroupIds</span>>com.springsource.dmserver,org.apache.log4j<<span class="hl-tag">/excludeGroupIds</span>>
- <<span class="hl-tag">/configuration</span>>
- <<span class="hl-tag">/execution</span>>
- <<span class="hl-tag">/executions</span>>
-<<span class="hl-tag">/plugin</span>>
-</pre><p>
- </p><p>
- A dependency on Freemarker needs to be added to the other dependencies.
- This is required to ensure the Web
- bundle has the correct set of dependencies as well as the other bundles.
- Normally they would simply be resolved
- transitively from the bundle projects but the ‘war’ project does not pass on its dependencies;
- it expects
- them to be contained in its ‘lib’ directory.
- For this reason its dependencies must be given explicitly.
-</p><pre class="programlisting"><<span class="hl-comment">!-- Required for the web bundle as dependencies are not propagated up from war build types --</span>>
-<<span class="hl-tag">dependency</span>>
- <<span class="hl-tag">groupId</span>>org.freemarker<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>com.springsource.freemarker<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">scope</span>>provided<<span class="hl-tag">/scope</span>>
-<<span class="hl-tag">/dependency</span>>
-</pre><p>
- </p><p>
- The next step is to stop the Web bundle including its dependencies in a lib directory as they will be provided
- by the runtime enviroment. Add the following build section to the <code class="literal">greenpages.web</code> POM file.
-</p><pre class="programlisting"><<span class="hl-tag">build</span>>
- <<span class="hl-tag">plugins</span>>
- <<span class="hl-tag">plugin</span>>
- <<span class="hl-tag">artifactId</span>>maven-war-plugin<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">version</span>>2.1-beta-1<<span class="hl-tag">/version</span>>
- <<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">packagingExcludes</span>>WEB-INF/lib/**<<span class="hl-tag">/packagingExcludes</span>>
- <<span class="hl-tag">/configuration</span>>
- <<span class="hl-tag">/plugin</span>>
- <<span class="hl-tag">/plugins</span>>
-<<span class="hl-tag">/build</span>></pre><p>
- </p><p>
- Run the following command.
-</p><pre class="programlisting">mvn clean package</pre><p>
- </p><p>
- When the command has completed, it will have copied all of the PAR’s dependencies into the
- <code class="filename">target/par-provided</code> directory.
- The output from Maven should include lines like these
-</p><pre class="programlisting">[INFO] [par:par]
-[INFO] Assembling Artifacts for PAR '/Users/chrisfrost/Repos/GIT/greenpages/solution/
- greenpages/target/greenpages-solution-2.3.0.RELEASE.par'
-[INFO] Added 'greenpages.app-solution.jar'
-[INFO] Added 'greenpages.jpa-solution.jar'
-[INFO] Added 'greenpages.db-solution.jar'
-[INFO] Added 'greenpages.web-solution.war'
-</pre><p>
- If the dependencies are produced, proceed to the next step.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="running.tests"></a>7.6 Automatically running the tests</h2></div></div></div><p>
- Although the application is built, and dependencies produced for separate deployment, the tests
- are not run as part of that build.
- </p><p>
- Add (or replace) the following plug-in entry in the <code class="literal">pom.xml</code> file in the <code class="literal">parent</code>
- directory under <code class="literal">start</code>:
-</p><pre class="programlisting"><<span class="hl-tag">plugin</span>>
- <<span class="hl-tag">groupId</span>>org.apache.maven.plugins<<span class="hl-tag">/groupId</span>>
- <<span class="hl-tag">artifactId</span>>maven-surefire-plugin<<span class="hl-tag">/artifactId</span>>
- <<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">includes</span>>
- <<span class="hl-tag">include</span>>**/*Tests.java<<span class="hl-tag">/include</span>>
- <<span class="hl-tag">/includes</span>>
- <<span class="hl-tag">excludes</span>>
- <<span class="hl-tag">exclude</span>>**/Abstract*.java<<span class="hl-tag">/exclude</span>>
- <<span class="hl-tag">/excludes</span>>
- <<span class="hl-tag">junitArtifactName</span>>org.junit:com.springsource.org.junit<<span class="hl-tag">/junitArtifactName</span>>
- <<span class="hl-tag">argLine</span>>-javaagent:${user.home}/.m2/repository/org/springframework/org.springframework.instrument/3.0.0.M3/org.springframework.instrument-3.0.0.M3.jar<<span class="hl-tag">/argLine</span>>
- <<span class="hl-tag">/configuration</span>>
-<<span class="hl-tag">/plugin</span>></pre><p>
- where the location of the user Maven repository is hard-coded.
- </p><p>
- Now run <code class="literal">mvn clean install</code> from the <code class="literal">start</code> directory.
- Observe that the tests we constructed before are now run.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="automated.build.deploy.application"></a>7.7 Deploying the application</h2></div></div></div><p>
- Maven can now build both the PAR application and the collection of dependencies required for the
- application. In this step the PAR and dependencies are copied to the Web Server and the PAR is started.
- </p><p>
- Change directory to <code class="literal">start/greenpages</code>.
- </p><p>
- Copy the JARs in the <code class="filename">target/par-provided</code> directory into the
- <code class="filename">$VWS_HOME/repository/usr/</code> directory.
- </p><p>
- Copy the PAR (<code class="literal">greenpages-2.3.0.RELEASE.par</code>) in the <code class="filename">target/</code> directory
- into the <code class="filename">$VWS_HOME/pickup</code> directory.
- </p><p>
- Start the Web Server and look for a message similar to:
-</p><pre class="programlisting"><DE0005I> Started par 'greenpages' version '2.3.0.RELEASE'.
-</pre><p>in the console output.
- </p><p>
- Once deployment of the GreenPages application has completed, navigate to
- <a class="ulink" href="http://localhost:8080/greenpages" target="_top">http://localhost:8080/greenpages</a>.
- </p><p>
- The GreenPages application has been built from the command line,
- with a complete dependency set generated for independent deployment.
- </p><p>
- The automated build and test procedure is to run <code class="literal">mvn clean install</code> from the
- base directory, generating the component bundles, and then to run <code class="literal">mvn clean package</code> from
- the <code class="literal">greenpages</code> directory to generate the PAR and produce all its dependencies.
- </p></div></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="further.resources"></a>Appendix A. Further Resources</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="further.resources.projects"></a>A.1 Projects</h2></div></div></div><div class="orderedlist"><ol type="a"><li><p>Virgo
- (<a class="ulink" href="http://www.eclipse.org/virgo" target="_top">http://www.eclipse.org/virgo</a>) — homepage for Virgo.</p></li><li><p>SpringSource.org
- (<a class="ulink" href="http://www.springsource.org" target="_top">http://www.springsource.org</a>) — homepage for Spring Framework.</p></li><li><p>OSGi
- (<a class="ulink" href="http://www.osgi.org" target="_top">http://www.osgi.org</a>) — homepage for OSGi.</p></li><li><p>H2 Database
- (<a class="ulink" href="http://www.h2database.com" target="_top">http://www.h2database.com</a> — homepage for the H2 database.</p></li><li><p>FreeMarker
- (<a class="ulink" href="http://freemarker.sourceforge.net" target="_top">http://freemarker.sourceforge.net</a>) — homepage for FreeMarker templating
- engine.</p></li><li><p>Commons DBCP
- (<a class="ulink" href="http://commons.apache.org/dbcp" target="_top">http://commons.apache.org/dbcp</a>) — homepage for Commons DBCP.</p></li><li><p>Eclipse IDE
- (<a class="ulink" href="http://www.eclipse.org/eclipse" target="_top">http://www.eclipse.org/eclipse</a>) — homepage for Eclipse IDE.</p></li><li><p>EclipseLink
- (<a class="ulink" href="http://www.eclipse.org/eclipselink" target="_top">http://www.eclipse.org/eclipselink</a>) — homepage for EclipseLink JPA.</p></li></ol></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="further.resources.documentation"></a>A.2 Documentation</h2></div></div></div><div class="orderedlist"><ol type="a"><li><p>Virgo Web Server Documentation
- (<a class="ulink" href="http://www.eclipse.org/virgo/documentation" target="_top">http://www.eclipse.org/virgo/documentation</a>) – cover page for all Virgo documentation.
- </p></li><li><p>Spring DM Reference Guide
- (<a class="ulink" href="http://static.springsource.org/osgi/docs/1.2.0/reference/html/" target="_top">http://static.springsource.org/osgi/docs/1.2.0/reference/html/</a>).
- </p></li><li><p>Spring Framework 3.0 documentation
- (<a class="ulink" href="http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/" target="_top">http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/</a>).
- </p></li><li><p>FreeMarker documentation
- (<a class="ulink" href="http://freemarker.sourceforge.net/docs" target="_top">http://freemarker.sourceforge.net/docs</a>).</p></li><li><p>Eclipse IDE documentation
- (<a class="ulink" href="http://www.eclipse.org/documentation" target="_top">http://www.eclipse.org/documentation</a>).</p></li><li><p>EclipseLink documentation wiki
- (<a class="ulink" href="http://wiki.eclipse.org/EclipseLink/UserManual" target="_top">http://wiki.eclipse.org/EclipseLink/UserManual</a>).</p></li><li><p>Maven PAR plugin
- (<a class="ulink" href="http://blog.springsource.com/2009/06/24/maven-par-plugin-100m1/" target="_top">http://blog.springsource.com/2009/06/24/maven-par-plugin-100m1/</a>).</p></li></ol></div></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch01.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch01.html
deleted file mode 100644
index b5ed6fe..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch01.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>1. Prerequisites</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="pr01.html" title="Preface"><link rel="next" href="ch01s02.html" title="1.2 References"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">1. Prerequisites</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="pr01.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch01s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="prerequisites"></a>1. Prerequisites</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="prerequisites-environment"></a>1.1 Runtime Environment</h2></div></div></div><p>
- The Virgo Web Server requires Java SE 6 or later to be installed. Java is available from
- <a class="ulink" href="http://java.sun.com/javase/downloads/index.jsp" target="_top">Sun</a> and elsewhere.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="pr01.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch01s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Preface </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 1.2 References</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch01s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch01s02.html
deleted file mode 100644
index dda799f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch01s02.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>1.2 References</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch01.html" title="1. Prerequisites"><link rel="prev" href="ch01.html" title="1. Prerequisites"><link rel="next" href="ch02.html" title="2. Introduction to the Virgo Web Server"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">1.2 References</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch01.html">Prev</a> </td><th width="60%" align="center">1. Prerequisites</th><td width="20%" align="right"> <a accesskey="n" href="ch02.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="prerequisites-references"></a>1.2 References</h2></div></div></div><p>
- To make effective use of the Virgo Web Server, you should also refer to the following guides:
- </p><div class="itemizedlist"><ul type="disc"><li><a class="ulink" href="../../user-guide/html/index.html" target="_top">Virgo User Guide</a></li><li><a class="ulink" href="http://static.springframework.org/osgi/docs/current/reference/html/" target="_top">Spring Dynamic Modules Reference Guide</a></li><li><a class="ulink" href="http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/index.html" target="_top">Spring Framework Reference Guide</a></li></ul></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch01.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch01.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">1. Prerequisites </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2. Introduction to the Virgo Web Server</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch02.html
deleted file mode 100644
index 1f01f89..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch02.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2. Introduction to the Virgo Web Server</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="ch01s02.html" title="1.2 References"><link rel="next" href="ch02s02.html" title="2.2 What is the Virgo Web Server?"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2. Introduction to the Virgo Web Server</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch01s02.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch02s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="introduction"></a>2. Introduction to the Virgo Web Server</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="introduction-preface"></a>2.1 Overview</h2></div></div></div><p>
- In this chapter, we provide an overview of the Virgo Web Server focusing
- on what it is, what benefits it provides to developers and administrators,
- and why you should use it.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch01s02.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch02s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">1.2 References </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2.2 What is the Virgo Web Server?</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch02s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch02s02.html
deleted file mode 100644
index 3e1789d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch02s02.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2.2 What is the Virgo Web Server?</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch02.html" title="2. Introduction to the Virgo Web Server"><link rel="prev" href="ch02.html" title="2. Introduction to the Virgo Web Server"><link rel="next" href="ch02s03.html" title="2.3 Why the Virgo Web Server?"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.2 What is the Virgo Web Server?</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02.html">Prev</a> </td><th width="60%" align="center">2. Introduction to the Virgo Web Server</th><td width="20%" align="right"> <a accesskey="n" href="ch02s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="introduction-what"></a>2.2 What is the Virgo Web Server?</h2></div></div></div><p>
- The Virgo Web Server, or VWS for short, is the runtime portion of the Virgo Runtime Environment.
- It is a lightweight, modular, OSGi-based runtime that provides a complete packaged solution for developing,
- deploying, and managing enterprise applications.
- By leveraging several best-of-breed technologies and improving upon
- them, the VWS offers a compelling solution to develop and deploy
- enterprise applications.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="introduction-constituents"></a>What makes up the Virgo Web Server?</h3></div></div></div><p>
- The Virgo Web Server is built on top of the following core technologies:
- </p><div class="itemizedlist"><ul type="disc"><li><a class="ulink" href="http://www.springframework.org/" target="_top">Spring Framework</a>, obviously!</li><li><a class="ulink" href="http://tomcat.apache.org/" target="_top">Tomcat</a> as the web container.</li><li><a class="ulink" href="http://www.osgi.org/Specifications/HomePage" target="_top">OSGi R4.2</a>.</li><li><a class="ulink" href="http://www.eclipse.org/equinox/" target="_top">Equinox</a> as the OSGi implementation.</li><li><a class="ulink" href="http://www.springframework.org/osgi/" target="_top">Spring Dynamic Modules for OSGi</a> for working with OSGi in a Spring application.</li><li><a class="ulink" href="http://www.springsource.com/products/sts" target="_top">SpringSource Tool Suite</a> for developing applications.</li></ul></div><p>
- Note, however, that the Virgo Web Server isn’t just a combination
- of these technologies. Rather, it integrates and extends these
- technologies to provide many features essential for developing,
- deploying, and managing today’s enterprise Java applications.
- </p></div><p>
- The following diagram presents a high-level overview of the VWS’s architecture.
- </p><p>
- <img src="images/introduction-architecture.png">
- </p><p>
- At the heart of the Virgo Web Server is the Virgo Kernel or VK.
- The VK is an OSGi-based kernel that takes full advantage of the modularity
- and versioning of the OSGi platform. The VK builds on Equinox and extends its capabilities for
- provisioning and library management, as well as providing core functionality for the VWS.
- </p><p>
- To maintain a minimal runtime footprint, OSGi bundles are installed on demand by the
- VK provisioning subsystem. This allows for an application to be installed into a running
- VWS and for its dependencies to be satisfied from an external repository. Not only
- does this remove the need to manually install all your application dependencies, which
- would be tedious, but it also keeps memory usage to a minimum.
- </p><p>
- As shown in the figure, VK runs on top of Equinox within a standard Java
- Virtual Machine. Above the VK is a layer of subsystems which contribute functionality
- to the VWS. Subsystems typically provide additional services to the basic OSGi container
- such as serviceability, management, and specific artifact deployment such as web application.
- </p><p>
- Version 2.1.1.RELEASE of the Virgo Web Server supports <span class="emphasis"><em>bundle</em></span>,
- <span class="emphasis"><em>plan</em></span>, <span class="emphasis"><em>PAR</em></span>, <span class="emphasis"><em>configuration</em></span>,
- <span class="emphasis"><em>web</em></span>, and <span class="emphasis"><em>WAR</em></span> artifacts, which enable
- you to build sophisticated web applications. This includes support for
- standard Java EE WARs, "shared library" WARs, and "shared services" WARs, each of
- which will be covered in greater detail in <a class="xref" href="ch03.html" title="3. Deployment Architecture">Chapter 3, <i>Deployment Architecture</i></a>.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2. Introduction to the Virgo Web Server </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2.3 Why the Virgo Web Server?</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch02s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch02s03.html
deleted file mode 100644
index a775e9a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch02s03.html
+++ /dev/null
@@ -1,94 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2.3 Why the Virgo Web Server?</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch02.html" title="2. Introduction to the Virgo Web Server"><link rel="prev" href="ch02s02.html" title="2.2 What is the Virgo Web Server?"><link rel="next" href="ch03.html" title="3. Deployment Architecture"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.3 Why the Virgo Web Server?</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s02.html">Prev</a> </td><th width="60%" align="center">2. Introduction to the Virgo Web Server</th><td width="20%" align="right"> <a accesskey="n" href="ch03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="introduction-why"></a>2.3 Why the Virgo Web Server?</h2></div></div></div><p>
- You could deploy a web application in a stand-alone servlet engine or application server.
- Or you could even deploy directly in an OSGi container such as Equinox. However,
- deploying in the Virgo Web Server offers a number of key benefits that make it both more
- appealing and more suitable for enterprise application development.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="introduction-unified-deployment"></a>Deployment options and migration paths</h3></div></div></div><p>
- While many applications deployed in the Virgo Web Server will take advantage
- of OSGi capabilities, not all applications need such sophistication.
- For example, development teams may initially choose to continue packaging
- existing web applications as standard WAR files and then gradually migrate
- toward a fully OSGi-based packaging and deployment model. The Virgo Web Server
- makes such migrations easy for developers by supporting multiple packaging
- and deployment formats. These formats and migration strategies are discussed
- in greater detail in <a class="xref" href="ch05.html" title="5. Migrating to OSGi">Chapter 5, <i>Migrating to OSGi</i></a> and
- <a class="xref" href="ch06.html" title="6. Case study: Migrating the Form Tags sample application">Chapter 6, <i>Case study: Migrating the Form Tags sample application</i></a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="introduction-simplified-deployment"></a>Simplified development and deployment of OSGi-based applications</h3></div></div></div><p>
- Prior to the release of the Virgo Web Server, developing and deploying OSGi
- applications involved inherent complexity such as:
- </p><div class="itemizedlist"><ul type="disc"><li><span class="emphasis"><em>Obtaining OSGi bundles for popular Java libraries:</em></span>
- For optimal benefits, every technology you use in an OSGi application must
- be packaged as OSGi bundles. Currently, this involves manually converting
- JAR files into bundles and making sure that any libraries needed by those
- bundles are also available as OSGi bundles. The SpringSource Enterprise Bundle Repository is a good source of
- popular pre-bundled libraries.
- </li><li><span class="emphasis"><em>Package management complexity:</em></span>
- OSGi bundles use other bundles through <code class="code">Import-Package</code> manifest headers.
- Many applications use a set of common technologies (e.g., an ORM solution,
- a web framework, etc.). Combining these two characteristics leads to duplicated
- configuration in the form of repeated and verbose <code class="code">Import-Package</code> statements.
- </li><li><span class="emphasis"><em>Lack of application-level isolation:</em></span>
- In OSGi everything is a bundle, and all bundles share the same OSGi Service Registry.
- To highlight how conflicts can arise between applications and their services in this
- shared service registry, consider the following scenarios.
- <div class="itemizedlist"><ul type="circle"><li>
- Application <code class="code">A</code> is comprised of bundles <code class="code">B</code> and <code class="code">C</code>.
- In a standard OSGi environment, if you attempt to install two instances of the same
- version of application <code class="code">A</code> (i.e., two sets of bundles <code class="code">B</code> and
- <code class="code">C</code>), a clash will occur, because you cannot deploy multiple bundles with
- the same <code class="code">Bundle-SymbolicName</code> and <code class="code">Bundle-Version</code> combination.
- </li><li>
- Application <code class="code">A1</code> is comprised of bundles <code class="code">B1</code> and <code class="code">C1</code>.
- Similarly, application <code class="code">A2</code> is comprised of bundles <code class="code">B2</code> and <code class="code">C2</code>.
- Each bundle has a unique combination of <code class="code">Bundle-SymbolicName</code> and <code class="code">Bundle-Version</code>.
- Bundles <code class="code">B1</code> and <code class="code">B2</code> both export service <code class="code">S</code> which
- is imported by both <code class="code">C1</code> and <code class="code">C2</code>. In contrast to the previous
- example, there is no conflict resulting from duplicate
- <code class="code">Bundle-SymbolicName</code>/<code class="code">Bundle-Version</code> combinations; however,
- there is a clash for the exported service <code class="code">S</code>.
- Which service <code class="code">S</code> will bundles <code class="code">C1</code> and <code class="code">C2</code> end up
- using once they are installed?
- Assuming bundles <code class="code">B1</code> and <code class="code">C1</code> are intended to work together,
- you would not want bundle <code class="code">C1</code> to get a reference to service <code class="code">S</code>
- from bundle <code class="code">B2</code>, because it is installed in a different logical application.
- On the contrary, you typically want bundle <code class="code">C1</code> to get a reference to
- service <code class="code">S</code> exported by bundle <code class="code">B1</code>, but in a standard OSGi environment
- this may not be the case.
- </li></ul></div></li></ul></div><p>
- Furthermore, since standard OSGi does not define a notion of an application as a set of bundles,
- you cannot deploy or undeploy an application and its constituent bundles as a single unit.
- </p><p>
- The Virgo Web Server introduces a number of features to solve these issues:
- </p><div class="itemizedlist"><ul type="disc"><li>
- A full set of OSGi bundles for many popular Java libraries to get you
- started quickly with creating OSGi applications.
- </li><li>
- An OSGi library concept that obviates the need to
- duplicate verbose <code class="code">Import-Package</code> statements.
- </li><li>
- The PAR packaging format which offers
- application-level isolation and deployment.
- </li><li>
- The concept of a plan, which is an XML file that lists a collection of bundles that Virgo Web Server should load together as a single application. Conceptually, plans are very like PARs, except that a plan describes the contents of the application rather than a PAR that actually contains them.
- </li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="introduction-diagnostics"></a>Enhanced diagnostics during deployment and in production</h3></div></div></div><p>
- Identifying why an application won’t deploy or which particular library
- dependencies are unsatisfied is the cause of many headaches!
- Similarly, production time errors that don’t identify the root cause are
- all too familiar to Java developers. The VWS was designed from the
- ground up to enable tracing and First Failure Data Capture (FFDC) that
- empower developers with precise information at the point of failure to
- fix the problem quickly.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2.2 What is the Virgo Web Server? </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3. Deployment Architecture</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch03.html
deleted file mode 100644
index 2871a2d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch03.html
+++ /dev/null
@@ -1,195 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3. Deployment Architecture</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="ch02s03.html" title="2.3 Why the Virgo Web Server?"><link rel="next" href="ch03s02.html" title="3.2 Dependency Types"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3. Deployment Architecture</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s03.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch03s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="architecture"></a>3. Deployment Architecture</h2></div></div></div><p>
- The Virgo Web Server
- offers several choices when it comes to deploying applications. Each choice offers certain advantages, and it is
- important to understand those in order to make the right choice for your application. In this chapter, we take a
- closer look at the choices offered, compare them, and provide guidelines in choosing the right one based on your
- specific needs.
- </p><p>
- The VWS supports standard self-contained WAR files thus allowing you to use the Virgo Web Server
- as an enhanced web server. The VWS also supports the
- <span class="emphasis"><em>Shared Libraries</em></span>
- WAR format which allows for slimmer WAR files that depend on OSGi bundles instead of including JAR files inside the
- WAR. The
- <span class="emphasis"><em>Shared Services</em></span>
- WAR format allows developers to further reduce the complexity of standard WARs by deploying services and
- infrastructure bundles alongside the WAR. A shared services WAR will then consume the services published by those
- bundles. To complete the picture, the VWS supports the new OSGi-standard
- <span class="emphasis"><em>Web Bundle</em></span>
- deployment format for web applications that builds on the benefits provided by a shared services WAR. In addition
- to this VWS provides additional conveniences for developing and deploying Spring MVC-based web
- applications.
- </p><p>For applications consisting of multiple bundles and web applications, plans and the PAR format are the
- primary deployment models that take advantage of OSGi capabilities. We will explore all of these formats and their
- suitability later in this guide.</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="architecture-deployment-formats"></a>3.1 Supported Deployment Formats</h2></div></div></div><p>
- The Virgo Web Server
- supports applications packaged in the following formats:
- </p><div class="orderedlist"><ol type="1"><li><p><a class="link" href="ch03.html#architecture-raw-osgi-bundles" title="Raw OSGi Bundles">Raw OSGi Bundles</a></p></li><li><p><a class="link" href="ch03.html#architecture-wars" title="WAR Deployment Formats">Java EE WAR</a></p></li><li><p><a class="link" href="ch03.html#architecture-war-gemini" title="WARs and the Gemini Web Container">Web Bundles</a></p></li><li><p><a class="link" href="ch03.html#architecture-pars" title="PAR">PAR</a></p></li><li><p><a class="link" href="ch03.html#architecture-plans" title="Plans">Plans</a></p></li><li><p><a class="link" href="ch03.html#architecture-configurations" title="Configurations">Configurations</a></p></li></ol></div><p>
- When you deploy an application to the VWS, each deployment artifact (e.g., a single bundle, WAR, PAR, or
- plan) passes through a deployment pipeline. This deployment pipeline is responsible for processing applications of certain
- types (i.e., application type). The 2.1.1.RELEASE release of the VWS natively supports deployers analogous
- to each of the aforementioned packaging options.
- </p><p>
- Let’s take a closer look now at each of the supported deployment and packaging options to explore which one is best
- suited for your applications.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-raw-osgi-bundles"></a>Raw OSGi Bundles</h3></div></div></div><p>
- At its core, the Virgo Web Server
- is an OSGi container. Thus any OSGi-compliant bundle can be deployed directly on the VWS unmodified.
- You’ll typically deploy an application as a single bundle or a set of stand-alone bundles if you’d like to publish or
- consume services globally within the container via the OSGi Service Registry.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-wars"></a>WAR Deployment Formats</h3></div></div></div><p>
- For Web Application Archives (WAR), the Virgo Web Server
- provides support for the following three formats.
- </p><div class="orderedlist"><ol type="1"><li><p><a class="link" href="ch03.html#architecture-standard-war" title="Standard WAR">Standard WAR</a></p></li><li><p><a class="link" href="ch03.html#architecture-shared-libraries-war" title="Shared Libraries WAR">Shared Libraries WAR</a></p></li><li><p><a class="link" href="ch03.html#architecture-shared-services-war" title="Shared Services WAR">Shared Services WAR</a></p></li></ol></div><p> Each of these formats plays a distinct role in the incremental migration path from a standard Java EE WAR to
- an OSGi-ified web application.</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="architecture-standard-war"></a>Standard WAR</h4></div></div></div><p>
- Standard WAR files are supported directly in the VWS. At deployment time, the WAR file is
- transformed into an OSGi bundle and installed into Tomcat. All the standard WAR contracts are honored, and your
- existing WAR files should just drop in and deploy without change. Support for standard, unmodified WAR files
- allows you to try out the Virgo Web Server on your existing web applications and then gradually migrate toward the
- <span class="emphasis"><em>Shared Libraries WAR</em></span>
- and
- <span class="emphasis"><em>Shared Services WAR</em></span>
- formats.
- </p><p> In addition to the standard support for WARs that you would expect from Tomcat, the VWS also
- enables the following features:</p><div class="orderedlist"><ol type="1"><li><p>Spring-driven load-time weaving (see Section 6.8.4, “Load-time weaving with AspectJ in the
- Spring Framework").</p></li><li><p>Diagnostic information such as FFDC (first failure data capture)</p></li></ol></div><p> The main benefit of this application style is familiarity -- everyone knows how to create a WAR file! You can
- take advantage of the VWS’s added feature set without modifying the application. The application
- can also be deployed on other Servlet containers or Java EE application servers.</p><p>
- You may choose this application style if the application is fairly simple and small. You may also prefer this style
- even for large and complex applications as a starting point and migrate to the other styles over time as discussed
- in
- <a class="xref" href="ch05.html" title="5. Migrating to OSGi">Chapter 5, <i>Migrating to OSGi</i></a>
- .
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="architecture-shared-libraries-war"></a>Shared Libraries WAR</h4></div></div></div><p>
- If you have experience with developing and packaging web applications using the standard WAR format, you’re
- certainly familiar with the pains of library bloat. So, unless you’re installing shared libraries in a common
- library folder for your Servlet container, you have to pack all JARs required by your web application in
- <code class="literal">/WEB-INF/lib</code>.
- Prior to the release of the Virgo Web Server, such library bloat has essentially been the norm for web applications, but
- now there is a better solution! The Shared Libraries WAR format reduces your application’s deployment footprint and
- eradicates library bloat by allowing you to declare dependencies on libraries via standard OSGi manifest headers
- such as
- <code class="literal">Import-Package</code>
- and
- <code class="literal">Require-Bundle</code>
- . The VWS provides additional support for simplifying dependency management via the
- <code class="literal">Import-Library</code>
- and
- <code class="literal">Import-Bundle</code>
- manifest headers which are essentially macros that get expanded into OSGi-compliant
- <code class="literal">Import-Package</code>
- statements.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>
- For detailed information on which libraries are already available, check out the
- <a class="ulink" href="http://www.springsource.com/repository" target="_top">SpringSource Enterprise Bundle Repository
- </a>
- .
- </p></td></tr></table></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="architecture-shared-services-war"></a>Shared Services WAR</h4></div></div></div><p>
- Once you’ve begun taking advantage of declarative dependency management with a Shared Libraries WAR, you’ll likely
- find yourself wanting to take the next step toward reaping further benefits of an OSGi container: sharing services
- between your OSGi-compliant bundles and your web applications. By building on the power and simplicity of
- Spring-DM, the
- <span class="emphasis"><em>Shared Services WAR</em></span>
- format puts the OSGi Service Registry at your finger tips. As a best practice you’ll typically publish services
- from your domain, service, and infrastructure bundles via
- <code class="literal"><osgi:service ... /></code>
- and then consume them in your web application’s ApplicationContext via
- <code class="literal"><osgi:reference ... /></code>.
- Doing so promotes programming to interfaces and allows you to completely decouple your web-specific deployment
- artifacts from your domain model, service layer, etc., and that’s certainly a step in the right direction. Of the
- three supported WAR deployment formats, the Shared Services WAR is by far the most attractive in terms of
- modularity and reduced overall footprint of your web applications.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="architecture-war-gemini"></a>WARs and the Gemini Web Container</h4></div></div></div><p>
- Virgo Web Server fully supports the OSGi Web Applications standard. Using the reference implementation from Gemini Web that
- was developed by SpringSource from an offshoot of the original VWS codebase. This RI is now fully
- integrated in VWS as the basis of the support for web application deployment.
- </p><p>
- The Web Container specification introduces the concept of a <span class="emphasis"><em>web application bundle</em></span>, which is a WAR
- that is also a bundle. The specification defines how WAR files are transformed into bundles automatically as needed.
- </p><p>
- You can find an introduction to the Web Container in blog entries written by the VWS team
- <a class="ulink" href="http://blog.springsource.com/2009/05/27/introduction-to-the-osgi-web-container/" target="_top">here</a>
- and <a class="ulink" href="http://blog.springsource.com/2009/06/01/what-the-osgi-web-container-means-for-dm-server/" target="_top">here</a>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="architecture-war-gemini-extensions"></a>Extensions to the Web Container</h5></div></div></div><p>
- Virgo Web Server provides a variety of extensions to the Web Container that allow you to construct sophisticated applications.
- The table below, summarizes the extensions that are available or in development.
- </p><div class="table"><a name="d0e525"></a><p class="title"><b>Table 3.1. </b></p><div class="table-contents"><table style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Feature</th><th style="border-bottom: 1.0pt solid ; ">Description</th><th style="border-bottom: 1.0pt solid ; ">Notes</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Auto-import of system packages</td><td style="border-bottom: 1.0pt solid ; ">All packages exported by the system bundle are automatically imported by web bundles</td><td style="border-bottom: 1.0pt solid ; ">This feature is being discussed for inclusion in the specification</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Instrumentable ClassLoaders</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">All web bundle ClassLoaders are instrumentable by Spring’s load-time weaving infrastructure.</td><td style="border-bottom: 1.0pt solid ; "> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Support for exploded bundles/WARs</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Bundles/WARs in directory form can be deployed as web bundles</td><td style="border-bottom: 1.0pt solid ; "> </td></tr><tr><td style="border-right: 1.0pt solid ; ">Support for scanning TLDs in dependencies</td><td style="border-right: 1.0pt solid ; ">As per the Web Container specification, all TLDs located inside a web bundle are located using the rules
- defined in the JSP 2.1 specification. In VWS, the dependencies of a web bundle are also scanned
- for TLDs following the rules outlined in JSP 2.1</td><td class="auto-generated" style=""> </td></tr></tbody></table></div></div><br class="table-break"></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-web-bundles"></a>Web Modules</h3></div></div></div><p>
- Web Modules have been removed in favour of war files and web bundles following the OSGi Web Applications specification.
- We believe our users will benefit more from a standard model than one that is VWS-specific.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-pars"></a>PAR</h3></div></div></div><p>
- A PAR is a standard JAR which contains all of the modules of your application (e.g., service,
- domain, and infrastructure bundles as well as a WAR or web module for web applications) in a single deployment unit.
- This allows you to deploy, refresh, and undeploy your entire application as a single entity. If you are familiar with Java
- EE, it is worth noting that a PAR can be considered a replacement for an EAR (Enterprise Archive) within the context
- of an OSGi container. As an added bonus, modules within a PAR can be refreshed independently and on-the-fly, for
- example via the Virgo Web Server Tool Suite (see <a class="xref" href="ch07.html" title="7. Tooling">Chapter 7, <i>Tooling</i></a>).
- </p><p>
- Many of the benefits of the PAR format are due to the underlying OSGi infrastructure, including:
- </p><div class="itemizedlist"><ul type="disc"><li><p> Fundamentally modularized applications: instead of relying on fuzzy boundaries between logical modules
- in a monolithic application, this style promotes physically separated modules in the form of OSGi bundles. Then
- each module may be developed separately, promoting parallel development and loose coupling.</p></li><li><p> Robust versioning of various modules: the versioning capability offered by OSGi is much more
- comprehensive than any alternatives. Each module can specify a version range for each of its dependencies. Bundles
- are isolated from each other in such a way that multiple versions of a bundle may be used simultaneously in an
- application.</p></li><li><p> Improved serviceability: each bundle may be deployed or undeployed in a running application. This allows
- modifying the existing application to fix bugs, improve performance, and even to add new features without having
- to restart the application.</p></li></ul></div><p>
- </p><p> Furthermore, PARs scope the modules of your application within the VWS. Scoping provides both a
- physical and logical application boundary, effectively shielding the internals of your application from other PARs deployed
- within the VWS. This means your application doesn’t have to worry about clashing with other running
- applications (e.g., in the OSGi Service Registry). You get support for load-time weaving, classpath scanning, context class
- loading, etc., and the VWS does the heavy lifting for you to make all this work seamlessly in an OSGi
- environment. If you want to take full advantage of all that the Virgo Web Server and OSGi have to offer, packaging and deploying
- your applications as a PAR is a good choice, although plans are an even better one, as described in the next section.</p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip: OSGi != multiple JARs"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">OSGi != multiple JARs</th></tr><tr><td align="left" valign="top"><p>
- Note that while physically separated modules can, in theory, be implemented simply using multiple
- JARs, complex versioning requirements often make this impractical. For example,
- consider the situation depicted in the diagram below.
-
- </p><div class="itemizedlist"><ul type="disc"><li><p>Bundle A depends on version 1.0.0 of bundle B and version 2.0.0 of bundle C.</p></li><li><p>Bundle B depends on version 1.0.0 of bundle C.</p></li></ul></div><p>
-
- Suppose that versions 1.0.0 and 2.0.0 of bundle C are neither backward nor forward compatible. Traditional monolithic
- applications cannot handle such situations: either bundle A or bundle B would need reworking which undermines
- truly independent development. OSGi’s versioning scheme enables this scenario to be implemented in a robust manner.
- If it is desirable to rework the application to share a single version of C, then this can be planned in and is not forced.
- </p><div class="mediaobject"><img src="images/architecture-bundle-versioning.png"></div></td></tr></table></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-plans"></a>Plans</h3></div></div></div><p>
- A plan is similar to a PAR in that it encapsulates all of the artifacts of your application in a single deployment unit.
- The main difference, however, is that a plan is simply an XML file that lists the artifacts of your application;
- a PAR, by contrast, is an actual JAR file that physically contains the artifacts.
- Just like a PAR, you deploy, refresh, and undeploy a plan as a single entity.
- We highly recommends the use of plans for creating applications.
- </p><p>
- When you create a plan, you can specify that the included bundles and services are in a scope that isolates them
- from the rest of Virgo Web Server
- and its deployments.
- This scoping ensures that the bundles wire to each other and see each other’s services in preference to services
- from outside the scope.
- Scoping also prevents application code from leaking into the global scope or scope of another application.
- In addition, a plan can link the lifecycle of a group of bundles together atomically, which ensures that install,
- start, stop, and uninstall events
- on a single artifact in the plan are escalated to all artifacts in the plan.
- You can, however, disable both of these features by simply updating an attribute in the plan.
- </p><p>
- The general benefits of using plans are similar to those of using PARs; see <a class="link" href="ch03.html#architecture-pars" title="PAR">PAR</a> for details.
- Plans offer added benefits, however, such as the ability to control the deployment order of your application:
- the order in which you list artifacts in the plan’s XML file is the order in which VWS deploys them.
- Additionally, because plans specify the artifacts that make up an application by reference, it is easier to share content
- between plans as well as update individual parts of a plan without having to physically repackage (re-JAR) it.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-configurations"></a>Configurations</h3></div></div></div><p>
- A Configuration is simply a Java properties file. When deployed it will be recognised by the deployer and installed in to
- <span class="emphasis"><em>Configuration Admin</em></span> for later use by your applications. The name that it will be installed under or PID
- (Persistent Identity) will be the name of the properties file less any extension. How to consume configuration data
- is discussed <a class="link" href="ch04s04.html" title="4.4 Creating and Using Configuration Artifacts">later</a>.
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s03.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch03s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2.3 Why the Virgo Web Server? </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3.2 Dependency Types</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch03s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch03s02.html
deleted file mode 100644
index dc0026a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch03s02.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3.2 Dependency Types</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch03.html" title="3. Deployment Architecture"><link rel="prev" href="ch03.html" title="3. Deployment Architecture"><link rel="next" href="ch03s03.html" title="3.3 A guide to forming bundles"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.2 Dependency Types</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03.html">Prev</a> </td><th width="60%" align="center">3. Deployment Architecture</th><td width="20%" align="right"> <a accesskey="n" href="ch03s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="architecture-dependency-types"></a>3.2 Dependency Types</h2></div></div></div><p>
- In an OSGi environment, there are two kinds of dependencies between various bundles: <span class="emphasis"><em>type</em></span>
- dependency and <span class="emphasis"><em>service</em></span> dependency.
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <span class="bold"><strong>Type dependency</strong></span>: A bundle may depend on a type exported by another
- bundle thus creating a type dependency. Type dependencies are managed through <code class="literal">Import-Package</code>
- and <code class="literal">Export-Package</code> directives in the OSGi manifest. This kind of dependency is similar
- to a JAR file using types in other JAR files from the classpath. However, as we’ve seen earlier, there are
- significant differences.
- </p></li><li><p>
- <span class="bold"><strong>Service dependency</strong></span>: A bundle may also publish services (preferably using
- Spring-DM), and other bundles may consume those services. If two bundles depend on the same service, both
- will be communicating effectively to the same object. More specifically, any state for that service will
- be shared between all the clients of that service. This kind of arrangement is similar to the commonly
- seen client-server interaction through mechanisms such as RMI or Web Services.
- </p></li></ul></div><p>
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3. Deployment Architecture </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3.3 A guide to forming bundles</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch03s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch03s03.html
deleted file mode 100644
index 4f9d3a7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch03s03.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3.3 A guide to forming bundles</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch03.html" title="3. Deployment Architecture"><link rel="prev" href="ch03s02.html" title="3.2 Dependency Types"><link rel="next" href="ch04.html" title="4. Developing Applications"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.3 A guide to forming bundles</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s02.html">Prev</a> </td><th width="60%" align="center">3. Deployment Architecture</th><td width="20%" align="right"> <a accesskey="n" href="ch04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="architecture-forming-bundles"></a>3.3 A guide to forming bundles</h2></div></div></div><p>
- So what makes a good application suitable for deployment on the Virgo Web Server? Since OSGi is at the heart of the
- VWS, modular applications consisting of bundles, which each represent distinct functionality and
- well-defined boundaries, can take maximum advantage of the OSGi container’s capabilities. The core ideas behind forming
- bundles require following good software engineering practices: separation of concerns, minimum coupling, and communication
- through clear interfaces. In this section, we look at a few approaches that you may use to create modular applications
- for Virgo Web Server deployment. Please consider the following discussion as guidelines and not as rules.
- </p><p> Bundles can be formed along horizontal slices of layering and vertical slices of function. The objective is to
- enable independent development of each bundle and minimize the skills required to develop each bundle.</p><p>
- For example, an application could have the following bundles: <span class="emphasis"><em>infrastructure</em></span>,
- <span class="emphasis"><em>domain</em></span>, <span class="emphasis"><em>repository</em></span>, <span class="emphasis"><em>service</em></span>, and
- <span class="emphasis"><em>web</em></span> as shown in the following diagram.</p><p>
- </p><div class="mediaobject"><img src="images/bundle-dependencies-layers.png"></div><p>
-
- Each bundle consists of types appropriate for that layer and exports packages and services to be used by other
- layers. Let’s examine each bundle in more detail:
- </p><div class="table"><a name="architecture-forming-bundles-across-layers-table"></a><p class="title"><b>Table 3.2. Bundles across layers</b></p><div class="table-contents"><table summary="Bundles across layers" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col><col><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Bundles</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Imported Packages</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Exported Packages</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Consumed Services</th><th style="border-bottom: 1.0pt solid ; ">Published Services</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Infrastructure</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Third-party libraries</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Infrastructure interfaces</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">None</td><td style="border-bottom: 1.0pt solid ; ">None</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Domain</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Depends: for example, if JPA is used to annotate persistent types, then JPA packages.</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Public domain types</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">None</td><td style="border-bottom: 1.0pt solid ; ">None</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Web</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Domain, Service</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">None</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Service beans</td><td style="border-bottom: 1.0pt solid ; ">None</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Service</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Domain, Infrastructure, Repository</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Service interfaces</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Repository beans</td><td style="border-bottom: 1.0pt solid ; ">Service beans</td></tr><tr><td style="border-right: 1.0pt solid ; ">Repository</td><td style="border-right: 1.0pt solid ; ">Domain, Third-party libraries, ORM bundles, etc.</td><td style="border-right: 1.0pt solid ; ">Repository interfaces</td><td style="border-right: 1.0pt solid ; ">DataSources, ORM session/entity managers, etc.</td><td style="">Repository beans</td></tr></tbody></table></div></div><p><br class="table-break">
- </p><p>
- Within each layer, you may create bundles for each subsystem representing a vertical slice of business functionality.
- For example, as shown in the following figure, the service layer is divided into two bundles each representing
- separate business functionalities.
- </p><div class="mediaobject"><img src="images/bundle-dependencies-verticals.png"></div><p>
- </p><p> You can similarly separate the repositories, domain classes, and web controllers based on the business role
- they play.</p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3.2 Dependency Types </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4. Developing Applications</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04.html
deleted file mode 100644
index 61bb645..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04.html
+++ /dev/null
@@ -1,85 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4. Developing Applications</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="ch03s03.html" title="3.3 A guide to forming bundles"><link rel="next" href="ch04s02.html" title="4.2 Creating PARs and WARs"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4. Developing Applications</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s03.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch04s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="developing-applications"></a>4. Developing Applications</h2></div></div></div><p>
- Applications that take advantage of the OSGi capabilities of the Virgo Web Server
- are typically comprised of multiple bundles. Each bundle may have dependencies on
- other bundles. Furthermore, each bundle exposes only certain packages and
- services. In this chapter, we look at how to create bundles, import and export
- appropriate functionality, and create artifacts to deploy web applications on the Virgo Web Server.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-bundle"></a>4.1 Anatomy of a bundle</h2></div></div></div><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>
- This is an abbreviated introduction to OSGi bundles. Please refer to the
- <a class="ulink" href="http://static.springframework.org/osgi/docs/current/reference/html/" target="_top">
- Spring Dynamic Modules for OSGi documentation</a> for full details.
- </p></td></tr></table></div><p>
- An OSGi bundle is simply a jar file with metadata that describe
- additional characteristics such as version and imported and exported packages.
- </p><p>
- A bundle exports types and publishes services to be used by other bundles:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <span class="bold"><strong>Types</strong></span>:
- via the OSGi <code class="code">Export-Package</code> directive,
- </p></li><li><p>
- <span class="bold"><strong>Services</strong></span>:
- via Spring-DM’s <code class="code"><service ... /></code> XML namespace element.
- </p></li></ul></div><p>
- A bundle may import types and services exported by other bundles:
- </p><div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>Types</strong></span>:
- via the OSGi <code class="code">Import-Package</code> directive,</p></li><li><p><span class="bold"><strong>Services</strong></span>:
- via Spring-DM’s <code class="code"><reference ... /></code> XML namespace element.</p></li></ul></div><p>
- Let’s see an example from the PetClinic sample application. The following listing shows the
- <code class="filename">MANIFEST.MF</code> file for the <code class="code">org.springframework.petclinic.infrastructure.hsqldb</code> bundle.
- </p><pre class="programlisting">
-Manifest-Version: 1.0
-<span class="bold"><strong>Bundle-ManifestVersion</strong></span>: 2
-<span class="bold"><strong>Bundle-Name</strong></span>: PetClinic HSQL Database Infrastructure
-<span class="bold"><strong>Bundle-SymbolicName</strong></span>: org.springframework.petclinic.infrastructure.hsqldb
-<span class="bold"><strong>Bundle-Version</strong></span>: 1.0
-<span class="bold"><strong>Import-Library</strong></span>: org.springframework.spring;version="[2.5,2.6]"
-<span class="bold"><strong>Import-Bundle</strong></span>: com.springsource.org.apache.commons.dbcp;version="[1.2.2.osgi,1.2.2.osgi]",
- com.springsource.org.hsqldb;version="[1.8.0.9,1.8.0.9]"
-<span class="bold"><strong>Import-Package</strong></span>: javax.sql
-<span class="bold"><strong>Export-Package</strong></span>: org.springframework.petclinic.infrastructure
- </pre><p>
- The <code class="code">org.springframework.petclinic.infrastructure.hsqldb</code> bundle expresses its dependencies on
- the <code class="code">javax.sql</code> package, the Commons DBCP and HSQLDB bundles, and the Spring library (we will examine
- the details of the library artifact in <a class="xref" href="ch04s07.html#developing-applications-defining-libraries" title="Defining libraries">the section called “Defining libraries”</a>). The Commons DBCP
- bundle is imported at a version of exactly 1.2.2.osgi and the HSQLDB bundle is imported at a version of exactly
- 1.8.0.9. The Spring library is imported at a version between 2.5 inclusive and 2.6 exclusive.
- </p><p>
- Note that you do not specify the bundle that will provide the imported packages.
- The Virgo Web Server will examine the available bundles and satisfy the required dependencies.
- </p><p>
- The following <code class="filename">osgi-context.xml</code> file from the PetClinic sample’s
- <code class="code">org.springframework.petclinic.repository.jdbc</code> bundle declares a service published by the bundle and
- references a service published by another bundle.
- </p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">beans:beans</span> <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xmlns:beans</span>=<span class="hl-value">"http://www.springframework.org/schema/beans"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi
- http://www.springframework.org/schema/osgi/spring-osgi.xsd
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd"</span>>
-
- <<span class="hl-tag">service</span> <span class="hl-attribute">id</span>=<span class="hl-value">"osgiClinic"</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"clinic"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"org.springframework.petclinic.repository.Clinic"</span> />
- <<span class="hl-tag">reference</span> <span class="hl-attribute">id</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"javax.sql.DataSource"</span>/>
-
-<<span class="hl-tag">/beans:beans</span>></pre><p>
- The <code class="code">service</code> element publishes the <code class="code">clinic</code> bean
- (a regular Spring bean declared in the <code class="filename">module-context.xml</code> file) and specifies
- <code class="code">org.springframework.petclinic.repository.Clinic</code> as the type
- of the published service.
- </p><p>The <code class="code">reference</code> elements define a <code class="code">dataSource</code> bean that references
- a service published by another bundle with a an interface type of <code class="code">javax.sql.DataSource</code>.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s03.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch04s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3.3 A guide to forming bundles </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.2 Creating PARs and WARs</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s02.html
deleted file mode 100644
index c320c16..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s02.html
+++ /dev/null
@@ -1,76 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.2 Creating PARs and WARs</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch04.html" title="4. Developing Applications"><link rel="prev" href="ch04.html" title="4. Developing Applications"><link rel="next" href="ch04s03.html" title="4.3 Creating Plans"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.2 Creating PARs and WARs</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04.html">Prev</a> </td><th width="60%" align="center">4. Developing Applications</th><td width="20%" align="right"> <a accesskey="n" href="ch04s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-packaging"></a>4.2 Creating PARs and WARs</h2></div></div></div><p>
- The Virgo Web Server supports two OSGi-oriented ways of packaging applications: the PAR format
- and application bundles (including web bundles). The VWS also supports three
- distinct WAR deployment and packaging formats: standard Java EE WAR, Shared Libraries WAR, Shared Services WAR.
- </p><p>
- The VWS also supports plans as a way to describe an application. This method is similar to a PAR
- in that it encapsulates all the artifacts of an application as a single unit, but differs in that a plan simply
- lists the bundles in an XML file rather than packaging all the bundles in a single JAR file. The use of plans
- offers additional benefits to using PARs; for this reason, we recommend their use. For details, see
- <a class="link" href="ch04s03.html" title="4.3 Creating Plans">Creating Plans</a>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-packaging-par"></a>PARs</h3></div></div></div><p>
- An OSGi application is packaged as a JAR file, with extension <code class="literal">.par</code>. A PAR artifact offers several benefits:
- </p><div class="itemizedlist"><ul type="disc"><li>A PAR file has an application name, version, symbolic name, and description.</li><li>The artifacts of a PAR file are scoped so that they cannot
- be shared accidentally by other applications. The scope forms a boundary for automatic
- propagation of load time weaving and bundle refresh.</li><li>The artifacts of a PAR have their exported packages imported by the
- synthetic context bundle which is used for thread context class loading. So,
- for example, hibernate will be able to load classes of any of the exported
- packages of the artifacts in a PAR file using <code class="code">Class.forName()</code> (or equivalent).</li><li>The PAR file is visible to management interfaces.</li><li>The PAR file can be undeployed and redeployed as a unit.</li></ul></div><p>
- </p><p>
- A PAR includes one or more application bundles and its manifest specifies the following
- manifest headers:
- </p><div class="table"><a name="developing-applications-packaging-par-headers-table"></a><p class="title"><b>Table 4.1. PAR file headers</b></p><div class="table-contents"><table summary="PAR file headers" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Header</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">Application-SymbolicName</code></td><td style="border-bottom: 1.0pt solid ; ">Identifier for the application which, in combination with Application-Version, uniquely identifies an application</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">Application-Name</code></td><td style="border-bottom: 1.0pt solid ; ">Human readable name of the application</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">Application-Version</code></td><td style="border-bottom: 1.0pt solid ; ">Version of the application</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">Application-Description</code></td><td style="">Short description of the application</td></tr></tbody></table></div></div><p><br class="table-break">
- </p><p>
- The following code shows an example MANIFEST.MF in a PAR file:
- </p><pre class="programlisting"><span class="bold"><strong>Application-SymbolicName</strong></span>: com.example.shop
-<span class="bold"><strong>Application-Version</strong></span>: 1.0
-<span class="bold"><strong>Application-Name</strong></span>: Online Shop
-<span class="bold"><strong>Application-Description</strong></span>: Example.com’s Online Shopping Application</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-packaging-web-modules"></a>Web Modules</h3></div></div></div><p>
- As discussed earlier, Web Modules are no longer supported in VWS. Instead, we recommend that you
- use Shared Service WARs or Web Application Bundles that are compliant with the OSGi Web Applications specification.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="developing-applications-packaging-web-module-to-war"></a>Migrating to a Web Application Bundle from a Web Module</h4></div></div></div><p>
- To move from a Web Module to a Web Container-compliant Web Bundle you need to follow these four steps:
- </p><div class="orderedlist"><ol type="1"><li>Remove the <code class="literal">Module-Type</code> manifest header</li><li>Replace any <code class="literal">Web-DispatcherServletUrlPatterns</code> header with the corresponding
- servlet entries in <code class="literal">web.xml</code></li><li>Replace any <code class="literal">Web-FilterMappings</code> header with the corresponding filter
- entries in <code class="literal">web.xml</code></li><li>Move all content in <code class="literal">MODULE-INF</code> to the root of the WAR</li></ol></div><p>
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="developing-applications-packaging-web-module-to-war-ds"></a>Removing <code class="literal">Web-DispatcherServletUrlPatterns</code></h5></div></div></div><p>
- To remove a <code class="literal">Web-DispatcherServletUrlPatterns</code> header such as
- <code class="literal">Web-DispatcherServletUrlPatterns: *.htm</code>, start by declaring
- a <code class="classname">DispatcherServlet</code> in <code class="literal">web.xml</code>:
- </p><pre class="programlisting"><servlet>
- <servlet-name>dispatcher.myapp</servlet-name>
- <servlet-<span class="hl-keyword">class</span>>org.springframework.web.servlet.DispatcherServlet</servlet-<span class="hl-keyword">class</span>>
-</servlet></pre><p>
- For every mapping in the <code class="literal">DispatcherServletUrlPatterns</code> header, create the
- corresponding <code class="literal">servlet-mapping</code>:
- </p><pre class="programlisting"><servlet-mapping>
- <servlet-name>dispatcher.myapp</servlet-name>
- <url-pattern>*.htm</url-pattern>
-</servlet-mapping></pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="developing-applications-packaging-web-module-to-war-filter"></a>Removing <code class="literal">Web-FilterMappings</code></h5></div></div></div><p>
- To remove a <code class="literal">Web-FilterMappings</code> header such as
- <code class="literal">Web-FilterMappings: myfilter;url-patterns:="*.htm"</code>, start by declaring
- <code class="classname">DelegatingFilterProxy</code> in <code class="literal">web.xml</code> for each filter listed:
- </p><pre class="programlisting"><filter>
- <filter-name>myfilter</filter-name>
- <filter-<span class="hl-keyword">class</span>>org.springframework.web.filter.DelegatingFilterProxy</filter-<span class="hl-keyword">class</span>>
-</filter></pre><p>
- For every mapping listed for the filter create the
- corresponding <code class="literal">filter-mapping</code>:
- </p><pre class="programlisting"><filter-mapping>
- <filter-name>myfilter</filter-name>
- <url-pattern>*.htm</url-pattern>
-</filter-mapping></pre></div></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4. Developing Applications </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.3 Creating Plans</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s03.html
deleted file mode 100644
index 1794e6b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s03.html
+++ /dev/null
@@ -1,62 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.3 Creating Plans</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch04.html" title="4. Developing Applications"><link rel="prev" href="ch04s02.html" title="4.2 Creating PARs and WARs"><link rel="next" href="ch04s04.html" title="4.4 Creating and Using Configuration Artifacts"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3 Creating Plans</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s02.html">Prev</a> </td><th width="60%" align="center">4. Developing Applications</th><td width="20%" align="right"> <a accesskey="n" href="ch04s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-plans"></a>4.3 Creating Plans</h2></div></div></div><p>
- Plans are similar to PARs in that they encapsulate the artifacts of an application as a single unit. As a consequence, they have similar benefits; for details of the benefits common to PARs and plans, see <a class="link" href="ch04s02.html#developing-applications-packaging-par" title="PARs">PARs</a>.
- </p><p>
- Plans have the following additional benefits, which is why we recommend that you use plans rather than PARs when defining an application:
- </p><div class="itemizedlist"><ul type="disc"><li>Virgo Web Server deploys the artifacts in the plan in the order in which they are listed in the XML file, which gives you complete control over deployment order. With a PAR, the order of deployment of the included artifacts is not guaranteed.</li><li>Plans describe their contents by reference (using an XML file) as opposed to PARs that are JAR files that physically contain the included artifacts. For this reason, it is easier to share content between plans as well as update individual parts of a plan without having to physically repackage (re-JAR) it.</li><li>You can enable or disable whether a plan is scoped or atomic; PARs are always scoped and atomic.</li></ul></div><p>
- Plans always get their dependencies from the VWS repository. This means, for example, that if you drop one of the plan’s dependencies in the <code class="code">pickup</code> directory rather than adding it to the repository, the plan will fail to deploy because it will not find the dependency.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-plans-create"></a>Creating the Plan XML File</h3></div></div></div><p>
- Plans are XML files that have a <code class="code">.plan</code> file extension, such as <code class="code">multi-artifact.plan</code>.
- The structure of the XML file is simple:
- the root element is <code class="code"><plan></code> with attributes specifying the name of the plan, the version, atomicity, and scoping.
- Then, for each artifact that makes up your application,
- you add a <code class="code"><artifact></code> element, using its attributes to specify the type of artifact and its name and version.
- The following is a simple example of a plan’s XML file:
- </p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">plan</span> <span class="hl-attribute">name</span>=<span class="hl-value">"multi-artifact.plan"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"1.0.0"</span> <span class="hl-attribute">scoped</span>=<span class="hl-value">"true"</span> <span class="hl-attribute">atomic</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springsource.org/schema/dm-server/plan"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"
- http://www.springsource.org/schema/dm-server/plan
- http://www.springsource.org/schema/dm-server/plan/springsource-dm-server-plan.xsd"</span>>
-
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"configuration"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"app-properties"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"1.0.0"</span>/>
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"bundle"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"com.springsource.exciting.app"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"[2.0.0, 3.1.0)"</span>/>
-
-<<span class="hl-tag">/plan</span>></pre><p>
- In the preceding example, the name of the plan is <code class="code">multi-artifact.plan</code> and its version is <code class="code">1.0.0</code>.
- The plan is both scoped and atomic. The plan contains two artifacts: one is a bundle called <code class="code">com.springsource.exciting.app</code> and the other is a configuration file called <code class="code">app-properties</code>.
- </p><p>
- The following table describes the attributes of the <code class="code"><plan></code> element.
- </p><div class="table"><a name="developing-applications-plans-create-plan-attributes"></a><p class="title"><b>Table 4.2. Attributes of the <plan> Element</b></p><div class="table-contents"><table summary="Attributes of the <plan> Element" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Attribute</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Description</th><th style="border-bottom: 1.0pt solid ; ">Required?</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">name</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies the name of this plan. Virgo Web Server uses the name as one component of the unique identifier of this plan. </td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">version</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies the version of this plan. You must use OSGi version specification syntax, such as <code class="code">2.1.0</code>. Virgo Web Server uses the version as one component of the unique identifier of this plan. </td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">scoped</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies whether Virgo Web Server should install the artifacts into plan-specific scope so that only the application described by this plan has access to the artifacts. If you disable scoping, then Virgo Web Server installs the artifacts into the global scope, which means they are then available for access by all other deployed artifacts. Set the attribute to <code class="code">true</code> to enable scoping or <code class="code">false</code> to disable it.</td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">atomic</code></td><td style="border-right: 1.0pt solid ; ">Specifies whether you want to tie together the lifecycle of the artifacts in this plan. Making a plan atomic means that if you install, start, stop, or uninstall a single artifact in the plan, Virgo Web Server escalates the event to all artifacts in the plan. Also, in an atomic plan, Virgo Web Server prevents artifacts from being in inconsistent states. For example, if one artifact should fail to start, then Virgo Web Server stops all artifacts in the plan. Set this attribute to <code class="code">true</code> to enable atomicity or <code class="code">false</code> to disable it. </td><td style="">Yes.</td></tr></tbody></table></div></div><br class="table-break"><p>
- The following table describes the attributes of the <code class="code"><artifact></code> element.
- </p><div class="table"><a name="developing-applications-plans-create-artifact-attributes"></a><p class="title"><b>Table 4.3. Attributes of the <artifact> Element</b></p><div class="table-contents"><table summary="Attributes of the <artifact> Element" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Attribute</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Description</th><th style="border-bottom: 1.0pt solid ; ">Required?</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">type</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies the type of the artifact. Valid values are:
- <div class="itemizedlist"><ul type="disc"><li><code class="code">bundle</code>: Specifies an OSGi bundle. Use this artifact type for WAR files and Web application bundles. </li><li><code class="code">configuration</code>: Specifies that the artifact is a configuration file. Configuration files contain name/value pairs that set initial values for configuration properties of a bundle. </li><li><code class="code">plan</code>: Specifies that the artifact is a plan. </li><li><code class="code">par</code>: Specifies that the artifact is a PAR. </li></ul></div>
- </td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">name</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies the name of the artifact.
-
- <p>See <a class="link" href="">Artifact Names</a> for guidelines for determining the name of an artifact.</p>
- </td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">version</code></td><td style="border-right: 1.0pt solid ; ">Specifies the version or range of versions of this artifact that VWS should look up in its repositories and then install and deploy. You must use OSGi version specification syntax, such as <code class="code">[1.0.0, 2.0.0)</code>. </td><td style="">No. If not specified, defaults to <code class="code">0</code>, which in OSGi means 0 to infinity, or any version.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="names-of-artifacts"></a>Artifact Names</h3></div></div></div><p>When you create a plan, you use the <code class="code">name</code> attribute of the <code class="code"><artifact></code> element to specify the name of all the plan’s dependencies. This section describes how to determine the name of an artifact, which is not always obvious.</p><p>Use the following guidelines to determine the name of an artifact:</p><div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>Bundle</strong></span>: In this context, a <span class="emphasis"><em>bundle</em></span> refers to a standard OSGi bundle as well as a Web application bundles and WAR file. The name of a bundle is the value of the <code class="code">Bundle-SymbolicName</code> header in the <code class="code">META-INF/MANIFEST.MF</code> file of the <code class="code">*.jar</code> or <code class="code">*.war</code> file. The following <code class="code">MANIFEST.MF</code> snippet shows a bundle with name <code class="code">com.springsource.exciting.app</code>:</p><pre class="screen">Bundle-SymbolicName: org.eclispe.virgo.exciting.app</pre><p>If the bundle does not contain a <code class="code">META-INF/MANIFEST.MF</code> file, then the name of the bundle is its filename minus the <code class="code">.jar</code> or <code class="code">.war</code> extension.</p></li><li><p><span class="bold"><strong>Configuration File</strong></span>: The name of a configuration file is its filename minus the <code class="code">.properties</code> extension. </p></li><li><p><span class="bold"><strong>Plan</strong></span>: The name of a plan is the value of the required <code class="code">name</code> attribute of the <code class="code"><plan></code> element in the plan’s XML file. In the following XML snippet, the plan name is <code class="code">multi-artifact.plan</code>:</p><pre class="screen"><?xml version="1.0" encoding="UTF-8"?>
-<plan name="<span class="bold"><strong>multi-artifact.plan</strong></span>" version="1.0.0" scoped="true" atomic="true"
- xmlns="http://www.springsource.org/schema/dm-server/plan"
-...</pre></li><li><p><span class="bold"><strong>PAR</strong></span>: The name of a PAR is the value of the <code class="code">Application-SymbolicName</code> header in the <code class="code">META-INF/MANIFEST.MF</code> file of the <code class="code">*.par</code> file. The following <code class="code">MANIFEST.MF</code> snippet shows a PAR with name <code class="code">com.springsource.my.par</code>:</p><pre class="screen">Application-SymbolicName: org.eclipse.virgo.my.par</pre><p>If the PAR does not contain a <code class="code">META-INF/MANIFEST.MF</code> file, then the name of the PAR is its filename minus the <code class="code">.par</code> extension.</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-plans-use"></a>Using the Plan</h3></div></div></div><p>
- Because a plan is a list of artifacts, rather than a physical file that contains the artifacts, there are a few additional steps you must perform before you deploy it to VWS.
- </p><div class="orderedlist"><ol type="1"><li><p>Copy the artifacts that make up the plan to the <code class="code">usr</code> repository, which by default is the <code class="code">$SERVER_HOME/repository/usr</code> directory, where <code class="code">$SERVER_HOME</code> refers to the top-level installation directory of VWS. Note that you might have configured the server differently; in which case, copy the artifacts to your custom repository directory.</p></li><li><p>Restart VWS.</p></li><li><p>After the server has started, either use the Admin Console to deploy the plan, or manually deploy it by copying the plan’s XML file into the <code class="code">$SERVER_HOME/pickup</code> directory. </p><p>This results in VWS deploying the plan with the same semantics as a PAR file.</p></li><li><p>To undeploy the plan, use the Admin Console, or simply delete it from the <code class="code">$SERVER_HOME/pickup</code> directory.</p></li></ol></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-plans-scoping"></a>Plans and Scoping</h3></div></div></div><p>As described in previous sections, you can specify that a plan be <span class="emphasis"><em>scoped</em></span>. This means that Virgo Web Server installs the artifacts that make up the plan into a plan-specific scope so that only the application described by the plan has access to the artifacts. If you disable scoping, then Virgo Web Server installs the artifacts into the global scope, which means they are available for access by all other deployed artifacts. This section describes scoping in a bit more detail. It also describes how you can change the default behavior of scoping, with respect to services, so that a service that is in a scope can be made globally available. </p><p>If a bundle in a given scope imports a package and a bundle in the same scope exports the package, then the import may only be satisfied by the bundle in the scope, and not by any bundles outside the scope, including the global scope. Similarly, package exports from bundles in a scope are not visible to bundles in the global scope.</p><p>If a bundle in a scope uses Spring DM (or the blueprint service) to obtain a service reference and a bundle in the same scope uses Spring DM (or the blueprint service) to publish a matching service, then the service reference may only bind to the service published in the scope (and not to any services outside the scope). Services published by bundles in a scope are not visible to bundles in the global scope. </p><p>However, sometimes it is useful to make a service in a scope globally available to artifacts outside the scope. To do this, publish the service with the <code class="literal">org.eclipse.virgo.service.scope</code> service property set to <code class="literal">global</code>. Use the <code class="literal"><service-properties></code> child element of <code class="literal"><service></code>, as shown in the following example: </p><pre class="programlisting"><service id="publishIntoGlobal" interface="java.lang.CharSequence">
- <span class="bold"><strong><service-properties>
- <beans:entry key="org.eclipse.virgo.service.scope" value="global" />
- </service-properties></strong></span>
- <beans:bean class="java.lang.String">
- <beans:constructor-arg value="foo"/>
- </beans:bean>
-</service></pre></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.2 Creating PARs and WARs </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.4 Creating and Using Configuration Artifacts</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s04.html
deleted file mode 100644
index 1615b95..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s04.html
+++ /dev/null
@@ -1,121 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.4 Creating and Using Configuration Artifacts</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch04.html" title="4. Developing Applications"><link rel="prev" href="ch04s03.html" title="4.3 Creating Plans"><link rel="next" href="ch04s05.html" title="4.5 Programmatic Access to The Deployer Pipeline"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.4 Creating and Using Configuration Artifacts</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s03.html">Prev</a> </td><th width="60%" align="center">4. Developing Applications</th><td width="20%" align="right"> <a accesskey="n" href="ch04s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-configuration-artifacts"></a>4.4 Creating and Using Configuration Artifacts</h2></div></div></div><p>
- Applications typically include some sort of configuration data
- that might change depending on the environment in which the
- application is deployed. For example, if an application connects to a
- database server using JDBC, the configuration data would include the
- JDBC URL of the database server, the JDBC drvier, and the username and
- password that the application uses to connect to the database server.
- This information often changes as the application is deployed to
- different computers or the application moves from the testing phase to
- the production phase.
- </p><p>
- Virgo Web Server provides a feature called
- <span class="emphasis"><em>configuration artifacts</em></span>
- that makes it very easy for you to manage this configuration data. A
- configuration artifact is simply a properties file that is made
- available at runtime using the OSGi
- <code class="literal">ConfigurationAdmin</code>
- service. When you create this properties file, you set the values of
- the properties for the specific environment in which you are going to
- deploy your application, and then update the metadata of your Spring
- application to use the properties file. You then deploy the
- application and properties file together, typically as a
- <a class="link" href="ch04s03.html" title="4.3 Creating Plans">plan</a>
- . Virgo Web Server automatically creates a configuration artifact from
- the properties file, and you can manage the lifecycle of this
- configuration artifact in the same way you manage the lifecycle of
- PARs, bundles, and plans, using the Admin
- Console. Additionally, VWS subscribes your
- application for notification of any refresh of the configuration
- artifact and the application can then adapt accordingly, which means
- you can easily
- <span class="emphasis"><em>change</em></span>
- the configuration of your application without redeploying it.
- </p><p>In sum, configuration artifacts, especially when combined with
- plans, provide an excellent mechanism for managing external
- configuration data for your applications.</p><p>The following sections describe the format of the configuration
- artifact, how to update the Spring application context file of your
- application so that it knows about the configuration artifact, and
- finally how to include it in a plan alongside your application. </p><p>
- As an example to illustrate the configuration artifact feature, assume
- that you have a Spring bean called
- <code class="literal">PropertiesController</code>
- whose constructor requires that four property values be passed to it,
- as shown in the following snippet of Java code:
- </p><pre class="programlisting">@Controller
-public class PropertiesController {
-
- private final String driverClassName;
- private final String url;
- private final String username;
- private final String password;
-
- public PropertiesController(String driverClassName, String url, String username, String password) {
- this.driverClassName = driverClassName;
- this.url = url;
- this.username = username;
- this.password = password;
-}</pre><p>In the preceding example, the <code class="literal">PropertiesController</code> constructor requires four property values: <code class="literal">driverClassName</code>, <code class="literal">url</code>, <code class="literal">username</code>, and <code class="literal">password</code>. Note that the example shows just one way that a class might require property values; your application may code it another way.</p><p>Additionally, assume that the following snippet of the associated Spring application context XML file shows how the <code class="literal">PropertiesController</code> bean is configured:</p><pre class="programlisting"><bean class="com.springsource.configuration.properties.PropertiesController">
- <constructor-arg value="${driverClassName}"/>
- <constructor-arg value="${url}"/>
- <constructor-arg value="${username}"/>
- <constructor-arg value="${password}"/>
-</bean></pre><p>The rest of this section describes how the bean can get these property values using a configuration artifact.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-configuration-artifacts-propfile"></a>Creating the Properties File</h3></div></div></div><p>To create a properties file that in turn will become a configuration artifact when deployed to VWS from which a Spring bean, such as the <code class="literal">PropertiesController</code> bean, will get the actual property values, follow these guidelines:</p><div class="itemizedlist"><ul type="disc"><li><p>Create a text file in which each property is listed as a name/value pair, one pair per line. Precede comments with a <code class="literal">#</code>. For example:</p><pre class="screen"># Properties for the com.springsource.configuration.properties sample
-
-driverClassName = org.w3.Driver
-url = http://www.springsource.com
-username = joe
-password = secret</pre><p>The example shows four properties whose name correspond to the constructor arguments of the <code class="literal">PropertiesController</code> Spring bean.</p></li><li><p>Name the file anything you want, as long as it has a <code class="literal">.properties</code> extension, such as <code class="literal">app-properties.properties</code>.</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-configuration-artifacts-app"></a>Updating Your Application</h3></div></div></div><p>To update your application so that it "knows" about the configuration artifact, you update the application's Spring application context XML file, typically located in the <code class="literal">WEB-INF</code> or <code class="literal">META-INF/spring</code> directories.</p><p>You use the <code class="literal"><context:property-placeholder></code> element to specify that you want to use the VWS mechanism for substituting values into bean properties. The <code class="literal">properties-ref</code> attribute of this element points to a <code class="literal"><osgi-compendium:cm-properties></code> element which you use to specify the configuration artifact that contains the property values. You set the value of the <code class="literal">persistent-id</code> attribute of this element equal to the name of the configuration artifact, which is the name of the properties file <span class="emphasis"><em>minus</em></span> the <code class="literal">.properties</code> extension. </p><p>The following sample Spring application context XMl file shows everything wired together; only relevant parts of the file are shown:</p><pre class="programlisting"><?xml version="1.0" encoding="UTF-8"?>
-<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:context="http://www.springframework.org/schema/context"
- xmlns:osgi-compendium="http://www.springframework.org/schema/osgi-compendium"
- xsi:schemaLocation="http://www.springframework.org/schema/osgi
- http://www.springframework.org/schema/osgi/spring-osgi-1.2.xsd
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context-2.5.xsd
- http://www.springframework.org/schema/osgi-compendium
- http://www.springframework.org/schema/osgi-compendium/spring-osgi-compendium-1.2.xsd">
-
-...
-
- <bean class="com.springsource.configuration.properties.PropertiesController">
- <constructor-arg value="${driverClassName}"/>
- <constructor-arg value="${url}"/>
- <constructor-arg value="${username}"/>
- <constructor-arg value="${password}"/>
- </bean>
-
- <context:property-placeholder properties-ref="configAdminProperties"/>
-
- <osgi-compendium:cm-properties id="configAdminProperties" persistent-id="app-properties"/>
-
-...
-
-</beans> </pre></div><p>The preceding example shows how the id <code class="literal">configAdminProperites</code> wires the <code class="literal"><context:property-placeholder></code> and <code class="literal"><osgi-compendium:cm-properties></code> elements together. Based on the value of the <code class="literal">persistent-id</code> attribute, you must also deploy a properties file called <code class="literal">app-properties.properties</code> which VWS installs as a configuration artifact.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-configuration-artifacts-plan"></a>Adding the Configuration Artifact to a Plan</h3></div></div></div><p>Although you can always deploy your application and associated configuration artifact using the <code class="literal">pickup</code> directory, we recommends that you group the two together in a plan, add the two artifacts to the repository, and then deploy the plan using the <code class="literal">pickup</code> directory. The following sample plan includes the two artifacts:</p><pre class="programlisting"><?xml version="1.0" encoding="UTF-8"?>
-<plan name="multi-artifact.plan" version="1.0.0"
- scoped="false" atomic="false"
- xmlns="http://www.springsource.org/schema/dm-server/plan"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="
- http://www.springsource.org/schema/dm-server/plan
- http://www.springsource.org/schema/dm-server/plan/springsource-dm-server-plan.xsd">
-
- <artifact type="configuration" name="app-properties" version="0"/>
- <artifact type="bundle" name="org.eclipse.virgo.configuration.properties" version="1.0.0"/>
-</plan></pre><p>For additional information about plans, see <a class="link" href="ch04s03.html" title="4.3 Creating Plans">Creating Plans</a>.</p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3 Creating Plans </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.5 Programmatic Access to The Deployer Pipeline</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s05.html
deleted file mode 100644
index 326ee21..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s05.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.5 Programmatic Access to The Deployer Pipeline</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch04.html" title="4. Developing Applications"><link rel="prev" href="ch04s04.html" title="4.4 Creating and Using Configuration Artifacts"><link rel="next" href="ch04s06.html" title="4.6 Automatic Imports for the Web subsystem"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.5 Programmatic Access to The Deployer Pipeline</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s04.html">Prev</a> </td><th width="60%" align="center">4. Developing Applications</th><td width="20%" align="right"> <a accesskey="n" href="ch04s06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-programmatic-access"></a>4.5 Programmatic Access to The Deployer Pipeline</h2></div></div></div><p>
- Typically access to features are provided automatically via custom
- manifest headers or other configuration mechanisms. There may be situations,
- however, for which programmatic access to such features is desirable or necessary.
- This section describes how to programmatically access features from application
- code in a bundle.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-programmatic-access-web"></a>Programmatic Access to Web Features</h3></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="developing-applications-programmatic-access-web-application-context"></a>Programmatic Access to the WebApplicationContext</h4></div></div></div><p>
- The Virgo Web Server automatically creates a <code class="literal">WebApplicationContext</code>
- for Web application bundles and WAR files. When used in conjunction with an
- an auto-configured Spring MVC <code class="literal">DispatcherServlet</code>,
- there is generally no need to access the <code class="literal">WebApplicationContext</code>
- programmatically, since all components of the web application are configured
- within the scope of the <code class="literal">WebApplicationContext</code>
- itself. However, if you wish to access the <code class="literal">WebApplicationContext</code>
- you can do so via the web application’s <code class="literal">ServletContext</code>.
- The Web subsystem stores the bundle’s
- <code class="literal">WebApplicationContext</code> in the ServletContext under
- the attribute name "<code class="literal">BSN-ApplicationContext</code>", where
- <code class="literal">BSN</code> is the <code class="literal">Bundle-SymbolicName</code>
- of your WAR or Web application bundle.
- </p><p>
- Alternatively, since the Web subsystem also stores the
- <code class="literal">WebApplicationContext</code> under the attribute name
- with the value of the <code class="literal">WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE</code>
- constant, you may choose to use Spring MVC’s WebApplicationContextUtils’
- <code class="literal">getWebApplicationContext(servletContext)</code>
- or
- <code class="literal">getRequiredWebApplicationContext(servletContext)</code>
- methods to access the <code class="literal">WebApplicationContext</code> without providing
- an explicit attribute name.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="developing-applications-programmatic-access-web-bundle-context"></a>Programmatic Access to the BundleContext</h4></div></div></div><p>
- As required by the OSGi Web Applications specification, you can access the
- <code class="literal">BundleContext</code> of your WAR or Web Bundle via the web application’s
- <code class="literal">ServletContext</code>. The bundle context is stored in the
- <code class="literal">ServletContext</code> under the attribute name <code class="literal">osgi-bundlecontext</code>.
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.4 Creating and Using Configuration Artifacts </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.6 Automatic Imports for the Web subsystem</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s06.html
deleted file mode 100644
index f44bfa4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s06.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.6 Automatic Imports for the Web subsystem</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch04.html" title="4. Developing Applications"><link rel="prev" href="ch04s05.html" title="4.5 Programmatic Access to The Deployer Pipeline"><link rel="next" href="ch04s07.html" title="4.7 Working with dependencies"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.6 Automatic Imports for the Web subsystem</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s05.html">Prev</a> </td><th width="60%" align="center">4. Developing Applications</th><td width="20%" align="right"> <a accesskey="n" href="ch04s07.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-automatic-imports-web"></a>4.6 Automatic Imports for the Web subsystem</h2></div></div></div><p>
- The Virgo Web Server generates automatic package imports (i.e., via the
- <code class="literal">Import-Package</code> manifest header) for the web subsystem’s
- artifacts. This section lists which packages are automatically generated.
- </p><p>
- All WARs, as required by the OSGi Web Applications specification, and Web application bundles (see <a class="link" href="ch09s05.html" title="9.5 Default Web Application Bundle Headers">Default Web
- Application Bundle Headers</a>) will automatically import the following packages:
- </p><div class="itemizedlist"><ul type="disc"><li><code class="literal">javax.servlet;version="2.5"</code></li><li><code class="literal">javax.servlet.http;version="2.5"</code></li><li><code class="literal">javax.servlet.jsp";version="2.1"</code></li><li><code class="literal">javax.servlet.jsp.el;version="2.1"</code></li><li><code class="literal">javax.servlet.jsp.tagext;version="2.1"</code></li><li><code class="literal">javax.el";version="1.0"</code></li></ul></div><p>
- In addition to the above-described imports, VWS will also
- generate automatic imports for all of the packages that are exported by the system
- bundle, unless an import for the package already exists in the artifact’s manifest,
- or the artifact contains the package, i.e. within <code class="literal">WEB-INF/classes</code>,
- or in a jar file in <code class="literal">WEB-INF/lib</code>. When an import is generated, it
- is versioned such that it exactly matches the version or versions of the package that
- are exported from the system bundle. For example, a package that’s exported only at
- version <code class="literal">1.0.0</code> will generate an import with a version of
- <code class="literal">[1.0.0,1.0.0]</code>, and a package that’s exported at version
- <code class="literal">1.0.0</code> and version <code class="literal">2.0.0</code> will generate an import
- with a version of <code class="literal">[1.0.0,2.0.0]</code>.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip: System Bundle Package Exports"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">System Bundle Package Exports</th></tr><tr><td align="left" valign="top"><p>
- For further details on which packages are exported by the
- OSGi system bundle, consult the <code class="filename">java6-server.profile</code>
- file located in the <code class="literal">SERVER_HOME/lib</code> directory.
- </p></td></tr></table></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s07.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.5 Programmatic Access to The Deployer Pipeline </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.7 Working with dependencies</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s07.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s07.html
deleted file mode 100644
index 8bc7ef2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s07.html
+++ /dev/null
@@ -1,111 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.7 Working with dependencies</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch04.html" title="4. Developing Applications"><link rel="prev" href="ch04s06.html" title="4.6 Automatic Imports for the Web subsystem"><link rel="next" href="ch04s08.html" title="4.8 Application trace"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.7 Working with dependencies</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s06.html">Prev</a> </td><th width="60%" align="center">4. Developing Applications</th><td width="20%" align="right"> <a accesskey="n" href="ch04s08.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-dependencies"></a>4.7 Working with dependencies</h2></div></div></div><p>Complex enterprise frameworks such a Spring and Hibernate are typically divided into many, many different
- packages. Traditionally, if an OSGi bundle wished to make extensive use of such a framework its manifest would
- have to import a huge number of different packages. This can be an error-prone and tedious process. Furthermore,
- application developers are used to thinking in terms of their application using a framework, such as Spring, as a
- whole, rather than a long list of all the different packages that comprise the framework.
- </p><p>The following figure provides a simple illustration of the complexity of only using <code class="code">Import-Package</code>:
- </p><p>
- <img src="images/import-package.png">
- </p><p>The Virgo Web Server reduces the need for long lists of imported packages by introducing two new manifest
- headers; <code class="code">Import-Bundle</code> and <code class="code">Import-Library</code>. The following figure provides an
- illustration of the simplification that these new headers offer:
- </p><p>
- <img src="images/import-bundle_import-library.png">
- </p><p>
- As you can see, use of <code class="code">Import-Bundle</code> and <code class="code">Import-Library</code> can lead to a dramatic reduction
- in the number of imports that you need to include in an application bundle’s manifest. Furthermore, <code class="code">Import-Bundle</code>
- and <code class="code">Import-Library</code> are simply aliases for <code class="code">Import-Package</code>; at deployment time <code class="code">Import-Bundle</code>
- and <code class="code">Import-Library</code> header entries are automatically expanded into numerous <code class="code">Import-Package</code> entries. This
- means that you retain the exact same semantics of using <code class="code">Import-Package</code>, without having to go through the labourious
- process of doing so.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-importing-libraries"></a>Importing libraries</h3></div></div></div><p>A bundle in an application can declare a dependency on a library by using the
- Virgo Web Server-specific <code class="code">Import-Library</code> header. This header specifies a
- comma-separated list of library symbolic names and version ranges that determine which libraries
- are imported. By default a dependency on a library is mandatory but this can be
- controlled through use of the resolution directive in exactly the same way as
- it can with <code class="code">Import-Package</code>.
- </p><pre class="programlisting">
-<span class="bold"><strong>Import-Library</strong></span>: org.springframework.spring;version="[2.5.4, 3.0)",
- org.aspectj;version="[1.6.0,1.6.0]";resolution:="optional"
- </pre><p>
- This example <code class="code">Import-Library</code> header declares a mandatory dependency on the Spring
- library at a version from 2.5.4 inclusive to 3.0 exclusive. It also declares an
- optional dependency on the AspectJ library at exactly 1.6.0.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-importing-bundles"></a>Importing bundles</h3></div></div></div><p>A bundle in an application can declare a dependency on a bundle by using the
- Virgo Web Server-specific <code class="code">Import-Bundle</code> header. The header specifies a comma-separated
- list of bundle symbolic names, version ranges, and scope declarmations that determine which bundles are imported and the scope of their dependency. By default a dependency
- on a bundle is mandatory but this can be controlled through use of the resolution directive in exactly
- the same way as it can with <code class="code">Import-Package</code>.
- </p><pre class="programlisting">
-<span class="bold"><strong>Import-Bundle</strong></span>: com.springsource.org.apache.commons.dbcp;version="[1.2.2.osgi, 1.2.2.osgi]"
- </pre><p>
- This example <code class="code">Import-Bundle</code> header declares a mandatory dependency on the Apache Commons
- DBCP bundle at exactly 1.2.2.osgi.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-scoping-libraries-bundles"></a>Scoping Bundles in an Application</h3></div></div></div><p>
- When working with a scoped application, such as a PAR file or a plan, you might run into a situation where one of the bundles in the application (call it <code class="code">bundleA</code>) depends on another bundle (<code class="code">bundleB</code>) that performs a runtime task (such as class generation) that a third bundle (<code class="code">bundleC</code>) might need to know about, although <code class="code">bundleC</code> does not explicitly depend on <code class="code">bundleB</code>.
- </p><p>
- For example, Hibernate uses CGLIB (code generation library) at runtime to generate proxies for persistent classes. Assume that a domain bundle in your application uses Hibernate for its persistent objects, and thus its <code class="code">Import-Bundle</code> manifest header includes the Hibernate bundle. Further assume that a separate Web bundle uses reflection in its data-binding code, and thus needs to reflect on the persistent classes generated by Hibernate at runtime. The Web bundle now has an indirect dependency on the Hibernate bundle because of these dynamically generated classes, although the Web bundle does not typically care about the details of how these classes are persisted. One way to solve this dependency problem is to explicitly add the Hibernate bundle to the <code class="code">Import-Bundle</code> header of the Web bundle; however, this type of explicit-specified dependency breaks the modularity of the application and is not a programming best practice.
- </p><p>
- A better way to solve this problem is to specify that Virgo Web Server itself dynamically import
- the bundle (Hibernate in the example above) to all bundles in the application at runtime.
- You do this by adding the <code class="code">import-scope:=application</code> directive to the <code class="code">Import-Bundle</code> header
- of the bundle that has the direct dependency (the domain bundle in our example). At runtime, although the Web bundle
- does not explicitly import the Hibernate bundle, Virgo Web Server implicitly imports it and thus its classes are available
- to the Web bundle. This mechanism allows you to declare the dependencies you need to make your application run,
- without having to make changes to your application that might limit its flexibility.
- </p><p>
- The following example shows how to use the <code class="code">import-scope</code> directive with the <code class="code">Import-Bundle</code> header:
- </p><pre class="programlisting">
-Import-Bundle: com.springsource.org.hibernate;version="[3.2.6.ga,3.2.6.ga]";<span class="bold"><strong>import-scope:=application</strong></span></pre><p>
- You can also set the <code class="code">import-scope</code> directive to the (default) value <code class="code">bundle</code>; in this case, the scope of the bundle is just the bundle itself and thus Virgo Web Server does not perform any implicit importing into other bundles of the application.
- </p><p>
- Note that use of the <code class="code">import-scope:=application</code> directive of the <code class="code">Import-Bundle</code> header only makes sense when the bundle is part of a scoped application (PAR or plan); if the bundle is not part of a scoped application, then this directive has no effect.
- </p><p>
- Finally, because <code class="code">import-scope:=application</code> implicitly adds a bundle import to each bundle of the PAR or plan, the impact of subsequently refreshing the imported bundle is, in general, broader than it would have been if you had not used <code class="code">import-scope:=application</code>. This may well affect the performance of refresh.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-defining-libraries"></a>Defining libraries</h3></div></div></div><p>
- Libraries are defined in a simple text file, typically with a <code class="code">.libd</code> suffix. This file identifies the
- library and lists all of its constituent bundles. For example, the following is the library definition for
- Spring 2.5.4:
- </p><pre class="programlisting"><span class="bold"><strong>Library-SymbolicName</strong></span>: org.springframework.spring
-<span class="bold"><strong>Library-Version</strong></span>: 2.5.4
-<span class="bold"><strong>Library-Name</strong></span>: Spring Framework
-<span class="bold"><strong>Import-Bundle</strong></span>: org.springframework.core;version="[2.5.4,2.5.5)",
- org.springframework.beans;version="[2.5.4,2.5.5)",
- org.springframework.context;version="[2.5.4,2.5.5)",
- org.springframework.aop;version="[2.5.4,2.5.5)",
- org.springframework.web;version="[2.5.4,2.5.5)",
- org.springframework.web.servlet;version="[2.5.4,2.5.5)",
- org.springframework.jdbc;version="[2.5.4,2.5.5)",
- org.springframework.orm;version="[2.5.4,2.5.5)",
- org.springframework.transaction;version="[2.5.4,2.5.5)",
- org.springframework.context.support;version="[2.5.4,2.5.5)",
- org.springframework.aspects;version="[2.5.4,2.5.5)",
- com.springsource.org.aopalliance;version="1.0"</pre><p>
- </p><p>
- The following table lists all of the headers that may be used in a library definition:
- </p><div class="table"><a name="developing-applications-defining-libraries-library-headers-table"></a><p class="title"><b>Table 4.4. Library definition headers</b></p><div class="table-contents"><table summary="Library definition headers" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Header</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Library-SymbolicName</td><td style="border-bottom: 1.0pt solid ; ">Identifier for the library</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Library-Version</td><td style="border-bottom: 1.0pt solid ; ">Version number for the library</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Import-Bundle</td><td style="border-bottom: 1.0pt solid ; ">A comma separated list of bundle symbolic names.
- Each entry may optionally specify a version (using the <code class="code">version=</code> directive)
- and the scope of the import (using the <code class="code">import-scope</code> directive).</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Library-Name</td><td style="border-bottom: 1.0pt solid ; ">Optional. The human-readable name of the library</td></tr><tr><td style="border-right: 1.0pt solid ; ">Library-Description</td><td style="">Optional. A human-readable description of the library</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-installing-dependencies"></a>Installing dependencies</h3></div></div></div><p>
- Rather than encouraging the packaging of all an application’s dependencies within the application itself, Virgo Web Server
- uses a local provisioning repository of bundles and libraries upon which an application can depend. When the Virgo Web Server
- encounters an application with a particular dependency, it will automatically provide, from its provisioning repository,
- the appropriate bundle or library.
- </p><p>
- Making a dependency available for provisioning is simply a matter of copying it to the appropriate location in the
- VWS’s local provisioning repository. By default this is
- <code class="literal">SERVER_HOME/repository/usr</code>. A more detailed discussion of the provisioning
- repository can be found in the <a class="ulink" href="../../user-guide/html/index.html" target="_top">User Guide</a>.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s08.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.6 Automatic Imports for the Web subsystem </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.8 Application trace</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s08.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s08.html
deleted file mode 100644
index bff506f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s08.html
+++ /dev/null
@@ -1,19 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.8 Application trace</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch04.html" title="4. Developing Applications"><link rel="prev" href="ch04s07.html" title="4.7 Working with dependencies"><link rel="next" href="ch04s09.html" title="4.9 Application versioning"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.8 Application trace</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s07.html">Prev</a> </td><th width="60%" align="center">4. Developing Applications</th><td width="20%" align="right"> <a accesskey="n" href="ch04s09.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-application-trace"></a>4.8 Application trace</h2></div></div></div><p>
- As described in the <a class="ulink" href="../../user-guide/html/index.html" target="_top">User Guide</a> Virgo Web Server provides support for
- per-application trace. Virgo Web Server provides SLF4J with Logback logging for Event Logging and Tracing.
- Application trace is configured in the <code class="literal">serviceability.xml</code> file.
- See the <a class="ulink" href="../../user-guide/html/index.html" target="_top">User Guide</a> for more details.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s07.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s09.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.7 Working with dependencies </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.9 Application versioning</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s09.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s09.html
deleted file mode 100644
index 6c77596..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch04s09.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.9 Application versioning</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch04.html" title="4. Developing Applications"><link rel="prev" href="ch04s08.html" title="4.8 Application trace"><link rel="next" href="ch05.html" title="5. Migrating to OSGi"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.9 Application versioning</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s08.html">Prev</a> </td><th width="60%" align="center">4. Developing Applications</th><td width="20%" align="right"> <a accesskey="n" href="ch05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-versioning"></a>4.9 Application versioning</h2></div></div></div><p>
- In much the same way that individual OSGi bundles can be versioned, Virgo Web Server allows applications to be versioned. How exactly you do this depends on how you have packaged the application:
- </p><div class="itemizedlist"><ul type="disc"><li>If you package your application using a PAR, you version the application by using the <code class="literal">Application-Version</code> header in the <code class="code">MANIFEST.MF</code> file of the PAR file.</li><li>If you use a plan to describe the artifacts that make up your application, you version it by using the <code class="code">version</code> attribute of the <code class="code"><plan></code> root element of the plan’s XML file.</li><li>If your application consists of a single bundle, you version it in the standard OSGi way: by using the <code class="literal">Bundle-Version</code> header of the <code class="code">MANIFEST.MF</code> file of the bundle.</li></ul></div><p>
- </p><p>Virgo Web Server uses an application’s version to prevent clashes when multiple versions of the same application are deployed at
- the same time. For example, the application trace support described in <a class="xref" href="ch04s08.html" title="4.8 Application trace">Section 4.8, “Application trace”</a>,
- includes the application’s name and version in the file path. This ensures that each version of the same application has its
- own trace or logging file.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s08.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.8 Application trace </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 5. Migrating to OSGi</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch05.html
deleted file mode 100644
index 2b19682..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch05.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>5. Migrating to OSGi</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="ch04s09.html" title="4.9 Application versioning"><link rel="next" href="ch05s02.html" title="5.2 Migrating to a Plan or a PAR"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5. Migrating to OSGi</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s09.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch05s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="migrating-to-osgi"></a>5. Migrating to OSGi</h2></div></div></div><p>
- Taking on a new technology such as OSGi may seem a bit daunting at first,
- but a proven set of migration steps can help ease the journey. Teams
- wishing to migrate existing applications to run on the Virgo Web Server
- will find that their applications typically fall into one of the following
- categories.
-
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <span class="bold"><strong>Web Application</strong></span>: for web applications,
- this chapter provides an overview of the steps required to migrate
- from a Standard WAR to a Shared Services WAR. Furthermore, the following
- chapter provides a detailed case study involving the migration
- of the Spring 2.0 Form Tags show case application.
- </p></li><li><p>
- <span class="bold"><strong>Anything else</strong></span>: for any other type
- of application, you will typically either deploy your application
- as multiple individual bundles, as a single PAR file, or as a plan,
- which is the recommended approach for deploying applications on
- the Virgo Web Server. See <a class="xref" href="ch05s02.html" title="5.2 Migrating to a Plan or a PAR">Section 5.2, “Migrating to a Plan or a PAR”</a> for details.
- </p></li></ul></div><p>
-
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="migrating-to-osgi-web"></a>5.1 Migrating Web Applications</h2></div></div></div><p>
- Many applications may start with the standard WAR format for web applications and
- gradually migrate to a more OSGi-oriented architecture. Since the Virgo Web Server
- offers several benefits to all supported deployment formats, it provides a smooth
- migration path. Of course, depending on your application’s complexity and your
- experience with OSGi, you may choose to start immediately with an OSGi-based
- architecture.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-web-standard-war"></a>Standard WAR</h3></div></div></div><p>
- If you are not yet familiar with OSGi or simply want to deploy an existing web application on the Virgo Web Server,
- you can deploy a standard WAR and leverage the VWS with a minimal learning curve. In fact reading the
- <a class="ulink" href="../../user-guide/html/index.html" target="_top">Virgo Web Server User Guide</a>
- is pretty much all that you need to do to get started. Furthermore, you will gain
- familiarity with the Virgo Web Server, while preparing to take advantage of the other formats.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-web-shared-libraries-war"></a>Shared Libraries WAR</h3></div></div></div><p>
- The <span class="emphasis"><em>Shared Libraries WAR</em></span>
- format is the first step to reaping the benefits of OSGi. In this phase, you dip your toes into OSGi-based dependency
- management by removing JAR files from the WAR and declaring dependencies on corresponding OSGi bundles.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-web-shared-services-war"></a>Shared Services WAR</h3></div></div></div><p> In this phase, you take the next step toward a fully OSGi-based architecture by separating your web artifacts
- (e.g., Servlets, Controllers, etc.) from the services they depend on.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-web-summary"></a>Web Migration Summary</h3></div></div></div><p>
- The following diagram graphically depicts the migration path from a Standard WAR to a Shared Services WAR.
- As you can see, the libraries (<span class="emphasis"><em>libs</em></span>) move from within the deployment artifact
- to the Bundle Repository.
- Similarly, the services move from within the WAR to external bundles and are accessed via the
- OSGi Service Registry. In addition, the overall footprint of the deployment artifact decreases
- as you move towards a Shared Services WAR.
- </p><div class="mediaobject"><img src="images/migration-path-war-to-shsrv.png"></div><p>
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s09.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch05s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.9 Application versioning </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 5.2 Migrating to a Plan or a PAR</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch05s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch05s02.html
deleted file mode 100644
index 2bd105b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch05s02.html
+++ /dev/null
@@ -1,45 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>5.2 Migrating to a Plan or a PAR</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch05.html" title="5. Migrating to OSGi"><link rel="prev" href="ch05.html" title="5. Migrating to OSGi"><link rel="next" href="ch06.html" title="6. Case study: Migrating the Form Tags sample application"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5.2 Migrating to a Plan or a PAR</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05.html">Prev</a> </td><th width="60%" align="center">5. Migrating to OSGi</th><td width="20%" align="right"> <a accesskey="n" href="ch06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="migrating-to-osgi-par-plan"></a>5.2 Migrating to a Plan or a PAR</h2></div></div></div><p>
- The first steps to migrating an existing application to a plan or a PAR are the same: deciding on the bundles that make up the application and ensuring that their <code class="code">Import-Package</code>, <code class="code">Import-Library</code>, and <code class="code">Import-Bundle</code> manifest headers are correct. Once you have the list of bundles that make up your application, you then decide whether you want to JAR them all into a single application file (PAR) or create a plan that simply lists the bundles by reference. Creating a plan is the recommend way to create an application, although PARs also have benefits that might suit your needs better, as described in <a class="xref" href="ch05s02.html#migrating-to-osgi-parplan-decide" title="Plan or PAR?">the section called “Plan or PAR?”</a>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-parplan-bundles"></a>Creating the Application Bundles</h3></div></div></div><p>
- When migrating an existing application to the PAR packaging and deployment format or a plan,
- you consider modularity as the prime objective. Following the ideas discussed in
- <a class="xref" href="ch03s03.html" title="3.3 A guide to forming bundles">Section 3.3, “A guide to forming bundles”</a>, you refactor the application into multiple bundles.
- You may start conservatively with a small number of bundles and then further refactor those bundles.
- </p><p>
- If the original code is crafted following good software practices such as separation of concerns and use of
- well-defined interfaces, migration may involve modifying only configuration and packaging. In other words,
- your Java sources will remain unchanged. Even configuration is likely to change only slightly.
- </p><p>
- For example, the following diagram depicts a typical web application that has been refactored and
- packaged as a PAR. The blue elements within the <span class="emphasis"><em>Application</em></span> box constitute
- the bundles of the application. Each of these bundles imports types from other bundles within
- the PAR using <code class="literal">Import-Package</code>. The green elements in the left column represent
- <span class="emphasis"><em>libraries</em></span> installed on the VWS. The PAR’s bundles reference these
- libraries using <code class="literal">Import-Library</code>. The purple element in the left column
- represents a bundle within the VWS’s bundle repository which is imported by the DAO
- bundle using <code class="literal">Import-Bundle</code>. In contrast to a traditional, monolithic
- WAR deployment, the PAR format provides both a logical and physical application boundary
- and simultaneously allows the application to benefit from both the OSGi container and the Virgo Web Server.
- </p><div class="mediaobject"><img src="images/migrating-to-osgi-par-structure.png"></div><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-parplan-decide"></a>Plan or PAR?</h3></div></div></div><p>
- Once you have refactored your existing application into separate OSGi bundles, you then must decide whether to package the bundles into a single PAR file or create a plan that lists the bundles by reference. As described in more detail in preceding sections of this guides, PARs and plans have similar benefits, such as:
- </p><div class="itemizedlist"><ul type="disc"><li>Scoping</li><li>Atomicity, or the ability to deploy and control the bundles as a single unit</li><li>Versioning</li><li>Improved serviceability</li></ul></div><p>
- Plans, the method most recommended by us to create your application, has the following added benefits:
- </p><div class="itemizedlist"><ul type="disc"><li>Guaranteed order of deployment, based on the order in which they are listed in the plan’s XML file</li><li>Ease of sharing content between plans and updating individual plans without having to physically repackage, due to the artifacts being listed by reference.</li><li>Ability to disable scoping and atomicity, if desired.</li></ul></div><p>
- The main benefit of PARS is that, because they physically contain all the required artifacts, you know exactly what bundles are deployed when you deploy the PAR file, in contrast to plans that allow content to be substituted or lost.
- </p><p>
- For details about creating plans and PARs, see <a class="xref" href="ch04s03.html" title="4.3 Creating Plans">Section 4.3, “Creating Plans”</a> and <a class="xref" href="ch04s02.html" title="4.2 Creating PARs and WARs">Section 4.2, “Creating PARs and WARs”</a>, respectively.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch05.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5. Migrating to OSGi </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6. Case study: Migrating the Form Tags sample application</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06.html
deleted file mode 100644
index 9d865fb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06.html
+++ /dev/null
@@ -1,68 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6. Case study: Migrating the Form Tags sample application</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="ch05s02.html" title="5.2 Migrating to a Plan or a PAR"><link rel="next" href="ch06s02.html" title="6.2 Form Tags WAR"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6. Case study: Migrating the Form Tags sample application</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05s02.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch06s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="formtags-case-study"></a>6. Case study: Migrating the Form Tags sample application</h2></div></div></div><p>
- In this chapter we will walk through the steps needed to migrate the
- Form Tags sample application from a standard Java EE WAR to a fully OSGi
- compliant <span class="emphasis"><em>Shared Services WAR</em></span> within a PAR.
- The migration involves four packaging and deployment formats:
- </p><div class="orderedlist"><ol type="1"><li><p>
- <a class="link" href="ch06s02.html" title="6.2 Form Tags WAR">Standard WAR</a>
- </p></li><li><p>
- <a class="link" href="ch06s03.html" title="6.3 Form Tags Shared Libraries WAR">Shared Libraries WAR</a>
- </p></li><li><p>
- <a class="link" href="ch06s04.html" title="6.4 Form Tags Shared Services WAR">Shared Services WAR</a>
- </p></li><li><p>
- <a class="link" href="ch06s05.html" title="6.5 Form Tags PAR">PAR with a shared services WAR</a>
- </p></li></ol></div><p>
- </p><p>
- Each of these migration steps will produce a web application
- that can be deployed and run on the VWS.
- </p><p>
- After summarising the process, an example <code class="literal">plan</code> is shown which is another way of
- packaging and deploying the application.
- </p><p>
- The following image displays the directory structure you should have
- after installing the Form Tags sample. Note however that the release tag
- will typically resemble <code class="literal">2.0.0.RELEASE</code>.
- </p><p><img src="images/formtags-case-study-sample-layout.png"></p><p>
- The <code class="literal">dist</code> directory contains the distributables,
- and the <code class="literal">projects</code> directory contains the source code
- and build scripts.
- </p><p>
- For simplicity, this chapter will focus on the distributables—which are built using Virgo-Build
- rather than on configuring a project in an IDE.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- Pre-packaged distributables are made available in the <code class="literal">dist</code> directory;
- however, if you would like to modify the samples or build them from scratch, you may
- do so using Virgo-Build. Take a look at
- the <code class="literal">README.TXT</code> file in each of the folders under
- the <code class="literal">projects</code> directory in the
- Form Tags sample for instructions.
- </td></tr></table></div><p>
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-introduction"></a>6.1 Overview of the Form Tags Sample Application</h2></div></div></div><p>
- The sample that we will be using is the Form Tags show case sample
- which was provided with Spring 2.0. The Form Tags application has
- been removed from the official Spring 2.5.x distributions; however,
- since it is relatively simple but still contains enough ingredients
- to demonstrate the various considerations required during a migration,
- we have chosen to use it for these examples.
- </p><p>
- The purpose of the Form Tags show case sample was to demonstrate how
- the Spring specific <code class="literal">form:</code> tags, released
- in Spring 2.0, make view development with JSPs and tag libraries easier.
- The Form Tags application consists of a single <code class="literal">UserService</code> which returns a list
- of <code class="literal">Users</code>. Furthermore, the application demonstrates how to list, view,
- and edit <code class="literal">Users</code> in a simple Spring MVC based web application using JSP
- and JSTL.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch05s02.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch06s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5.2 Migrating to a Plan or a PAR </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.2 Form Tags WAR</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s02.html
deleted file mode 100644
index 7073990..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s02.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.2 Form Tags WAR</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch06.html" title="6. Case study: Migrating the Form Tags sample application"><link rel="prev" href="ch06.html" title="6. Case study: Migrating the Form Tags sample application"><link rel="next" href="ch06s03.html" title="6.3 Form Tags Shared Libraries WAR"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.2 Form Tags WAR</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06.html">Prev</a> </td><th width="60%" align="center">6. Case study: Migrating the Form Tags sample application</th><td width="20%" align="right"> <a accesskey="n" href="ch06s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-war"></a>6.2 Form Tags WAR</h2></div></div></div><p>
- We begin with a standard WAR deployment.
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- The Virgo Web Server supports the standard Java EE WAR packaging
- and deployment format as a first-class citizen, and there are many
- benefits to deploying a standard WAR file on the VWS including,
- but not limited to: tooling support, runtime error diagnostics, FFDC
- (first failure data capture), etc.
- In addition, support for standard WAR deployment provides an easy on-ramp
- for trying out the Virgo Web Server with existing web applications.
- </td></tr></table></div><p>
- </p><p>
- The following screen shot displays the directory structure of the
- Form Tags application using the standard WAR format. As you can see,
- there is no deviation from the standard structure and layout, and as
- you would expect, all of the web application’s third-party dependencies
- (for example: Spring, Commons Logging) are packaged as JARs in
- <code class="literal">WEB-INF/lib</code>.
- </p><p><img src="images/formtags-case-study-exploded-war.png"></p><p>
- To deploy this application, simply copy <code class="literal">dist/formtags-war-2.0.0.*.war</code> to
- the <code class="literal">SERVER_HOME/pickup</code> directory for hot deployment.
- </p><p>
- You should then see the VWS produce console output similar to the following:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 14:54:45.135] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-war-2.0.0.RELEASE.war'.
-[2009-07-01 14:54:45.797] fs-watcher
- <SPDE0010I> Deployment of 'formtags-war-2.0.0.RELEASE.war' version '0' completed.
-[2009-07-01 14:54:45.797] Thread-20
- <SPWE0000I> Starting web bundle '/formtags-war-2.0.0.RELEASE'.
-[2009-07-01 14:54:46.380] Thread-20
- <SPWE0001I> Started web bundle '/formtags-war-2.0.0.RELEASE'.
-</pre><p>
- Navigate to <code class="literal">http://localhost:8080/</code> plus the web application context path,
- which in the above case is
- <code class="literal">formtags-war-2.0.0.RELEASE</code>. Thus navigating to
- <code class="literal">http://localhost:8080/formtags-war-2.0.0.RELEASE</code>
- should render the sample application’s welcome page, as displayed in the screen
- shot below.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- For WARs, the default web context path is the name of the WAR file
- without the <code class="literal">.war</code> extension. You can optionally
- specify a context path using the <code class="literal">Web-ContextPath</code> bundle
- manifest header, which will be described in further detail later.
- </td></tr></table></div><p>
- </p><p>
- <img src="images/formtags-case-study-war-webpage.png">
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6. Case study: Migrating the Form Tags sample application </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.3 Form Tags Shared Libraries WAR</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s03.html
deleted file mode 100644
index e607d07..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s03.html
+++ /dev/null
@@ -1,85 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.3 Form Tags Shared Libraries WAR</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch06.html" title="6. Case study: Migrating the Form Tags sample application"><link rel="prev" href="ch06s02.html" title="6.2 Form Tags WAR"><link rel="next" href="ch06s04.html" title="6.4 Form Tags Shared Services WAR"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.3 Form Tags Shared Libraries WAR</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s02.html">Prev</a> </td><th width="60%" align="center">6. Case study: Migrating the Form Tags sample application</th><td width="20%" align="right"> <a accesskey="n" href="ch06s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-war-shared-libs"></a>6.3 Form Tags Shared Libraries WAR</h2></div></div></div><p>
- As mentioned above, a standard WAR file typically packages of all its required
- dependencies in <code class="literal">WEB-INF/lib</code>. The servlet container will
- then add all of the JARs in <code class="literal">WEB-INF/lib</code> to the application’s
- classpath.
- </p><p>
- The first step of the migration towards benefiting from an OSGi
- container is to retrieve the dependencies from the VWS’s bundle
- repository at runtime. This can significantly reduce the time it takes to build
- and deploy the application. It also enables the enforcement of policies
- regarding the use of third-party libraries.
- </p><p>
- The way in which dependencies are declared in an OSGi environment is
- via manifest headers in a bundle’s <code class="literal">/META-INF/MANIFEST.MF</code>.
- As mentioned in <a class="xref" href="ch04.html" title="4. Developing Applications">Chapter 4, <i>Developing Applications</i></a>, there are
- three ways of expressing dependencies: <code class="literal">Import-Package</code>,
- <code class="literal">Import-Bundle</code> and <code class="literal">Import-Library</code>.
- </p><p>
- The Form Tags application uses JSTL standard tag libraries.
- Thus, you need to choose a JSTL provider, for example the
- Apache implementation which comes with the VWS. To use the
- Apache implementation of JSTL, you need to express your dependency
- as outlined in the following manifest listing.
- Because it is a single bundle, <code class="literal">Import-Bundle</code> is
- the simplest and therefore preferred manifest header to use.
- </p><p>
- The Form Tags application requires commons-logging and Spring.
- It would be very painful to have to list all the Spring packages one by one.
- Equally, considering the number of bundles that make up the
- Spring framework, it would be verbose to list each bundle. Therefore
- <code class="literal">Import-Library</code> is the preferred approach
- for expressing the dependency on the Spring framework.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>
- How do you determine the name of a library definition provided
- by the Virgo Web Server?
- Use the <a class="ulink" href="http://www.springsource.com/repository" target="_top">SpringSource Enterprise Bundle Repository</a>.
- </p></td></tr></table></div><p>
- Examine the <code class="literal">/META-INF/MANIFEST.MF</code> in
- <code class="literal">/dist/formtags-shared-libs-*.war</code>:
-</p><pre class="programlisting">
-Manifest-Version: 1.0
-Ant-Version: Apache Ant 1.7.0
-Created-By: 1.5.0_13-119 (Apple Inc.)
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: org.springframework.showcase.formtags-shared-libs
-<span class="bold"><strong>Import-Library</strong></span>: org.springframework.spring;version="[2.5.4,3.1.0)"
-<span class="bold"><strong>Import-Bundle</strong></span>: com.springsource.org.apache.taglibs.standard;version="1
- .1.2"
-</pre><p>
- You can see the <code class="literal">Import-Library</code> and <code class="literal">Import-Bundle</code>
- directives that instruct the VWS to add the appropriate package imports to the bundle
- classpath used by this WAR file.
- </p><p>
- Deploying the shared libraries WAR onto the VWS should result
- in console output similar to the following:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 15:00:14.953] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-shared-libs-2.0.0.RELEASE.war'.
-[2009-07-01 15:00:15.363] fs-watcher
- <SPDE0010I> Deployment of 'org.springframework.showcase.formtags_shared_libs' version '2' completed.
-[2009-07-01 15:00:15.364] Thread-20
- <SPWE0000I> Starting web bundle '/formtags-shared-libs-2.0.0.RELEASE'.
-[2009-07-01 15:00:15.816] Thread-20
- <SPWE0001I> Started web bundle '/formtags-shared-libs-2.0.0.RELEASE'.
-</pre><p>
- Navigating to <code class="literal">http://localhost:8080/formtags-shared-libs-BUILDTAG</code>
- should render the welcome page. Note that for the pre-packaged distributable,
- the <code class="literal">BUILDTAG</code> should be similar to <code class="literal">2.0.0.RELEASE</code>;
- whereas, for a local build the <code class="literal">-BUILDTAG</code> may be completely
- omitted. Please consult the console output, web-based admin console, or log
- to determine the exact context path under which the web application has been deployed.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.2 Form Tags WAR </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.4 Form Tags Shared Services WAR</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s04.html
deleted file mode 100644
index 30e2409..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s04.html
+++ /dev/null
@@ -1,253 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.4 Form Tags Shared Services WAR</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch06.html" title="6. Case study: Migrating the Form Tags sample application"><link rel="prev" href="ch06s03.html" title="6.3 Form Tags Shared Libraries WAR"><link rel="next" href="ch06s05.html" title="6.5 Form Tags PAR"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.4 Form Tags Shared Services WAR</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s03.html">Prev</a> </td><th width="60%" align="center">6. Case study: Migrating the Form Tags sample application</th><td width="20%" align="right"> <a accesskey="n" href="ch06s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-war-shared-services"></a>6.4 Form Tags Shared Services WAR</h2></div></div></div><p>
- The next step in the migration is to deploy the services as a separate
- OSGi bundle which the WAR then references.
- The Form Tags sample has a single service <code class="literal">UserManager</code>.
- </p><p>
- This scenario has two separate deployables, the <code class="literal">service</code> bundle and the WAR file.
- The following image shows the two separate source trees:
- </p><p>
- <img src="images/formtags-case-study-shared-services-eclipse.png">
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">Note that the WAR does not contain the <code class="literal">.domain</code> or
- <code class="literal">.service</code> packages as these will be imported from the separate service bundle.
- </td></tr></table></div><p>
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-war-shared-services-service"></a>The Service Bundle</h3></div></div></div><p>
- The responsibility of the first bundle (<code class="literal">formtags-shared-services-service</code>)
- is to provide the API of the formtags service. This includes both the
- domain and the service API. In the same way that imports are defined
- in the <code class="literal">/META-INF/MANIFEST.MF</code>, so are exports.
- The following is the <code class="literal">/META-INF/MANIFEST.MF</code> listing from the service bundle.
-</p><pre class="programlisting">
-Manifest-Version: 1.0
-Ant-Version: Apache Ant 1.7.0
-Created-By: 1.5.0_13-119 (Apple Inc.)
-Bundle-ManifestVersion: 2
-Bundle-Name: FormTags Service (and implementation)
-Bundle-SymbolicName: org.springframework.showcase.formtags.service-shared-services
-<span class="bold"><strong>Export-Package</strong></span>: org.springframework.showcase.formtags.service,org.spri
- ngframework.showcase.formtags.domain
-Import-Library: org.springframework.spring;version="[2.5.4,3.1.0)"
-</pre><p>
- </p><p>
- The symbolic name of this bundle is
- <code class="literal">org.springframework.showcase.formtags.service-shared-services</code>.
- Note that the name of the bundle typically describes the package
- that the bundle primarily exports.
- If you take a look at the <code class="literal">repository/bundles/ext</code> in the VWS
- directory, you’ll see that names are almost always indicative of the contents of the bundle.
- For this example, however, we have also appended
- "<code class="literal">-shared-services</code>"
- in order to avoid possible clashes with other bundle symbolic names.
- You will see later that the PAR also contains a service bundle.
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- In OSGi, the combination of <code class="literal">Bundle-SymbolicName</code>
- and <code class="literal">Bundle-Version</code> is used to uniquely identify
- a bundle within the OSGi container. Furthermore, when you deploy
- a bundle to the Virgo Web Server, for example via the <code class="literal">pickup</code>
- directory, a bundle’s filename is also used to uniquely identify it for
- the purpose of supporting <span class="emphasis"><em>hot deployment</em></span> via
- the file system.
- </td></tr></table></div><p>
- </p><p>
- As well as exporting types (i.e. the domain classes and service
- API), the service bundle also publishes an implementation of the
- <code class="literal">UserManager</code>. The actual implementation is
- <code class="literal">StubUserManager</code>; however, that should remain an
- implementation detail of this bundle.
- </p><p>
- The fact that this bundle publishes a service is not captured in
- the <code class="literal">/META-INF/MANIFEST.MF</code>, as it is a Spring-DM concept.
- The following image is of <code class="literal">src/main/resources/spring</code>.
- </p><p><img src="images/formtags-case-study-shared-services-service-resources.png"></p><p>
- As you can see there are two Spring configuration files: <code class="literal">module-context.xml</code> and
- <code class="literal">osgi-context.xml</code>.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- These names are abitrary; however, they follow an informal convention:
- <code class="literal">module-context.xml</code> typically bootstraps the Spring context
- (usually delegating to smaller fine grained context files inside another directory), whilst
- <code class="literal">osgi-context.xml</code> contains all the OSGi service exports and references.
- </td></tr></table></div><p>
- The following is a listing of <code class="literal">module-context.xml</code>.
-</p><pre class="programlisting">
-<<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-
-<<span class="hl-tag">beans</span> <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springframework.org/schema/beans"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"</span>>
-
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"userManager"</span>
- <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.showcase.formtags.service.internal.StubUserManager"</span>/>
-
-<<span class="hl-tag">/beans</span>>
-</pre><p>
- As you can see, this simply defines a bean called <code class="literal">userManager</code>.
- The following is a listing of <code class="literal">osgi-context.xml</code>.
-</p><pre class="programlisting">
-<<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">beans:beans</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xmlns:beans</span>=<span class="hl-value">"http://www.springframework.org/schema/beans"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi
- http://www.springframework.org/schema/osgi/spring-osgi.xsd
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd"</span>>
-
- <<span class="hl-tag">service</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"userManager"</span>
- <span class="hl-attribute">interface</span>=<span class="hl-value">"org.springframework.showcase.formtags.service.UserManager"</span>/>
-
-<<span class="hl-tag">/beans:beans</span>>
-</pre><p>
- This single bean definition exports the <code class="literal">userManager</code>
- defined in <code class="literal">module-context.xml</code> to the
- OSGi service registry and makes it available under the public
- <code class="literal">org.springframework.showcase.formtags.service.UserManager</code> API.
- </p><p>
- The service bundle should now be ready to deploy on the VWS.
- So copy <code class="literal">/dist/formtags-shared-services-services*</code>
- to the <code class="literal">SERVER_HOME/pickup</code> directory.
- Output similar to the following should appear in the VWS’s console:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 15:05:03.511] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-shared-services-service-2.0.0.RELEASE.jar'.
-[2009-07-01 15:05:03.688] fs-watcher
- <SPDE0010I> Deployment of 'org.springframework.showcase.formtags.service_shared_services' version '2.0.0.RELEASE' completed.
-</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-war-shared-services-war"></a>Accessing the Service and Types from the WAR</h3></div></div></div><p>
- The WAR file now needs to access the types and service exported
- by the service bundle. The following listing is the WAR’s
- <code class="literal">/META-INF/MANIFEST.MF</code> which imports the types
- exported by the service bundle. The <code class="literal">Import-Bundle</code>
- statement has also been extended to import <code class="literal">org.springframework.osgi.core</code>,
- which is necessary in order to load an OSGi-enabled <code class="literal">WebApplicationContext</code>.
-</p><pre class="programlisting">
-Manifest-Version: 1.0
-Ant-Version: Apache Ant 1.7.0
-Created-By: 1.5.0_13-119 (Apple Inc.)
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: org.springframework.showcase.formtags.web-shared-
- services
-<span class="bold"><strong>Import-Package</strong></span>: org.springframework.showcase.formtags.domain,org.sprin
- gframework.showcase.formtags.service, org.eclipse.virgo.web.dm;version="[1.0,2.1)"
-Import-Library: org.springframework.spring;version="[2.5.4,3.1.0)"
-Import-Bundle: com.springsource.org.apache.taglibs.standard;version="1
- .1.2",<span class="bold"><strong>org.springframework.osgi.core</strong></span>
-</pre><p>
- </p><p>
- In addition to importing the exported types of the service bundle,
- the WAR must also obtain a reference to the <code class="literal">UserManager</code>
- published by the service bundle. The following image shows the directory
- structure of the Shared Services WAR.
- </p><p><img src="images/formtags-case-study-shared-services-war-resources.png"></p><p>
- As you can see in the above image, the Form Tags Shared Services WAR’s
- <code class="literal">/WEB-INF/web.xml</code> directory contains a standard <code class="literal">web.xml</code>
- deployment descriptor, <code class="literal">applicationContext.xml</code> which defines the configuration
- for the <span class="emphasis"><em>root</em></span> <code class="literal">WebApplicationContext</code>, and
- <code class="literal">formtags-servlet.xml</code> which defines the configuration specific to the
- configured <span class="emphasis"><em>formtags</em></span> <code class="literal">DispatcherServlet</code>.
- </p><p>
- As is typical for Spring MVC based web applications, you configure a <code class="literal">ContextLoaderListener</code>
- in <code class="literal">web.xml</code> to load your root <code class="literal">WebApplicationContext</code>; however, to enable your
- <code class="literal">WebApplicationContext</code> to be able to reference services from the OSGi Service Registry,
- you must explicitly set the <code class="literal">contextClass</code> Servlet context parameter to the fully qualified
- class name of a <code class="literal">ConfigurableWebApplicationContext</code> which is OSGi-enabled. When deploying
- Shared Services WARs to the Virgo Web Server, you should use
- <code class="literal">org.eclipse.virgo.web.dm.ServerOsgiBundleXmlWebApplicationContext</code>. This will
- then enable the use of Spring-DM’s <code class="literal"><reference ... /></code> within your root
- <code class="literal">WebApplicationContext</code> (i.e., in <code class="literal">applicationContext.xml</code>).
- The following listing is an excerpt from <code class="literal">/WEB-INF/web.xml</code>.
- </p><pre class="programlisting">
- <<span class="hl-tag">context-param</span>>
- <<span class="hl-tag">param-name</span>>contextClass<<span class="hl-tag">/param-name</span>>
- <<span class="hl-tag">param-value</span>>org.eclipse.virgo.web.dm.ServerOsgiBundleXmlWebApplicationContext<<span class="hl-tag">/param-value</span>>
- <<span class="hl-tag">/context-param</span>>
-
- <<span class="hl-tag">listener</span>>
- <<span class="hl-tag">listener-class</span>>org.springframework.web.context.ContextLoaderListener<<span class="hl-tag">/listener-class</span>>
- <<span class="hl-tag">/listener</span>>
-</pre><p>
- The Form Tags Shared Services WAR contains a <code class="literal">/WEB-INF/applicationContext.xml</code>
- file which is the default configuration location used to create the <span class="emphasis"><em>root</em></span>
- <code class="literal">WebApplicationContext</code> for Spring MVC’s <code class="literal">ContextLoaderListener</code>.
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- As already mentioned, in the OSGi world, bundle configuration
- takes place in the root <code class="literal">/META-INF/</code> directory.
- Typically Spring-DM powered configuration files will live
- there as well (e.g., in <code class="literal">/META-INF/spring/*.xml</code>).
- In a WAR, however, the root <code class="literal">WebApplicationContext</code>
- loaded by <code class="literal">ContextLoaderListener</code> and the <code class="literal">DispatcherServlet’s</code>
- application context typically live in <code class="literal">/WEB-INF/</code>.
- </td></tr></table></div><p>
- The following is the listing of the WAR’s <code class="literal">/WEB-INF/applicationContext.xml</code>.
-</p><pre class="programlisting">
-<<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">beans:beans</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xmlns:beans</span>=<span class="hl-value">"http://www.springframework.org/schema/beans"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi
- http://www.springframework.org/schema/osgi/spring-osgi.xsd
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd"</span>>
-
- <<span class="hl-tag">reference</span> <span class="hl-attribute">id</span>=<span class="hl-value">"userManager"</span>
- <span class="hl-attribute">interface</span>=<span class="hl-value">"org.springframework.showcase.formtags.service.UserManager"</span>/>
-
-<<span class="hl-tag">/beans:beans</span>>
-</pre><p>
- The single bean declaration is retrieving a service that implements
- the <code class="literal">org.springframework.showcase.formtags.service.UserManager</code>
- API from the OSGi Service Registry.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- You might have been expecting a reference to the service bundle,
- but that isn’t how OSGi works. OSGi provides a service
- registry, and this bean definition is accessing a service in that
- registry that meets the specified restriction (i.e. implements
- the specified interface). This leads to a very loosely coupled
- programming model: the WAR really doesn’t care where the implementation
- comes from.
- </td></tr></table></div><p>
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- What happens if there is no service at runtime?
- What if there are multiple services that match the criteria?
- Spring-DM provides a lot of configuration options, including
- whether or not the reference is <span class="emphasis"><em>mandatory</em></span>,
- how long to wait for a service reference, etc. Please consult the
- <a class="ulink" href="http://www.springframework.org/osgi/" target="_top">Spring Dynamic Modules for OSGi</a>
- home page for further information.
- </td></tr></table></div><p>
- </p><p>
- One of the benefits of programming to interfaces is that you are
- decoupled from the actual implementation; Spring-DM provides a proxy. This
- has enormous benefits including the ability to dynamically refresh individual bundles without
- cascading that refresh to unrelated bundles.
- </p><p>
- </p><p>
- To deploy the WAR, copy <code class="literal">/dist/formtags-shared-services-war*</code>
- to the <code class="literal">SERVER_HOME/pickup</code> directory.
- You should then see console output similar to the following:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 15:09:19.819] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-shared-services-war-2.0.0.RELEASE.war'.
-[2009-07-01 15:09:20.167] fs-watcher
- <SPDE0010I> Deployment of 'org.springframework.showcase.formtags.web_shared_services' version '2' completed.
-[2009-07-01 15:09:20.168] Thread-20
- <SPWE0000I> Starting web bundle '/formtags-shared-services-war-2.0.0.RELEASE'.
-[2009-07-01 15:09:20.647] Thread-20
- <SPWE0001I> Started web bundle '/formtags-shared-services-war-2.0.0.RELEASE'.
-</pre>
- Navigating to the appropriate link should render the welcome page.
- </div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.3 Form Tags Shared Libraries WAR </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.5 Form Tags PAR</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s05.html
deleted file mode 100644
index f510eb5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s05.html
+++ /dev/null
@@ -1,97 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.5 Form Tags PAR</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch06.html" title="6. Case study: Migrating the Form Tags sample application"><link rel="prev" href="ch06s04.html" title="6.4 Form Tags Shared Services WAR"><link rel="next" href="ch06s06.html" title="6.6 Summary of the Form Tags Migration"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.5 Form Tags PAR</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s04.html">Prev</a> </td><th width="60%" align="center">6. Case study: Migrating the Form Tags sample application</th><td width="20%" align="right"> <a accesskey="n" href="ch06s06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-par"></a>6.5 Form Tags PAR</h2></div></div></div><p>
- The final step in the migration is that of a full blown
- OSGi application with web support. The Virgo Web Server introduces a
- new packaging and deployment format: the PAR.
-
- A PAR is a standard JAR with a "<code class="literal">.par</code>"
- file extension which contains all of the modules of your
- application (e.g., service, domain, and infrastructure bundles
- as well as a WAR for web applications) in a single deployment unit.
- Moreover, a PAR defines both a physical and logical application boundary.
- </p><p>
- The PAR sample is comprised of four directories, as shown below.
- </p><p><img src="images/formtags-case-study-par-sample.png"></p><p>
- The <code class="literal">formtags-par</code> directory is a build project that
- understands how to create the PAR from its constituent bundles.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-par-granularity"></a>Granularity of the PAR</h3></div></div></div><p>
- Achieving the appropriate level of granularity for your OSGi
- application is more of an art than a science. It helps to look
- at the different requirements:
- </p><div class="table"><a name="formtags-case-study-par-granularity-drivers-table"></a><p class="title"><b>Table 6.1. Granularity drivers</b></p><div class="table-contents"><table summary="Granularity drivers" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Requirement</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Domain/Technical Layering</td><td style="border-bottom: 1.0pt solid ; ">
- Applications can be split either by domain (i.e.,
- by use case or <span class="emphasis"><em>vertically</em></span>) or
- by their technical layers (i.e., <span class="emphasis"><em>horizontally</em></span>).
- Since the Form Tags application essentially has only
- a single use case, the bundles are split by technical layering
- (i.e., domain, service, and web).
- </td></tr><tr><td style="border-right: 1.0pt solid ; ">Refreshability</td><td style="">
- A major benefit of OSGi is that of refreshability: if one bundle
- is changed, only bundles that have a dependency upon
- the exported types need to be refreshed. This has a high impact
- on development time costs as well as production
- costs. However, this can lead to lots of smaller, fine grained
- bundles. An example of this granularity would be to
- separate out the service API and implementation into two different
- bundles. This means that a change in the implementation
- wouldn’t require any other bundles to be refreshed.
- </td></tr></tbody></table></div></div><p><br class="table-break">
- Ultimately the right level of granularity will depend upon your particular application and team.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-par-domain-and-service"></a>Domain and Service Bundles</h3></div></div></div><p>
- The service bundle is identical (except for the <code class="literal">Bundle-SymbolicName</code>) to that
- in the shared-services variation of the sample.
- The PAR has also separated out the domain classes into their own bundle.
- When layering by technical considerations, it is again
- somewhat of an unofficial convention to have a
- <code class="literal">.domain</code> bundle.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-par-par"></a>Constructing the PAR</h3></div></div></div><p>
- Finally we need to construct the PAR itself.
- The following are the contents of the exploded PAR.
- </p><p><img src="images/formtags-case-study-par-exploded.png"></p><p>
- You can see that the PAR itself doesn’t contain any resources or
- Java classes: it simply packages together a related set of bundles
- as a single, logical unit.
- </p><p>
- The PAR does however, contain its own <code class="literal">/META-INF/MANIFEST.MF</code>.
-</p><pre class="programlisting">
-Manifest-Version: 1.0
-Application-SymbolicName: org.springframework.showcase.formtags-par
-Application-Version: 1.0.0
-Application-Name: FormTags Showcase Application (PAR)
-</pre><p>
- For more information on the contents of the PAR’s
- <code class="literal">/META-INF/MANIFEST.MF</code>, please consult
- <a class="xref" href="ch04.html" title="4. Developing Applications">Chapter 4, <i>Developing Applications</i></a>.
- </p><p>
- You can now deploy the PAR on the VWS, for example by copying
- <code class="literal">/dist/formtags-par*.par</code> to the VWS’s
- <code class="literal">pickup</code> directory.
- You should then see console output similar to the following:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 15:13:43.306] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-par-2.0.0.RELEASE.par'.
-[2009-07-01 15:13:44.060] fs-watcher
- <SPDE0010I> Deployment of 'formtags-par' version '2.0.0.RELEASE' completed.
-[2009-07-01 15:13:44.068] Thread-20
- <SPWE0000I> Starting web bundle '/formtags-par'.
-[2009-07-01 15:13:45.212] Thread-20
- <SPWE0001I> Started web bundle '/formtags-par'.
-</pre><p>
- Navigate to <a class="ulink" href="http://localhost:8080/formtags-par" target="_top">http://localhost:8080/formtags-par</a> to see the welcome page.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- Note that the web application’s context path is explicitly defined via the
- <code class="literal">Web-ContextPath</code> manifest header in <code class="literal">/META-INF/MANIFEST.MF</code>
- of the Web application bundle within the PAR.
- </td></tr></table></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06s06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.4 Form Tags Shared Services WAR </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.6 Summary of the Form Tags Migration</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s06.html
deleted file mode 100644
index 7d45094..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s06.html
+++ /dev/null
@@ -1,32 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.6 Summary of the Form Tags Migration</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch06.html" title="6. Case study: Migrating the Form Tags sample application"><link rel="prev" href="ch06s05.html" title="6.5 Form Tags PAR"><link rel="next" href="ch06s07.html" title="6.7 Form Tags as a plan"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.6 Summary of the Form Tags Migration</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s05.html">Prev</a> </td><th width="60%" align="center">6. Case study: Migrating the Form Tags sample application</th><td width="20%" align="right"> <a accesskey="n" href="ch06s07.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-summary"></a>6.6 Summary of the Form Tags Migration</h2></div></div></div><p>
- The Virgo Web Server provides out-of-the-box support for deploying
- standard Java EE WAR files. In addition support for
- <span class="emphasis"><em>Shared Libraries</em></span> and <span class="emphasis"><em>Shared Services</em></span>
- WAR formats provides a logical migration path away from standard,
- monolithic WARs toward OSGi-enable Web applications. The PAR packaging
- and deployment format enables truly fine-grained, loosely-coupled, and
- efficient application development. In general, the migration steps
- presented in this chapter are fairly straightforward, but developers
- should set aside time for some up-front design of the bundles themselves.
- </p><p>
- It is recommended that you take another sample application or
- indeed your own small application and go through this migration
- process yourself. This will help you better understand the concepts and
- principles at work. In addition, it is highly recommended that you
- familiarize yourself with the Eclipse-based
- <span class="emphasis"><em>Virgo Web Server Tools</em></span> support which is discussed in
- <a class="xref" href="ch07.html" title="7. Tooling">Chapter 7, <i>Tooling</i></a>.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06s07.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.5 Form Tags PAR </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.7 Form Tags as a plan</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s07.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s07.html
deleted file mode 100644
index e8cbc8a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch06s07.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.7 Form Tags as a plan</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch06.html" title="6. Case study: Migrating the Form Tags sample application"><link rel="prev" href="ch06s06.html" title="6.6 Summary of the Form Tags Migration"><link rel="next" href="ch07.html" title="7. Tooling"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.7 Form Tags as a plan</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s06.html">Prev</a> </td><th width="60%" align="center">6. Case study: Migrating the Form Tags sample application</th><td width="20%" align="right"> <a accesskey="n" href="ch07.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-as-plan"></a>6.7 Form Tags as a plan</h2></div></div></div><p>
- Plans (see <a class="xref" href="ch04s03.html" title="4.3 Creating Plans">Section 4.3, “Creating Plans”</a>)
- allow us to package and deploy the Form Tags application in a more flexible way.
- Instead of packaging all the bundles of the application into a single PAR file, each bundle can be placed in the repository
- and referred to in a <span class="emphasis"><em>plan</em></span>.
- </p><p>
- The bundles to be placed in a repository in the chain (for example, <code class="literal">repository/usr</code>) are:
-</p><pre class="programlisting">org.springframework.showcase.formtags.domain-2.0.0.RELEASE.jar
-org.springframework.showcase.formtags.service-2.0.0.RELEASE.jar
-org.springframework.showcase.formtags.web-2.0.0.RELEASE.war
-</pre><p>
- which are just those files which were part of the PAR.
- </p><p>
- Here is the contents of a suitable plan file for the Form Tags example:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">plan</span> <span class="hl-attribute">name</span>=<span class="hl-value">"formtags.plan"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"2.0.0"</span> <span class="hl-attribute">scoped</span>=<span class="hl-value">"true"</span> <span class="hl-attribute">atomic</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springsource.org/schema/dm-server/plan"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"
- http://www.springsource.org/schema/dm-server/plan
- http://www.springsource.org/schema/dm-server/plan/springsource-dm-server-plan.xsd"</span>>
-
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"bundle"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.springframework.showcase.formtags.domain_par"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"[2.0,2.1)"</span>/>
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"bundle"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.springframework.showcase.formtags.service_par"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"[2.0,2.1)"</span>/>
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"bundle"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.springframework.showcase.formtags.web_par"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"[2.0,2.1)"</span>/>
-
-<<span class="hl-tag">/plan</span>></pre><p>
- where we have chosen to use any of the artifacts in the version range [2.0,2.1).
- This plan (as a file called, for example, <code class="literal">formtags.plan</code>)
- can be deployed in any of the normal ways (for example, dropped in
- the <code class="literal">pickup</code> directory).
- </p><p>
- When the plan is deployed, the artifacts it references are installed from the repository and deployed in the order given in the plan file.
- Because this plan is scoped and atomic, the collection is given an application scope and is started and stopped as a single unit.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.6 Summary of the Form Tags Migration </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7. Tooling</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07.html
deleted file mode 100644
index d511819..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07.html
+++ /dev/null
@@ -1,47 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7. Tooling</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="ch06s07.html" title="6.7 Form Tags as a plan"><link rel="next" href="ch07s02.html" title="7.2 Running a Virgo Web Server instance within Eclipse"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7. Tooling</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s07.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch07s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="tooling"></a>7. Tooling</h2></div></div></div><p>
- SpringSource provides a set of plug-ins for the Eclipse IDE that streamline the development
- lifecycle of OSGi bundles and PAR applications. The Virgo Web Server Tools build on top
- of the Eclipse Web Tools Project (WTP).
- </p><p>
- The Virgo Web Server Tools support the creation of new OSGi bundle and PAR projects within Eclipse, and the
- conversion of existing projects into OSGi bundle projects. Projects can then be deployed and debugged on a running
- VWS from within Eclipse.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-installation"></a>7.1 Installation</h2></div></div></div><p>
- Currently the Tools support Eclipse 3.5 and Eclipse 3.6 with the corresponding version of WTP. Downloading and
- unzipping the <a class="ulink" href="http://www.eclipse.org/downloads/" target="_top">Eclipse IDE for Java EE Developers</a> is the
- easiest way to start.
- </p><p>
- You may like to change the Eclipse launcher options to increase the values of <code class="literal">-XX:MaxPermSize</code>,
- <code class="literal">-Xms</code>, and <code class="literal">-Xmx</code>. Suggested values, if you have plenty of RAM, are <code class="literal">768m</code>,
- <code class="literal">500m</code>, and <code class="literal">2500m</code>, respectively.
- </p><p>
- Install the dm Server Tools, which include the Virgo Tools, from one of the following update sites depending on
- your version of Eclipse. Releases are, in general, more stable than milestones whereas nightly builds are not for the
- faint of heart.
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <code class="literal">http://dist.springsource.com/release/TOOLS/update/e3.6/</code> (not yet available at the time of writing)
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/release/TOOLS/update/e3.5/</code>
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/milestone/TOOLS/update/e3.6/</code> (recommended at the time of writing)
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/milestone/TOOLS/update/e3.5/</code>
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/snapshot/TOOLS/nightly/e3.6/</code>
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/snapshot/TOOLS/nightly/e3.5/</code>
- </p></li></ul></div><p>
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s07.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch07s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.7 Form Tags as a plan </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.2 Running a Virgo Web Server instance within Eclipse</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s02.html
deleted file mode 100644
index a06d85e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s02.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.2 Running a Virgo Web Server instance within Eclipse</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch07.html" title="7. Tooling"><link rel="prev" href="ch07.html" title="7. Tooling"><link rel="next" href="ch07s03.html" title="7.3 Bundle and Library Provisioning"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.2 Running a Virgo Web Server instance within Eclipse</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07.html">Prev</a> </td><th width="60%" align="center">7. Tooling</th><td width="20%" align="right"> <a accesskey="n" href="ch07s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-running"></a>7.2 Running a Virgo Web Server instance within Eclipse</h2></div></div></div><p>
- After installing the Tools from the update site outlined in the previous section, you
- will be able to configure an instance of the VWS inside Eclipse.
- </p><p>
- To do so bring up the WTP Servers view (i.e.,
- <span class="guimenu">Window</span> → <span class="guisubmenu">Show View</span> → <span class="guimenuitem">Other</span> → <span class="guimenuitem">Server</span> → <span class="guimenuitem">Servers</span>).
- You can now right-click in the view and select "<span class="guimenu">New</span> → <span class="guimenuitem">Server</span>".
- This will bring up a "New Server" dialog. Select "Virgo Web Server v2.1 Server"
- in the "Virgo" category and click "<span class="guibutton">Next</span>".
- </p><p>
- <img src="images/tooling-new-server.png">
- </p><p>
- Within the "New Server Wizard" point to the installation directory of the Virgo Web Server
- and finish the wizard. After finishing the wizard you should see a Virgo Web Server
- entry in the Servers view.
- </p><p>
- To start, stop, and debug the created Virgo Web Server instance use the toolbar or the context
- menu actions of the Servers view.
- </p><p>
- <img src="images/tooling-start-server.png">
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7. Tooling </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.3 Bundle and Library Provisioning</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s03.html
deleted file mode 100644
index 9649053..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s03.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.3 Bundle and Library Provisioning</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch07.html" title="7. Tooling"><link rel="prev" href="ch07s02.html" title="7.2 Running a Virgo Web Server instance within Eclipse"><link rel="next" href="ch07s04.html" title="7.4 Setting up Eclipse Projects"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.3 Bundle and Library Provisioning</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s02.html">Prev</a> </td><th width="60%" align="center">7. Tooling</th><td width="20%" align="right"> <a accesskey="n" href="ch07s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-repository-editor"></a>7.3 Bundle and Library Provisioning</h2></div></div></div><p>
- After successful configuration of an instance of the Virgo Web Server in Eclipse you can use
- the Repository Browser to very easily install bundles and libraries from the remote
- SpringSource Enterprise Bundle Repository.
- </p><p>
- To open the Repository Browser double-click a Virgo Web Server instance in the Servers
- view and select the "Repository" tab in the server editor. Please note that opening of the
- Editor may take a few seconds as the contents of the local repository needs to be indexed
- before opening.
- </p><p>
- <img src="images/tooling-repository-browser.png">
- </p><p>
- The left section of the Repository Browser allows the user to run searches against the
- SpringSource Enterprise Bundle Repository and displays matching results. The search can
- take parts of bundle symbolic names, class or package names and allows wildcards such as
- ‘?’ and ‘*’. By selecting the checkbox left to a matching bundle and/or library and clicking
- the "Download" button it is very easy to install new bundles in the Virgo Web Server. For your
- convenience JARs containing the bundle source code can be automatically downloaded as well.
- </p><p>
- Clicking the "Download" button will trigger an Eclipse background job that will download
- the selected repository artifacts and -- if desired -- the source JARs one after another.
- </p><p>
- The section on the right displays the currently installed bundles and libraries. Bundles
- with available sources are visually marked. You can very easily download missing source
- JARs by using the "Install Sources" button.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.2 Running a Virgo Web Server instance within Eclipse </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.4 Setting up Eclipse Projects</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s04.html
deleted file mode 100644
index 3d17fbd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s04.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.4 Setting up Eclipse Projects</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch07.html" title="7. Tooling"><link rel="prev" href="ch07s03.html" title="7.3 Bundle and Library Provisioning"><link rel="next" href="ch07s05.html" title="7.5 Developing OSGi Bundles"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.4 Setting up Eclipse Projects</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s03.html">Prev</a> </td><th width="60%" align="center">7. Tooling</th><td width="20%" align="right"> <a accesskey="n" href="ch07s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-config"></a>7.4 Setting up Eclipse Projects</h2></div></div></div><p>
- The Virgo Web Server supports different deployment units as discussed earlier in this guide. The
- Tools define specific project types to support the development of OSGi and PAR projects.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-config-creating-new-projects"></a>Creating New Projects</h3></div></div></div><p>
- There are two New Project Wizards available within Eclipse that allow for creating
- new OSGi bundle and PAR projects. The projects created by the wizards are deployable
- to the integrated VWS instance without requiring any additional steps.
- </p><p>
- <img src="images/tooling-new-project-wizards.png">
- </p><p>
- Those wizards create the required <code class="code">MANIFEST.MF</code> file and appropriate manifest
- headers.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-config-migrating-existing-projects"></a>Migrating existing Java Projects</h3></div></div></div><p>
- To migrate an existing Java Project to be used with the VWS, the Tools
- provide a migration action that adds the required meta data to the project.
- The migration will not change your project’s source layout.
- </p><p>
- Use the context menu action of a project in the Package or Project Explorer and select
- "<span class="guimenu">Spring Tools</span> → <span class="guimenuitem">Convert to OSGi bundle project</span>".
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-config-creating-plan-projects"></a>Creating Plan Projects</h3></div></div></div><p>
- This is done by creating a new <span class="emphasis"><em>faceted</em></span> project and then applying the OSGi Plan facet.
- This will give you access to features such as content completion when editing <code class="literal">.plan</code> files
- and deployment to configured servers from within the IDE.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.3 Bundle and Library Provisioning </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.5 Developing OSGi Bundles</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s05.html
deleted file mode 100644
index 5de9138..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s05.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.5 Developing OSGi Bundles</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch07.html" title="7. Tooling"><link rel="prev" href="ch07s04.html" title="7.4 Setting up Eclipse Projects"><link rel="next" href="ch07s06.html" title="7.6 Deploying Applications"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.5 Developing OSGi Bundles</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s04.html">Prev</a> </td><th width="60%" align="center">7. Tooling</th><td width="20%" align="right"> <a accesskey="n" href="ch07s06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-developing"></a>7.5 Developing OSGi Bundles</h2></div></div></div><p>
- The Tools provide functionality that makes developing OSGi bundles,
- especially the editing of MANIFEST.MF files, easier.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-developing-resolving-bundle-dependencies"></a>Resolving Bundle Dependencies</h3></div></div></div><p>
- While working with OSGi bundles, one of the most interesting and challenging aspects is defining
- the package, bundle, and library imports in the manifest and then keeping this in sync
- with your compile classpath either in Ant and Maven or Eclipse. In most cases you would typically
- be required to manually set up the Eclipse classpath. Ultimately, the Eclipse compile
- classpath is still different from the bundle runtime classpath, as normally an entire
- JAR file is being made available on the Eclipse classpath but not necessarily at runtime
- due to the explicit visibility rules defined in <code class="code">Import-Package</code> headers.
- </p><p>
- The Tools address this problem by providing an Eclipse classpath container that
- uses an Virgo Web Server-specific dependency resolution mechanism. This classpath
- container makes resolved dependencies available on the project’s classpath but allows
- only access to those package that are imported explicitly (e.g., via <code class="code">Import-Package</code>)
- or implicitly by using <code class="code">Import-Library</code> or <code class="code">Import-Bundle</code>.
- </p><p>
- To use the automatic dependency resolution, an OSGi bundle or PAR project needs to be
- targeted to a configured Virgo Web Server instance. This can be done from the project’s
- preferences by selecting the runtime on the "Targeted Runtimes" preference page.
- </p><p>
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- In most scenarios it is sufficient to target the PAR project to a runtime. The nested
- bundles will then automatically inherit this setting.
- </td></tr></table></div><p>
- </p><p>
- <img src="images/tooling-classpath.png">
- </p><p>
- After targeting the project or PAR you will see a "Bundle Dependencies" classpath
- container in your Java project. It is now safe to remove any manually configured classpath
- entries.
- </p><p>
- The classpath container will automatically attach Java source code to the classpath
- entries by looking for source JARs next to the binary JARs in the Virgo Web Server’s
- repository. You can also manually override the source code attachment by using the
- properties dialog on a single JAR entry. This manual attachment will always override
- the convention-based attachment.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-developing-editing-manifest-mf"></a>Editing the Manifest</h3></div></div></div><p>
- The Tools provide a Bundle Manifest Editor that assists the developer to create and
- edit MANIFEST.MF files. The editor understands the Virgo Web Server specific headers
- like <code class="code">Import-Library</code> and <code class="code">Import-Bundle</code> and provides content
- assist features while editing source code. Furthermore a Eclipse Form-based UI is also
- available.
- </p><p>
- To open the Bundle Manifest Editor right click a MANIFEST.MF file and select "Bundle
- Manifest Editor" from the "Open With" menu.
- </p><p>
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- Please note that the Virgo Web Server specific manifest headers appear in green color
- to distinguish them from those headers defined in the OSGi specification. This also
- makes navigating much easier.
- </td></tr></table></div><p>
- </p><p>
- <img src="images/tooling-manifest-source-editor.png">
- </p><p>
- The content assist proposals in the source tab as well as in the UI-based tabs are
- resolved from the bundle and library repository of an installed and configured
- Virgo Web Server. Therefore it is important to target the project or PAR to a specific
- VWS instance to indicate to the tooling which bundle repository to use.
- </p><p>
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- If a OSGi bundle project is not targeted to a VWS instance, either
- directory or indirectly via a PAR project’s targetting, the manifest editor will not
- be able to provide content assist for importing packages, bundles, and libraries.
- </td></tr></table></div><p>
- </p><p>
- <img src="images/tooling-manifest-form-ui-editor.png">
- </p><p>
- The Dependencies tab of the Bundle Manifest Editor enables the user to easily download
- and install bundles and libraries from the SpringSource Enterprise Bundle Repository
- by using the "Download..." buttons next to the "Import Bundle" and "Import Library"
- sections.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07s06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.4 Setting up Eclipse Projects </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.6 Deploying Applications</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s06.html
deleted file mode 100644
index 7a74280..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch07s06.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.6 Deploying Applications</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch07.html" title="7. Tooling"><link rel="prev" href="ch07s05.html" title="7.5 Developing OSGi Bundles"><link rel="next" href="ch08.html" title="8. Working with Common Enterprise Libraries"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.6 Deploying Applications</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s05.html">Prev</a> </td><th width="60%" align="center">7. Tooling</th><td width="20%" align="right"> <a accesskey="n" href="ch08.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-deploying"></a>7.6 Deploying Applications</h2></div></div></div><p>
- Currently the Tools support direct deployment of WTP Dynamic Web Projects, OSGi
- bundle and PAR projects to the VWS from directly within Eclipse.
- </p><p>
- To deploy an application to the Virgo Web Server just bring up the context menu on the configured
- VWS runtime in the Servers view and choose "Add or Remove Projects...". In the
- dialog, select the desired project and add it to the list of "Configured projects".
- </p><p>
- <img src="images/tooling-deployed-application.png">
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>
- Deploying and undeploying an application from the VWS certainly works
- while the Virgo Web Server is running, but you can also add or remove projects if the
- VWS is not running.
- </p></td></tr></table></div><p>
- Once an application is deployed on the Virgo Web Server the tooling support will automatically
- pick up any change to source files -- for example, Java and XML context files -- and refresh the
- deployed application on the VWS.
- </p><p>
- The wait time between a change and the actual refresh can be configured
- in the configuration editor of the runtime. To bring up that editor,
- double-click on the configured Virgo Web Server instance in the Servers view.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch08.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.5 Developing OSGi Bundles </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 8. Working with Common Enterprise Libraries</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08.html
deleted file mode 100644
index 033034b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>8. Working with Common Enterprise Libraries</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="ch07s06.html" title="7.6 Deploying Applications"><link rel="next" href="ch08s02.html" title="8.2 Working with DataSources"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">8. Working with Common Enterprise Libraries</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s06.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch08s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="common-libraries"></a>8. Working with Common Enterprise Libraries</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="common-libraries-hibernate"></a>8.1 Working with Hibernate</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="common-libraries-hibernate-import"></a>Importing Hibernate</h3></div></div></div><p>
- Hibernate uses CGLIB to dynamically create subclasses of your entity types at
- runtime. To guarantee that Hibernate and CGLIB can correctly see the types,
- you must add an <code class="literal">Import-Library</code> or <code class="literal">Import-Bundle</code> for the Hibernate library or bundle
- into any bundle that uses Hibernate directly.
- </p><p>
- Additionally, if other bundles in your application contain types to be persisted by Hibernate, then be sure to specify the <code class="code">import-scope</code> directive of the <code class="literal">Import-Bundle</code> header in the bundle that uses Hibernate directly. The <code class="literal">import-scope</code> directive tells Virgo Web Server to implicitly import the bundle into all other bundles that make up the application; this ensures that bundles that indirectly depend on the generated Hibernate classes have access to them, but you do not have to explicitly update their <code class="code">Import-Bundle</code> header, ensuring modularity. For example:
- </p><pre class="programlisting">
-Import-Bundle: com.springsource.org.hibernate;version="[3.2.6.ga,3.2.6.ga]";<span class="bold"><strong>import-scope:=application</strong></span></pre><p>
- The <code class="code">import-scope</code> directive works only for the bundles in a scoped application (PARs or plans.)
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s06.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch08s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.6 Deploying Applications </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 8.2 Working with DataSources</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08s02.html
deleted file mode 100644
index ab91a0e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08s02.html
+++ /dev/null
@@ -1,26 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>8.2 Working with DataSources</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch08.html" title="8. Working with Common Enterprise Libraries"><link rel="prev" href="ch08.html" title="8. Working with Common Enterprise Libraries"><link rel="next" href="ch08s03.html" title="8.3 Weaving and Instrumentation"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">8.2 Working with DataSources</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch08.html">Prev</a> </td><th width="60%" align="center">8. Working with Common Enterprise Libraries</th><td width="20%" align="right"> <a accesskey="n" href="ch08s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="common-libraries-datasources"></a>8.2 Working with DataSources</h2></div></div></div><p>
- Many <code class="literal">DataSource</code> implementations use the <code class="literal">DriverManager</code>
- class which is incompatible with typical OSGi class loading semantics. To get around this,
- use a <code class="literal">DataSource</code> implementation that does not rely on
- <code class="literal">DriverManager</code>. Versions of the following
- <code class="literal">DataSources</code> that are known to work in an OSGi environment are available in the
- <a class="ulink" href="http://www.springsource.com/repository" target="_top">SpringSource Enterprise Bundle Repository</a>.
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <a class="ulink" href="http://www.springsource.com/repository/app/bundle/detail?name=com.springsource.org.apache.commons.dbcp" target="_top">Apache Commons DBCP</a>
- </p></li><li><p>SimpleDriverDataSource available in
- <a class="ulink" href="http://www.springsource.com/repository/app/bundle/detail?name=org.springframework.jdbc" target="_top">Spring JDBC</a>
- 2.5.5 and later
- </p></li></ul></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch08.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch08.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch08s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">8. Working with Common Enterprise Libraries </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 8.3 Weaving and Instrumentation</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08s03.html
deleted file mode 100644
index 5405c41..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08s03.html
+++ /dev/null
@@ -1,23 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>8.3 Weaving and Instrumentation</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch08.html" title="8. Working with Common Enterprise Libraries"><link rel="prev" href="ch08s02.html" title="8.2 Working with DataSources"><link rel="next" href="ch08s04.html" title="8.4 JSP Tag Libraries"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">8.3 Weaving and Instrumentation</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch08s02.html">Prev</a> </td><th width="60%" align="center">8. Working with Common Enterprise Libraries</th><td width="20%" align="right"> <a accesskey="n" href="ch08s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="common-libraries-weaving-instrumentation"></a>8.3 Weaving and Instrumentation</h2></div></div></div><p>
- When using a library that performs bytecode weaving or instrumentation, such as AspectJ,
- OpenJPA or EclipseLink, any types that are woven must be able to see the library doing
- the weaving. This is accomplished by adding an <code class="literal">Import-Library</code> for the
- weaving library into all bundles that are to be woven.
- </p><p>
- Weaving is often used by JPA implementations to transform persisted types. When using a
- JPA provider that uses load-time weaving, an <code class="literal">Import-Library</code> for the
- provider is needed in the bundles containing the persisted types.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch08s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch08.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch08s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">8.2 Working with DataSources </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 8.4 JSP Tag Libraries</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08s04.html
deleted file mode 100644
index 49c824c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch08s04.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>8.4 JSP Tag Libraries</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch08.html" title="8. Working with Common Enterprise Libraries"><link rel="prev" href="ch08s03.html" title="8.3 Weaving and Instrumentation"><link rel="next" href="ch09.html" title="9. Known Issues"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">8.4 JSP Tag Libraries</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch08s03.html">Prev</a> </td><th width="60%" align="center">8. Working with Common Enterprise Libraries</th><td width="20%" align="right"> <a accesskey="n" href="ch09.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="common-libraries-tld"></a>8.4 JSP Tag Libraries</h2></div></div></div><p>
- When using tag libraries within a WAR or Web Bundle, be sure to include an
- <code class="literal">Import-Bundle</code> or <code class="literal">Import-Library</code> for the tag library
- bundle(s). This will ensure that your module can see the TLD definition and implementing types.
- For example, to use the Apache implementation of JSTL, add the following to your bundle’s
- <code class="literal">/META-INF/MANIFEST.MF</code>:
- </p><pre class="programlisting">
-<span class="bold"><strong>Import-Bundle</strong></span>: com.springsource.org.apache.taglibs.standard;version="1.1.2"
-</pre></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch08s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch08.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch09.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">8.3 Weaving and Instrumentation </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 9. Known Issues</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09.html
deleted file mode 100644
index f7fefde..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>9. Known Issues</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="ch08s04.html" title="8.4 JSP Tag Libraries"><link rel="next" href="ch09s02.html" title="9.2 ClassNotFoundError When Creating a Proxy"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9. Known Issues</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch08s04.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch09s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="known-issues"></a>9. Known Issues</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-jpa"></a>9.1 JPA Entity Scanning</h2></div></div></div><p>
- Classpath scanning for JPA entities annotated with <code class="literal">@Entity</code> does
- not work. Describing entities with <code class="literal">@Entity</code> will work, but the
- entities need to be listed explicitly.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch08s04.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch09s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">8.4 JSP Tag Libraries </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 9.2 ClassNotFoundError When Creating a Proxy</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s02.html
deleted file mode 100644
index e9a2cf3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s02.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>9.2 ClassNotFoundError When Creating a Proxy</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch09.html" title="9. Known Issues"><link rel="prev" href="ch09.html" title="9. Known Issues"><link rel="next" href="ch09s03.html" title="9.3 Creating proxies with CGLIB for package-protected types"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9.2 ClassNotFoundError When Creating a Proxy</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch09.html">Prev</a> </td><th width="60%" align="center">9. Known Issues</th><td width="20%" align="right"> <a accesskey="n" href="ch09s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known.issues.proxy"></a>9.2 <code class="classname">ClassNotFoundError</code> When Creating a Proxy</h2></div></div></div><p>
- When creating proxies at runtime, there are circumstances where <code class="classname">ClassNotFoundErrors</code>
- can be generated. These errors happen because the proxy creating bundle does not have visibility into every
- type on the interface of the proxy. You can either put in import statements for all the relevant types or
- add use a service (with visibility of all pertinent types) to create the proxy. Please see
- <a class="ulink" href="http://www.osgi.org/blog/2008/08/classy-solutions-to-tricky-proxies.html" target="_top">this blog entry</a>
- for more details.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch09.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch09.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch09s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">9. Known Issues </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 9.3 Creating proxies with CGLIB for package-protected types</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s03.html
deleted file mode 100644
index c00fa50..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s03.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>9.3 Creating proxies with CGLIB for package-protected types</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch09.html" title="9. Known Issues"><link rel="prev" href="ch09s02.html" title="9.2 ClassNotFoundError When Creating a Proxy"><link rel="next" href="ch09s04.html" title="9.4 Tomcat Restrictions"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9.3 Creating proxies with CGLIB for package-protected types</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch09s02.html">Prev</a> </td><th width="60%" align="center">9. Known Issues</th><td width="20%" align="right"> <a accesskey="n" href="ch09s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known.issues.cglib"></a>9.3 Creating proxies with CGLIB for package-protected types</h2></div></div></div><p>
- In traditional Java EE applications user types are loaded by the same <code class="classname">ClassLoader</code> as
- CGLIB. This allows CGLIB to proxy package-protected types. In OSGi environments, user types and CGLIB will
- most likely be packaged in separate bundles. This results in the user types and CGLIB being loaded by
- different <code class="classname">ClassLoaders</code>. This prevents CGLIB from proxying any package-protected types.
- </p><p>
- The workaround for this issue is to make all types that require proxying public.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch09s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch09.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch09s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">9.2 ClassNotFoundError When Creating a Proxy </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 9.4 Tomcat Restrictions</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s04.html
deleted file mode 100644
index 461c879..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s04.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>9.4 Tomcat Restrictions</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch09.html" title="9. Known Issues"><link rel="prev" href="ch09s03.html" title="9.3 Creating proxies with CGLIB for package-protected types"><link rel="next" href="ch09s05.html" title="9.5 Default Web Application Bundle Headers"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9.4 Tomcat Restrictions</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch09s03.html">Prev</a> </td><th width="60%" align="center">9. Known Issues</th><td width="20%" align="right"> <a accesskey="n" href="ch09s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-tomcat-restrictions"></a>9.4 Tomcat Restrictions</h2></div></div></div><p>
- The following Tomcat features are not supported.
- </p><div class="itemizedlist"><ul type="disc"><li><code class="literal"><Context></code> elements.
- </li></ul></div><p>
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch09s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch09.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch09s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">9.3 Creating proxies with CGLIB for package-protected types </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 9.5 Default Web Application Bundle Headers</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s05.html
deleted file mode 100644
index bb8a9a8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/ch09s05.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>9.5 Default Web Application Bundle Headers</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="ch09.html" title="9. Known Issues"><link rel="prev" href="ch09s04.html" title="9.4 Tomcat Restrictions"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9.5 Default Web Application Bundle Headers</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch09s04.html">Prev</a> </td><th width="60%" align="center">9. Known Issues</th><td width="20%" align="right"> </td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-web-bundle-default-headers"></a>9.5 Default Web Application Bundle Headers</h2></div></div></div><p>
- The Gemini Web container conforms to the OSGi Web Applications specification and does not apply default values
- to the headers of a Web Application Bundle. However, SpringSource dm Server 2.0.x applies default values
- to certain headers (see below) and so Virgo modifies the behaviour of Gemini Web so that it applies default
- values consistently with dm Server 2.0.x.
- </p><p>
- This restriction is intended to ease migration to Virgo 2.1.0 and may be removed in a later release.
- </p><p>
- The following defaults are applied to a Web Application Bundle:
- </p><div class="itemizedlist"><ul type="disc"><li><code class="literal">Bundle-ManifestVersion</code> is set to <code class="literal">2</code></li><li><code class="literal">Bundle-SymbolicName</code> is generated from the path from which the bundle was installed
- </li><li><code class="literal">Bundle-ClassPath</code> is set to <code class="literal">WEB-INF/classes</code> followed by the JARs in
- <code class="literal">WEB-INF/lib</code> in an unspecified order, followed by any transitive dependencies declared
- by the JARs in <code class="literal">WEB-INF/lib</code></li><li><code class="literal">Import-Package</code> is extended to import a fixed set of <code class="classname">javax.servlet.*</code>
- packages, <code class="classname">javax.el</code>, and packages which are exported by the system bundle but not
- provided by the bundle (see <a class="link" href="ch04s06.html" title="4.6 Automatic Imports for the Web subsystem">Automatic Imports
- for the Web Personality</a> for details)
- </li></ul></div><p>
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch09s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch09.html">Up</a></td><td width="40%" align="right"> </td></tr><tr><td width="40%" align="left" valign="top">9.4 Tomcat Restrictions </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> </td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/css/highlight.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/css/highlight.css
deleted file mode 100644
index 2cb42fd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/css/highlight.css
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- code highlight CSS resembling the Eclipse IDE default color schema and the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-.hl-keyword {
- color: #7F0055;
- font-weight: bold;
-}
-
-.hl-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-multiline-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-tag {
- color: #646571;
-}
-
-.hl-attribute {
- color: #7F0055;
-}
-
-.hl-value {
- color: #0093CF;
-}
-
-.hl-string {
- color: #0093CF;
-}
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/css/stylesheet.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/css/stylesheet.css
deleted file mode 100644
index b02eca7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/css/stylesheet.css
+++ /dev/null
@@ -1,77 +0,0 @@
-@IMPORT url("highlight.css");
-
-/*
- code CSS resembling the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-html {
- padding: 0pt;
- margin: 0pt;
-}
-
-body {
- margin-left: 10%;
- margin-right: 10%;
- color: #111111;
- font-family: Arial, Sans-serif;
-}
-
-div {
- margin: 0pt;
-}
-
-p {
- text-align: justify;
-}
-
-hr {
- border: 1px solid gray;
- background: gray;
-}
-
-a {
- color: #002E62; /* Dark Blue */
-}
-
-a:visited {
- color: #646571; /* Gray */
-}
-
-a:hover, a:active {
- color: #0093CF; /* Light Blue */
-}
-
-h1,h2,h3,h4 {
- color: #002E62;
- font-family: Arial, Sans-serif;
-}
-
-pre {
- line-height: 1.0;
- color: black;
-}
-
-pre.programlisting {
- font-size: 10pt;
- padding: 7pt 3pt;
- border: 1pt solid black;
- background: #eeeeee;
- clear: both;
-}
-
-div.table {
- margin: 1em;
- padding: 0.5em;
- text-align: center;
-}
-
-div.table table {
- display: table;
- width: 100%;
-}
-
-div.table td {
- padding-left: 7px;
- padding-right: 7px;
-}
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependencies.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependencies.png
deleted file mode 100644
index a9248a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependencies.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependencies.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependencies.vsd
deleted file mode 100644
index e818f75..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependencies.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongLayers.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongLayers.png
deleted file mode 100644
index a9248a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongLayers.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongLayers.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongLayers.vsd
deleted file mode 100644
index e818f75..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongLayers.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongVerticals.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongVerticals.png
deleted file mode 100644
index 2147884..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongVerticals.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongVerticals.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongVerticals.vsd
deleted file mode 100644
index 1e26e17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/BundleDependenciesAlongVerticals.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithLibrary.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithLibrary.png
deleted file mode 100644
index 2b7196b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithLibrary.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithLibrary.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithLibrary.vsd
deleted file mode 100644
index 0a716a5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithLibrary.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithoutLibrary.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithoutLibrary.png
deleted file mode 100644
index 3dcc89e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithoutLibrary.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithoutLibrary.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithoutLibrary.vsd
deleted file mode 100644
index bcc9133..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/DependenciesWithoutLibrary.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/PlatformBigPicture.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/PlatformBigPicture.png
deleted file mode 100644
index 224c55e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/PlatformBigPicture.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/PlatformBigPicture.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/PlatformBigPicture.vsd
deleted file mode 100644
index 0107497..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/PlatformBigPicture.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/annot-close.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/annot-close.png
deleted file mode 100644
index b9e1a0d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/annot-close.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/annot-open.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/annot-open.png
deleted file mode 100644
index 71040ec..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/annot-open.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/architecture-bundle-versioning.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/architecture-bundle-versioning.graffle
deleted file mode 100644
index 3584d15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/architecture-bundle-versioning.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/architecture-bundle-versioning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/architecture-bundle-versioning.png
deleted file mode 100644
index c3bf8a8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/architecture-bundle-versioning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/blank.png
deleted file mode 100644
index 764bf4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-layers.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-layers.graffle
deleted file mode 100644
index f236f85..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-layers.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-layers.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-layers.png
deleted file mode 100644
index 2b4cf89..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-layers.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-verticals.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-verticals.graffle
deleted file mode 100644
index 60d193d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-verticals.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-verticals.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-verticals.png
deleted file mode 100644
index d338626..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/bundle-dependencies-verticals.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/1.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/1.gif
deleted file mode 100644
index 9e7a87f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/1.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/1.png
deleted file mode 100644
index 7d47343..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/1.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/1.svg
deleted file mode 100644
index e2e87dc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/1.svg
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M10.428,10.411h0.56c3.78,0,4.788-1.96,4.872-3.444h3.22v19.88h-3.92V13.154h-4.732V10.411z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/10.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/10.gif
deleted file mode 100644
index e80f7f8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/10.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/10.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/10.png
deleted file mode 100644
index 997bbc8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/10.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/10.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/10.svg
deleted file mode 100644
index 4740f58..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/10.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.815,10.758h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.11H3.815V10.758z"/>
- <path style="fill:#FFFFFF;" d="M22.175,7.806c4.009,0,5.904,2.76,5.904,8.736c0,5.975-1.896,8.76-5.904,8.76
- c-4.008,0-5.904-2.785-5.904-8.76C16.271,10.566,18.167,7.806,22.175,7.806z M22.175,22.613c1.921,0,2.448-1.68,2.448-6.071
- c0-4.393-0.527-6.049-2.448-6.049c-1.92,0-2.448,1.656-2.448,6.049C19.727,20.934,20.255,22.613,22.175,22.613z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/11.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/11.gif
deleted file mode 100644
index 67f91a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/11.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/11.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/11.png
deleted file mode 100644
index ce47dac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/11.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/11.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/11.svg
deleted file mode 100644
index 09a0b2c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/11.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.209,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H5.209V10.412z"/>
- <path style="fill:#FFFFFF;" d="M18.553,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.359V12.764h-4.056V10.412z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/12.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/12.gif
deleted file mode 100644
index 54c4b42..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/12.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/12.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/12.png
deleted file mode 100644
index 31daf4e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/12.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/12.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/12.svg
deleted file mode 100644
index 9794044..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/12.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/13.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/13.gif
deleted file mode 100644
index dd5d7d9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/13.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/13.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/13.png
deleted file mode 100644
index 14021a8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/13.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/13.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/13.svg
deleted file mode 100644
index 64268bb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/13.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M20.611,14.636h0.529c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.288-2.185-2.137-2.185
- c-2.303,0-2.303,2.185-2.303,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.279,0,5.279,1.152,5.279,4.752
- c0,1.728-1.08,2.808-2.039,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/14.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/14.gif
deleted file mode 100644
index 3d7a952..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/14.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/14.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/14.png
deleted file mode 100644
index 64014b7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/14.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/14.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/14.svg
deleted file mode 100644
index 469aa97..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/14.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.146V10.412z"/>
- <path style="fill:#FFFFFF;" d="M28.457,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L22.746,7.46h3.815v10.656h1.896V20.732z
- M23.201,18.116c0-4.128,0.072-6.792,0.072-7.32h-0.048l-4.272,7.32H23.201z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/15.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/15.gif
deleted file mode 100644
index 1c9183d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/15.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/15.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/15.png
deleted file mode 100644
index 0d65765..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/15.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/15.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/15.svg
deleted file mode 100644
index 8202233..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/15.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M19.342,14.943c0.625-0.433,1.392-0.937,3.048-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.176,6.121-6.192,6.121c-2.664,0-5.376-1.584-5.544-5.016h3.36c0.144,1.391,0.888,2.326,2.376,2.326
- c1.607,0,2.544-1.367,2.544-3.191c0-1.512-0.72-3.047-2.496-3.047c-0.456,0-1.608,0.023-2.256,1.223l-3-0.143l1.176-9.361h9.36
- v2.832h-6.937L19.342,14.943z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/16.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/16.svg
deleted file mode 100644
index 01d6bf8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/16.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M24.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L19.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H24.309z M22.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C24.62,16.868,23.229,16.172,22.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/17.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/17.svg
deleted file mode 100644
index 0a04c55..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/17.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M27.838,11.006c-1.631,1.776-5.807,6.816-6.215,14.16h-3.457c0.36-6.816,4.632-12.24,6.072-13.776
- h-8.472l0.072-2.976h12V11.006z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/18.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/18.svg
deleted file mode 100644
index 1cb891b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/18.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/19.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/19.svg
deleted file mode 100644
index e6fbb17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/19.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.746h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.041h-3.36V13.097H4.146V10.746z"/>
- <path style="fill:#FFFFFF;" d="M20.225,20.898v0.023c0.192,1.176,0.936,1.68,1.968,1.68c1.392,0,2.783-1.176,2.808-4.752
- l-0.048-0.049c-0.768,1.152-2.088,1.441-3.24,1.441c-3.264,0-5.16-2.473-5.16-5.329c0-4.176,2.472-6.12,5.808-6.12
- c5.904,0,6,6.36,6,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.391H20.225z M22.434,16.553
- c1.176,0,2.472-0.84,2.472-2.855c0-1.944-0.841-3.145-2.568-3.145c-0.864,0-2.424,0.433-2.424,2.88
- C19.913,16.001,21.161,16.553,22.434,16.553z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/2.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/2.gif
deleted file mode 100644
index 94d42a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/2.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/2.png
deleted file mode 100644
index 5d09341..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/2.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/2.svg
deleted file mode 100644
index 07d0339..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/2.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M9.668,12.328c0-6.469,4.732-7.028,6.496-7.028c3.808,0,6.833,2.24,6.833,6.271
- c0,3.416-2.213,5.152-4.145,6.469c-2.632,1.848-4.004,2.744-4.452,3.668h8.624v3.472H9.444c0.14-2.324,0.308-4.76,4.62-7.896
- c3.584-2.604,5.012-3.612,5.012-5.853c0-1.315-0.84-2.828-2.744-2.828c-2.744,0-2.828,2.269-2.856,3.725H9.668z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/20.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/20.svg
deleted file mode 100644
index ccbfd40..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/20.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/21.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/21.svg
deleted file mode 100644
index 93ec53f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/21.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.306,13.151c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392v2.976H5.114c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H5.306z"/>
- <path style="fill:#FFFFFF;" d="M19.49,10.079h0.48c3.239,0,4.104-1.681,4.176-2.952h2.761v17.04h-3.361V12.431H19.49V10.079z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/22.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/22.svg
deleted file mode 100644
index f48c5f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/22.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/23.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/23.svg
deleted file mode 100644
index 6624212..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/23.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M21.612,14.636h0.528c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.287-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.521-0.911,2.521-2.808
- c0-2.328-2.257-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/24.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/24.svg
deleted file mode 100644
index a3d5525..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/24.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H4.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H4.972z"/>
- <path style="fill:#FFFFFF;" d="M30.124,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L24.412,7.46h3.816v10.656h1.896V20.732z
- M24.868,18.116c0-4.128,0.071-6.792,0.071-7.32h-0.047l-4.272,7.32H24.868z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/25.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/25.svg
deleted file mode 100644
index 56614a9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/25.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.676,14.276c0.624-0.433,1.393-0.937,3.049-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.177,6.12-6.193,6.12c-2.664,0-5.375-1.584-5.543-5.016h3.36c0.144,1.392,0.889,2.327,2.376,2.327
- c1.608,0,2.544-1.367,2.544-3.191c0-1.513-0.72-3.048-2.496-3.048c-0.455,0-1.607,0.023-2.256,1.224l-3-0.144l1.176-9.36h9.36
- v2.832h-6.937L20.676,14.276z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/26.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/26.svg
deleted file mode 100644
index 56faeac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/26.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M25.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L20.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H25.309z M23.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C25.62,16.868,24.229,16.172,23.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/27.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/27.svg
deleted file mode 100644
index a75c812..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/27.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M29.172,10.34c-1.632,1.776-5.808,6.816-6.216,14.16H19.5c0.36-6.816,4.632-12.24,6.072-13.776
- H17.1l0.072-2.976h12V10.34z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/28.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/28.svg
deleted file mode 100644
index 7f8cf1a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/28.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/29.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/29.svg
deleted file mode 100644
index cb63adf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/29.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.893,20.564v0.023c0.191,1.176,0.936,1.68,1.967,1.68c1.393,0,2.785-1.176,2.809-4.752
- l-0.048-0.048c-0.769,1.152-2.088,1.44-3.24,1.44c-3.264,0-5.16-2.473-5.16-5.328c0-4.176,2.472-6.12,5.807-6.12
- c5.904,0,6.001,6.36,6.001,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.392H20.893z M23.1,16.22
- c1.176,0,2.473-0.84,2.473-2.855c0-1.944-0.84-3.145-2.568-3.145c-0.863,0-2.424,0.433-2.424,2.88
- C20.58,15.668,21.828,16.22,23.1,16.22z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/3.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/3.gif
deleted file mode 100644
index dd3541a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/3.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/3.png
deleted file mode 100644
index ef7b700..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/3.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/3.svg
deleted file mode 100644
index 918be80..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/3.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M15.127,14.005h0.616c1.176,0,3.332-0.112,3.332-2.688c0-0.728-0.336-2.548-2.492-2.548
- c-2.688,0-2.688,2.548-2.688,3.248h-3.64c0-3.724,2.1-6.384,6.58-6.384c2.66,0,6.16,1.344,6.16,5.544
- c0,2.016-1.261,3.276-2.38,3.78v0.056c0.699,0.196,2.996,1.232,2.996,4.62c0,3.752-2.772,6.412-6.776,6.412
- c-1.876,0-6.916-0.42-6.916-6.636h3.836l-0.028,0.027c0,1.064,0.28,3.473,2.912,3.473c1.568,0,2.94-1.064,2.94-3.276
- c0-2.716-2.632-2.828-4.452-2.828V14.005z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/30.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/30.svg
deleted file mode 100644
index dc43ba1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/30.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M8.268,14.636h0.528c1.008,0,2.856-0.096,2.856-2.304c0-0.624-0.288-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.376,5.496-5.808,5.496
- c-1.608,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/4.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/4.gif
deleted file mode 100644
index 4bcbf7e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/4.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/4.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/4.png
deleted file mode 100644
index adb8364..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/4.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/4.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/4.svg
deleted file mode 100644
index 8eb6a53..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/4.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M21.891,20.784h-2.212v4.396h-3.92v-4.396h-7.84v-3.389L15.227,5.3h4.452v12.432h2.212V20.784z
- M15.759,17.731c0-4.815,0.084-7.924,0.084-8.54h-0.056l-4.984,8.54H15.759z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/5.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/5.gif
deleted file mode 100644
index 1c62b4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/5.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/5.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/5.png
deleted file mode 100644
index 4d7eb46..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/5.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/5.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/5.svg
deleted file mode 100644
index ca7a9f2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/5.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M14.035,14.252c0.728-0.504,1.624-1.092,3.556-1.092c2.66,0,6.02,1.848,6.02,6.411
- c0,2.717-1.372,7.141-7.224,7.141c-3.108,0-6.272-1.849-6.468-5.853h3.92c0.168,1.624,1.036,2.717,2.772,2.717
- c1.876,0,2.968-1.597,2.968-3.725c0-1.764-0.839-3.556-2.912-3.556c-0.532,0-1.876,0.028-2.632,1.428l-3.5-0.168l1.372-10.92
- h10.919v3.304h-8.092L14.035,14.252z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/6.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/6.gif
deleted file mode 100644
index 23bc555..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/6.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/6.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/6.png
deleted file mode 100644
index 0ba694a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/6.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/6.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/6.svg
deleted file mode 100644
index 783a0b9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/6.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M19.106,10.673c-0.112-1.12-0.84-1.904-2.296-1.904c-2.548,0-3.136,2.912-3.276,5.488l0.056,0.056
- c0.532-0.728,1.512-1.651,3.724-1.651c4.116,0,6.077,3.164,6.077,6.131c0,4.34-2.66,7.252-6.497,7.252
- c-6.02,0-7.196-5.039-7.196-9.996c0-3.78,0.504-10.416,7.392-10.416c0.812,0,3.08,0.308,4.061,1.288
- c1.092,1.063,1.483,1.652,1.848,3.752H19.106z M16.614,15.797c-1.484,0-2.996,0.924-2.996,3.416c0,2.156,1.232,3.697,3.108,3.697
- c1.428,0,2.745-1.094,2.745-3.781C19.471,16.609,17.846,15.797,16.614,15.797z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/7.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/7.gif
deleted file mode 100644
index e55ce89..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/7.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/7.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/7.png
deleted file mode 100644
index 472e96f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/7.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/7.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/7.svg
deleted file mode 100644
index 59b3714..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/7.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M24.28,9.66c-1.904,2.071-6.776,7.951-7.252,16.52h-4.032c0.42-7.952,5.404-14.28,7.084-16.072
- h-9.884l0.084-3.472h14V9.66z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/8.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/8.gif
deleted file mode 100644
index 49375e0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/8.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/8.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/8.png
deleted file mode 100644
index 5e60973..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/8.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/8.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/8.svg
deleted file mode 100644
index c1803a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/8.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M16.28,26.712c-5.124,0-6.888-3.332-6.888-6.048c0-1.009,0-3.641,3.024-5.04
- c-1.568-0.784-2.408-2.044-2.408-3.893c0-3.388,2.716-5.432,6.188-5.432c4.116,0,6.3,2.436,6.3,5.18
- c0,1.708-0.7,3.164-2.296,4.004c1.903,0.952,2.968,2.212,2.968,4.788C23.168,22.792,21.544,26.712,16.28,26.712z M16.224,17.332
- c-1.428,0-2.8,0.924-2.8,3.08c0,1.903,1.092,3.164,2.884,3.164c2.043,0,2.829-1.765,2.829-3.137
- C19.137,19.04,18.408,17.332,16.224,17.332z M18.744,11.899c0-1.512-1.036-2.464-2.296-2.464c-1.764,0-2.688,1.008-2.688,2.464
- c0,1.177,0.868,2.464,2.548,2.464C17.848,14.363,18.744,13.328,18.744,11.899z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/9.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/9.gif
deleted file mode 100644
index da12a4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/9.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/9.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/9.png
deleted file mode 100644
index a0676d2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/9.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/9.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/9.svg
deleted file mode 100644
index bc149d3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/callouts/9.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M13.953,21.921v0.027c0.224,1.372,1.092,1.961,2.296,1.961c1.624,0,3.248-1.372,3.276-5.545
- l-0.057-0.056c-0.896,1.344-2.436,1.68-3.78,1.68c-3.808,0-6.02-2.884-6.02-6.216c0-4.872,2.884-7.14,6.776-7.14
- c6.888,0,7,7.42,7,10.22c0,7.7-3.641,10.192-7.224,10.192c-3.388,0-5.824-1.96-6.16-5.124H13.953z M16.529,16.853
- c1.372,0,2.884-0.979,2.884-3.332c0-2.268-0.98-3.668-2.996-3.668c-1.008,0-2.828,0.504-2.828,3.36
- C13.589,16.209,15.045,16.853,16.529,16.853z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.gif
deleted file mode 100644
index d9f5e5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.png
deleted file mode 100644
index 5b7809c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.tif
deleted file mode 100644
index 4a28294..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/caution.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-complexDomain-skeleton-bundles.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-complexDomain-skeleton-bundles.png
deleted file mode 100644
index 2207769..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-complexDomain-skeleton-bundles.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-complexDomain-web-page.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-complexDomain-web-page.png
deleted file mode 100644
index 845c01c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-complexDomain-web-page.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-dataSource-classNotFound-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-dataSource-classNotFound-eclipse.png
deleted file mode 100644
index 6021712..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-dataSource-classNotFound-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-add-infrastructure-to-par.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-add-infrastructure-to-par.png
deleted file mode 100644
index 426fa6c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-add-infrastructure-to-par.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-created-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-created-eclipse.png
deleted file mode 100644
index b1481e5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-created-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-databasepopulator-before-manifest.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-databasepopulator-before-manifest.png
deleted file mode 100644
index 036661d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-databasepopulator-before-manifest.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-dbcp-manifest.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-dbcp-manifest.png
deleted file mode 100644
index 6085953..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-dbcp-manifest.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-empty-nested-bundles-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-empty-nested-bundles-eclipse.png
deleted file mode 100644
index 5251214..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-empty-nested-bundles-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-server-with-par-project-deployed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-server-with-par-project-deployed.png
deleted file mode 100644
index 4fb3842..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-server-with-par-project-deployed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-wizard-step1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-wizard-step1.png
deleted file mode 100644
index d679459..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-wizard-step1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-wizard-step2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-wizard-step2.png
deleted file mode 100644
index c4b2934..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-infrastructure-wizard-step2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-par-created-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-par-created-eclipse.png
deleted file mode 100644
index e430a15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-par-created-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-par-wizard-step1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-par-wizard-step1.png
deleted file mode 100644
index bacf639..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-par-wizard-step1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-par-wizard-step2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-par-wizard-step2.png
deleted file mode 100644
index 75e3066..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-par-wizard-step2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb-dependencies.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb-dependencies.png
deleted file mode 100644
index c9ea674..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb-dependencies.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb-search-results.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb-search-results.png
deleted file mode 100644
index a3d4e7d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb-search-results.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb-start.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb-start.png
deleted file mode 100644
index f797c79..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb-start.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb.png
deleted file mode 100644
index 637aa77..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-repo-hsqldb.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-eclipse-full.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-eclipse-full.png
deleted file mode 100644
index 504b0e0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-eclipse-full.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-eclipse.png
deleted file mode 100644
index 3465934..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-server.png
deleted file mode 100644
index 49528cd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-web-eclipse-complete.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-web-eclipse-complete.png
deleted file mode 100644
index e05710c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-web-eclipse-complete.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-web-page.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-web-page.png
deleted file mode 100644
index d6be34b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-simpleDomain-web-page.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-user-repository.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-user-repository.png
deleted file mode 100644
index cdfa61a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/create-new-par-user-repository.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/developing-applications-web-module-format.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/developing-applications-web-module-format.png
deleted file mode 100644
index 11ac784..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/developing-applications-web-module-format.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/draft.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/draft.png
deleted file mode 100644
index 59673fe..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/draft.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-exploded-war.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-exploded-war.png
deleted file mode 100644
index befa8af..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-exploded-war.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-par-exploded-web.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-par-exploded-web.png
deleted file mode 100644
index 70489ad..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-par-exploded-web.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-par-exploded.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-par-exploded.png
deleted file mode 100644
index 7eef71b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-par-exploded.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-par-sample.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-par-sample.png
deleted file mode 100644
index 6d795f7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-par-sample.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-sample-layout.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-sample-layout.png
deleted file mode 100644
index eb8650e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-sample-layout.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-shared-services-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-shared-services-eclipse.png
deleted file mode 100644
index 7a39ac0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-shared-services-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-shared-services-service-resources.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-shared-services-service-resources.png
deleted file mode 100644
index 2eeed44..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-shared-services-service-resources.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-shared-services-war-resources.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-shared-services-war-resources.png
deleted file mode 100644
index 156debd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-shared-services-war-resources.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-war-webpage.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-war-webpage.png
deleted file mode 100644
index c537744..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/formtags-case-study-war-webpage.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/home.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/home.gif
deleted file mode 100644
index 6784f5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/home.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/home.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/home.png
deleted file mode 100644
index cbb711d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/home.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/home.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/home.svg
deleted file mode 100644
index e803a31..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/home.svg
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st1 "fill:none;stroke:none;">
- <!ENTITY st2 "fill:#000000;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:6.3469;stroke-linejoin:round;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st0;">
- <g style="&st4;">
- <path style="&st3;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M41.8,22.8l-5.1-4.2v-0.1L31,13.7v0l-6.5-5.5C24.2,8,24,8,23.8,8.2L6.2,22.9c-0.1,0.1-0.1,0.3,0.1,0.3h1.6H10h28.1h1.2h2.3c0.2,0,0.4-0.2,0.2-0.4z"/>
- <path d="M35.8,16.8l0-5.1c0-0.2-0.1-0.4-0.3-0.4h-3.2c-0.2,0-0.3,0.1-0.3,0.3v2.2l3.9,2.9z"/>
- <path d="M11.9,24.7V37c0,0.3,0.1,0.4,0.3,0.4h23.6c0.3,0,0.4-0.2,0.4-0.4V24.7H11.9z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st1;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-bundle_import-library.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-bundle_import-library.graffle
deleted file mode 100644
index a94bfeb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-bundle_import-library.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-bundle_import-library.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-bundle_import-library.png
deleted file mode 100644
index c838636..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-bundle_import-library.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-package.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-package.graffle
deleted file mode 100644
index f0ec0a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-package.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-package.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-package.png
deleted file mode 100644
index a38eb77..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/import-package.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.gif
deleted file mode 100644
index 6795d9a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.png
deleted file mode 100644
index 12c90f6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.tif
deleted file mode 100644
index 184de63..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/important.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/introduction-architecture.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/introduction-architecture.graffle
deleted file mode 100644
index 8d8b8ff..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/introduction-architecture.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/introduction-architecture.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/introduction-architecture.png
deleted file mode 100644
index 0656d77..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/introduction-architecture.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migrating-to-osgi-par-structure.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migrating-to-osgi-par-structure.graffle
deleted file mode 100644
index f773720..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migrating-to-osgi-par-structure.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migrating-to-osgi-par-structure.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migrating-to-osgi-par-structure.png
deleted file mode 100644
index a689b39..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migrating-to-osgi-par-structure.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migration-path-war-to-shsrv.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migration-path-war-to-shsrv.graffle
deleted file mode 100644
index c69bc09..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migration-path-war-to-shsrv.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migration-path-war-to-shsrv.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migration-path-war-to-shsrv.png
deleted file mode 100644
index 0870ab4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/migration-path-war-to-shsrv.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/next.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/next.gif
deleted file mode 100644
index aa1516e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/next.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/next.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/next.png
deleted file mode 100644
index 45835bf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/next.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/next.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/next.svg
deleted file mode 100644
index 75fa83e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/next.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- <path style="&st3;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.gif
deleted file mode 100644
index f329d35..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.png
deleted file mode 100644
index d0c3c64..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.svg
deleted file mode 100644
index 648299d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.svg
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#FFFFFF;stroke-width:12.1438;stroke-linejoin:round;">
- <!ENTITY st1 "fill:none;stroke-width:1.2429;">
- <!ENTITY st2 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st4 "fill:#FFFFFF;stroke-width:6.3824;stroke-linejoin:round;">
- <!ENTITY st5 "fill:none;stroke:none;">
- <!ENTITY st6 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st7 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st8 "stroke:none;">
- <!ENTITY st9 "fill:none;stroke-width:4.9715;stroke-linejoin:round;">
-]>
-<svg xmlns="http://www.w3.org/2000/svg" width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve">
- <g id="Layer_x0020_1" style="&st6;">
- <path style="&st0;" d="M35.7,19.8v18.9H11V8.8h13.9l10.8,11z"/>
- <path style="&st3;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st7;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st4;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st2;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- </g>
- <g id="Layer_x0020_4" style="&st6;">
- <path style="&st9;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M20.6,14.7l-2.5,2.5L17,13.4l3.6,1.3z"/>
- <path style="&st1;" d="M19.6,22.2l3-0.3l2.4-2.4l0.4-2.8"/>
- <path style="&st2;" d="M20.4,14.9L18.3,17l1.6,5.2l2.7-0.3l2.4-2.4l0.3-2.4l-5-2.2z"/>
- </g>
- <g id="crop" style="&st6;">
- <path style="&st5;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.tif
deleted file mode 100644
index 08644d6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/note.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/prev.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/prev.gif
deleted file mode 100644
index 64ca8f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/prev.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/prev.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/prev.png
deleted file mode 100644
index cf24654..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/prev.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/prev.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/prev.svg
deleted file mode 100644
index 6d88ffd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/prev.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- <path style="&st3;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/s2-logo.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/s2-logo.png
deleted file mode 100644
index 7f41814..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/s2-logo.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/start.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/start.png
deleted file mode 100644
index 182325d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/start.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.gif
deleted file mode 100644
index 823f2b4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.png
deleted file mode 100644
index 5c4aab3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.svg
deleted file mode 100644
index 4a64a15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.svg
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#000000;stroke-width:1.0944;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#FFFFFF;stroke-width:5.6139;stroke-miterlimit:4;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path d="M9.5,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.8,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path d="M28.1,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,34.8l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8s0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8s-0.9-1.5-1.8-1.4z"/>
- <path d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6c0.9,0,1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st1;" d="M35.9,18.7c0,6.6-5.4,12-12,12c-6.6,0-12-5.4-12-12s5.4-12,12-12c6.6,0,12,5.4,12,12z"/>
- <path style="&st5;" d="M9.6,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.9,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path style="&st5;" d="M28.2,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,34.7l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6s1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st0;" d="M22.3,28.3l-3.5-10.7c0,0,6.6,3.9,10.5,0"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.tif
deleted file mode 100644
index 4a3d8c7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tip.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/toc-blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/toc-blank.png
deleted file mode 100644
index 6ffad17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/toc-blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/toc-minus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/toc-minus.png
deleted file mode 100644
index abbb020..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/toc-minus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/toc-plus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/toc-plus.png
deleted file mode 100644
index 941312c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/toc-plus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-classpath.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-classpath.png
deleted file mode 100644
index df5a692..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-classpath.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-deployed-application.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-deployed-application.png
deleted file mode 100644
index 82ec08f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-deployed-application.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-manifest-form-ui-editor.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-manifest-form-ui-editor.png
deleted file mode 100644
index 8d80b1a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-manifest-form-ui-editor.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-manifest-source-editor.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-manifest-source-editor.png
deleted file mode 100644
index a683fc8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-manifest-source-editor.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-new-project-wizards.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-new-project-wizards.png
deleted file mode 100644
index a235555..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-new-project-wizards.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-new-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-new-server.png
deleted file mode 100644
index 0983a73..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-new-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-repository-browser.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-repository-browser.png
deleted file mode 100644
index ad65152..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-repository-browser.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-start-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-start-server.png
deleted file mode 100644
index 3f8bfee..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/tooling-start-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/up.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/up.gif
deleted file mode 100644
index aabc2d0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/up.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/up.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/up.png
deleted file mode 100644
index 07634de..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/up.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/up.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/up.svg
deleted file mode 100644
index d31aa9c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/up.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- <path style="&st3;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/virgo-logo-large.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/virgo-logo-large.png
deleted file mode 100644
index f8fe1f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/virgo-logo-large.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/virgo-logo-small.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/virgo-logo-small.png
deleted file mode 100644
index 45e9224..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/virgo-logo-small.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.gif
deleted file mode 100644
index 3adf191..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.png
deleted file mode 100644
index 1c33db8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.svg
deleted file mode 100644
index fc8d748..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#000000;stroke:#FFFFFF;stroke-width:7.9139;stroke-linejoin:round;">
- <!ENTITY st1 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st2 "fill:none;stroke:none;">
- <!ENTITY st3 "fill:#000000;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_4" style="&st1;">
- <g style="&st4;">
- <path style="&st0;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path style="&st3;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path d="M11.7,17.7l18.7,18.7l5.9-5.9L17.6,11.7l-5.9,5.9z"/>
- <path d="M11.7,30.5l5.9,5.9l18.7-18.7l-5.9-5.9L11.7,30.5z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st2;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.tif
deleted file mode 100644
index 7b6611e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/warning.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/welcome.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/welcome.png
deleted file mode 100644
index 87a3926..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/images/welcome.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/index.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/index.html
deleted file mode 100644
index d36ac4a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Virgo Programmer Guide</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="next" href="pr01.html" title="Preface"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Virgo Programmer Guide</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="pr01.html">Next</a></td></tr></table><hr></div><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="d0e1"></a>Virgo Programmer Guide</h1></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Ramnivas</span> <span class="surname">Laddad</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Colin</span> <span class="surname">Yates</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Sam</span> <span class="surname">Brannen</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Rob</span> <span class="surname">Harrop</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Christian</span> <span class="surname">Dupuis</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Andy</span> <span class="surname">Wilkinson</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Glyn</span> <span class="surname">Normington</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Steve</span> <span class="surname">Powell</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Christopher</span> <span class="surname">Frost</span></h3></div></div></div><div><div class="mediaobject" align="right"><img src="images/virgo-logo-small.png" align="right"></div></div><div><span class="productname">Virgo<br></span></div><div><p class="releaseinfo">2.1.1.RELEASE</p></div></div><div><div><div class="legalnotice"><a name="d0e62"></a><p>Copyright © 2008, 2010 VMware Inc.</p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="preface"><a href="pr01.html">Preface</a></span></dt><dt><span class="chapter"><a href="ch01.html">1. Prerequisites</a></span></dt><dd><dl><dt><span class="section"><a href="ch01.html#prerequisites-environment">1.1. Runtime Environment</a></span></dt><dt><span class="section"><a href="ch01s02.html">1.2. References</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch02.html">2. Introduction to VWS</a></span></dt><dd><dl><dt><span class="section"><a href="ch02.html#introduction-preface">2.1. Overview</a></span></dt><dt><span class="section"><a href="ch02s02.html">2.2. What is the Virgo Web Server?</a></span></dt><dt><span class="section"><a href="ch02s03.html">2.3. Why the Virgo Web Server?</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch03.html">3. Deployment Architecture</a></span></dt><dd><dl><dt><span class="section"><a href="ch03.html#architecture-deployment-formats">3.1. Supported Deployment Formats</a></span></dt><dt><span class="section"><a href="ch03s02.html">3.2. Dependency Types</a></span></dt><dt><span class="section"><a href="ch03s03.html">3.3. A guide to forming bundles</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch04.html">4. Developing Applications</a></span></dt><dd><dl><dt><span class="section"><a href="ch04.html#developing-applications-bundle">4.1. Anatomy of a bundle</a></span></dt><dt><span class="section"><a href="ch04s02.html">4.2. Creating PARs and WARs</a></span></dt><dt><span class="section"><a href="ch04s03.html">4.3. Creating Plans</a></span></dt><dt><span class="section"><a href="ch04s04.html">4.4. Creating and Using Configuration Artifacts</a></span></dt><dt><span class="section"><a href="ch04s05.html">4.5. Programmatic Access to The Deployer Pipeline</a></span></dt><dt><span class="section"><a href="ch04s06.html">4.6. Automatic Imports for the Web subsystem</a></span></dt><dt><span class="section"><a href="ch04s07.html">4.7. Working with dependencies</a></span></dt><dt><span class="section"><a href="ch04s08.html">4.8. Application trace</a></span></dt><dt><span class="section"><a href="ch04s09.html">4.9. Application versioning</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch05.html">5. Migrating to OSGi</a></span></dt><dd><dl><dt><span class="section"><a href="ch05.html#migrating-to-osgi-web">5.1. Migrating Web Applications</a></span></dt><dt><span class="section"><a href="ch05s02.html">5.2. Migrating to a Plan or a PAR</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch06.html">6. Migrating Form Tags</a></span></dt><dd><dl><dt><span class="section"><a href="ch06.html#formtags-case-study-introduction">6.1. Overview of the Form Tags Sample Application</a></span></dt><dt><span class="section"><a href="ch06s02.html">6.2. Form Tags WAR</a></span></dt><dt><span class="section"><a href="ch06s03.html">6.3. Form Tags Shared Libraries WAR</a></span></dt><dt><span class="section"><a href="ch06s04.html">6.4. Form Tags Shared Services WAR</a></span></dt><dt><span class="section"><a href="ch06s05.html">6.5. Form Tags PAR</a></span></dt><dt><span class="section"><a href="ch06s06.html">6.6. Summary of the Form Tags Migration</a></span></dt><dt><span class="section"><a href="ch06s07.html">6.7. Form Tags as a plan</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch07.html">7. Tooling</a></span></dt><dd><dl><dt><span class="section"><a href="ch07.html#tooling-installation">7.1. Installation</a></span></dt><dt><span class="section"><a href="ch07s02.html">7.2. Running a Virgo Web Server instance within Eclipse</a></span></dt><dt><span class="section"><a href="ch07s03.html">7.3. Bundle and Library Provisioning</a></span></dt><dt><span class="section"><a href="ch07s04.html">7.4. Setting up Eclipse Projects</a></span></dt><dt><span class="section"><a href="ch07s05.html">7.5. Developing OSGi Bundles</a></span></dt><dt><span class="section"><a href="ch07s06.html">7.6. Deploying Applications</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch08.html">8. Common Libraries</a></span></dt><dd><dl><dt><span class="section"><a href="ch08.html#common-libraries-hibernate">8.1. Working with Hibernate</a></span></dt><dt><span class="section"><a href="ch08s02.html">8.2. Working with DataSources</a></span></dt><dt><span class="section"><a href="ch08s03.html">8.3. Weaving and Instrumentation</a></span></dt><dt><span class="section"><a href="ch08s04.html">8.4. JSP Tag Libraries</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch09.html">9. Known Issues</a></span></dt><dd><dl><dt><span class="section"><a href="ch09.html#known-issues-jpa">9.1. JPA Entity Scanning</a></span></dt><dt><span class="section"><a href="ch09s02.html">9.2. ClassNotFoundError When Creating a Proxy</a></span></dt><dt><span class="section"><a href="ch09s03.html">9.3. Creating proxies with CGLIB for package-protected types</a></span></dt><dt><span class="section"><a href="ch09s04.html">9.4. Tomcat Restrictions</a></span></dt><dt><span class="section"><a href="ch09s05.html">9.5. Default Web Application Bundle Headers</a></span></dt></dl></dd></dl></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="pr01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"> </td><td width="40%" align="right" valign="top"> Preface</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/pr01.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/pr01.html
deleted file mode 100644
index 77178a6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/html/pr01.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Preface</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo Programmer Guide"><link rel="up" href="index.html" title="Virgo Programmer Guide"><link rel="prev" href="index.html" title="Virgo Programmer Guide"><link rel="next" href="ch01.html" title="1. Prerequisites"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Preface</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch01.html">Next</a></td></tr></table><hr></div><div class="preface" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="preface"></a>Preface</h2></div></div></div><p>
- Increasing complexity in modern enterprise applications is a fact of life.
- You not only have to deal with complex business logic, but also a myriad
- of other concerns such as security, auditing, exposing business
- functionality to external applications, and managing the evolution of
- that functionality and technologies. The Spring Framework addresses these
- needs by offering a Plain-Old Java Object (POJO) based solution that
- lets you focus on your business logic.
- </p><p>
- Complex applications pose problems that go beyond using the right set of
- technologies. You need to take into account other considerations such as
- a simplified development process, easy deployment, monitoring deployed
- applications, and managing changes in response to changing business needs.
- This is where the Virgo Runtime Environment comes into play. It offers a simple yet
- comprehensive platform to develop, deploy, and service enterprise
- applications. In this Programmer Guide, we explore the runtime portions of the
- Virgo Runtime Environment, the Virgo Web Server and the Virgo Kernel, and learn how to develop
- applications to benefit from their capabilities.
- </p><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e73"></a>A Note to Virgo Kernel Programmers</h2></div></div></div><p>
- Although this guide is written primarily for Virgo Web Server programmers, much of it is also useful for
- Virgo Kernel programmers who should simply ignore the web-related sections.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Virgo Programmer Guide </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 1. Prerequisites</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/css/highlight.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/css/highlight.css
deleted file mode 100644
index 2cb42fd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/css/highlight.css
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- code highlight CSS resembling the Eclipse IDE default color schema and the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-.hl-keyword {
- color: #7F0055;
- font-weight: bold;
-}
-
-.hl-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-multiline-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-tag {
- color: #646571;
-}
-
-.hl-attribute {
- color: #7F0055;
-}
-
-.hl-value {
- color: #0093CF;
-}
-
-.hl-string {
- color: #0093CF;
-}
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/css/stylesheet.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/css/stylesheet.css
deleted file mode 100644
index b02eca7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/css/stylesheet.css
+++ /dev/null
@@ -1,77 +0,0 @@
-@IMPORT url("highlight.css");
-
-/*
- code CSS resembling the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-html {
- padding: 0pt;
- margin: 0pt;
-}
-
-body {
- margin-left: 10%;
- margin-right: 10%;
- color: #111111;
- font-family: Arial, Sans-serif;
-}
-
-div {
- margin: 0pt;
-}
-
-p {
- text-align: justify;
-}
-
-hr {
- border: 1px solid gray;
- background: gray;
-}
-
-a {
- color: #002E62; /* Dark Blue */
-}
-
-a:visited {
- color: #646571; /* Gray */
-}
-
-a:hover, a:active {
- color: #0093CF; /* Light Blue */
-}
-
-h1,h2,h3,h4 {
- color: #002E62;
- font-family: Arial, Sans-serif;
-}
-
-pre {
- line-height: 1.0;
- color: black;
-}
-
-pre.programlisting {
- font-size: 10pt;
- padding: 7pt 3pt;
- border: 1pt solid black;
- background: #eeeeee;
- clear: both;
-}
-
-div.table {
- margin: 1em;
- padding: 0.5em;
- text-align: center;
-}
-
-div.table table {
- display: table;
- width: 100%;
-}
-
-div.table td {
- padding-left: 7px;
- padding-right: 7px;
-}
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependencies.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependencies.png
deleted file mode 100644
index a9248a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependencies.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependencies.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependencies.vsd
deleted file mode 100644
index e818f75..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependencies.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongLayers.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongLayers.png
deleted file mode 100644
index a9248a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongLayers.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongLayers.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongLayers.vsd
deleted file mode 100644
index e818f75..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongLayers.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongVerticals.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongVerticals.png
deleted file mode 100644
index 2147884..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongVerticals.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongVerticals.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongVerticals.vsd
deleted file mode 100644
index 1e26e17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/BundleDependenciesAlongVerticals.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithLibrary.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithLibrary.png
deleted file mode 100644
index 2b7196b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithLibrary.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithLibrary.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithLibrary.vsd
deleted file mode 100644
index 0a716a5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithLibrary.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithoutLibrary.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithoutLibrary.png
deleted file mode 100644
index 3dcc89e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithoutLibrary.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithoutLibrary.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithoutLibrary.vsd
deleted file mode 100644
index bcc9133..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/DependenciesWithoutLibrary.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/PlatformBigPicture.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/PlatformBigPicture.png
deleted file mode 100644
index 224c55e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/PlatformBigPicture.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/PlatformBigPicture.vsd b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/PlatformBigPicture.vsd
deleted file mode 100644
index 0107497..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/PlatformBigPicture.vsd
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/annot-close.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/annot-close.png
deleted file mode 100644
index b9e1a0d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/annot-close.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/annot-open.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/annot-open.png
deleted file mode 100644
index 71040ec..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/annot-open.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/architecture-bundle-versioning.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/architecture-bundle-versioning.graffle
deleted file mode 100644
index 3584d15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/architecture-bundle-versioning.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/architecture-bundle-versioning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/architecture-bundle-versioning.png
deleted file mode 100644
index c3bf8a8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/architecture-bundle-versioning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/blank.png
deleted file mode 100644
index 764bf4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-layers.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-layers.graffle
deleted file mode 100644
index f236f85..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-layers.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-layers.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-layers.png
deleted file mode 100644
index 2b4cf89..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-layers.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-verticals.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-verticals.graffle
deleted file mode 100644
index 60d193d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-verticals.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-verticals.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-verticals.png
deleted file mode 100644
index d338626..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/bundle-dependencies-verticals.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/1.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/1.gif
deleted file mode 100644
index 9e7a87f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/1.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/1.png
deleted file mode 100644
index 7d47343..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/1.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/1.svg
deleted file mode 100644
index e2e87dc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/1.svg
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M10.428,10.411h0.56c3.78,0,4.788-1.96,4.872-3.444h3.22v19.88h-3.92V13.154h-4.732V10.411z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/10.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/10.gif
deleted file mode 100644
index e80f7f8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/10.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/10.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/10.png
deleted file mode 100644
index 997bbc8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/10.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/10.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/10.svg
deleted file mode 100644
index 4740f58..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/10.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.815,10.758h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.11H3.815V10.758z"/>
- <path style="fill:#FFFFFF;" d="M22.175,7.806c4.009,0,5.904,2.76,5.904,8.736c0,5.975-1.896,8.76-5.904,8.76
- c-4.008,0-5.904-2.785-5.904-8.76C16.271,10.566,18.167,7.806,22.175,7.806z M22.175,22.613c1.921,0,2.448-1.68,2.448-6.071
- c0-4.393-0.527-6.049-2.448-6.049c-1.92,0-2.448,1.656-2.448,6.049C19.727,20.934,20.255,22.613,22.175,22.613z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/11.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/11.gif
deleted file mode 100644
index 67f91a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/11.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/11.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/11.png
deleted file mode 100644
index ce47dac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/11.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/11.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/11.svg
deleted file mode 100644
index 09a0b2c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/11.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.209,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H5.209V10.412z"/>
- <path style="fill:#FFFFFF;" d="M18.553,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.359V12.764h-4.056V10.412z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/12.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/12.gif
deleted file mode 100644
index 54c4b42..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/12.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/12.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/12.png
deleted file mode 100644
index 31daf4e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/12.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/12.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/12.svg
deleted file mode 100644
index 9794044..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/12.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/13.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/13.gif
deleted file mode 100644
index dd5d7d9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/13.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/13.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/13.png
deleted file mode 100644
index 14021a8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/13.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/13.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/13.svg
deleted file mode 100644
index 64268bb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/13.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M20.611,14.636h0.529c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.288-2.185-2.137-2.185
- c-2.303,0-2.303,2.185-2.303,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.279,0,5.279,1.152,5.279,4.752
- c0,1.728-1.08,2.808-2.039,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/14.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/14.gif
deleted file mode 100644
index 3d7a952..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/14.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/14.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/14.png
deleted file mode 100644
index 64014b7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/14.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/14.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/14.svg
deleted file mode 100644
index 469aa97..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/14.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.146V10.412z"/>
- <path style="fill:#FFFFFF;" d="M28.457,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L22.746,7.46h3.815v10.656h1.896V20.732z
- M23.201,18.116c0-4.128,0.072-6.792,0.072-7.32h-0.048l-4.272,7.32H23.201z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/15.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/15.gif
deleted file mode 100644
index 1c9183d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/15.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/15.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/15.png
deleted file mode 100644
index 0d65765..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/15.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/15.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/15.svg
deleted file mode 100644
index 8202233..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/15.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M19.342,14.943c0.625-0.433,1.392-0.937,3.048-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.176,6.121-6.192,6.121c-2.664,0-5.376-1.584-5.544-5.016h3.36c0.144,1.391,0.888,2.326,2.376,2.326
- c1.607,0,2.544-1.367,2.544-3.191c0-1.512-0.72-3.047-2.496-3.047c-0.456,0-1.608,0.023-2.256,1.223l-3-0.143l1.176-9.361h9.36
- v2.832h-6.937L19.342,14.943z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/16.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/16.svg
deleted file mode 100644
index 01d6bf8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/16.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M24.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L19.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H24.309z M22.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C24.62,16.868,23.229,16.172,22.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/17.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/17.svg
deleted file mode 100644
index 0a04c55..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/17.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M27.838,11.006c-1.631,1.776-5.807,6.816-6.215,14.16h-3.457c0.36-6.816,4.632-12.24,6.072-13.776
- h-8.472l0.072-2.976h12V11.006z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/18.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/18.svg
deleted file mode 100644
index 1cb891b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/18.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/19.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/19.svg
deleted file mode 100644
index e6fbb17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/19.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.746h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.041h-3.36V13.097H4.146V10.746z"/>
- <path style="fill:#FFFFFF;" d="M20.225,20.898v0.023c0.192,1.176,0.936,1.68,1.968,1.68c1.392,0,2.783-1.176,2.808-4.752
- l-0.048-0.049c-0.768,1.152-2.088,1.441-3.24,1.441c-3.264,0-5.16-2.473-5.16-5.329c0-4.176,2.472-6.12,5.808-6.12
- c5.904,0,6,6.36,6,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.391H20.225z M22.434,16.553
- c1.176,0,2.472-0.84,2.472-2.855c0-1.944-0.841-3.145-2.568-3.145c-0.864,0-2.424,0.433-2.424,2.88
- C19.913,16.001,21.161,16.553,22.434,16.553z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/2.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/2.gif
deleted file mode 100644
index 94d42a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/2.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/2.png
deleted file mode 100644
index 5d09341..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/2.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/2.svg
deleted file mode 100644
index 07d0339..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/2.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M9.668,12.328c0-6.469,4.732-7.028,6.496-7.028c3.808,0,6.833,2.24,6.833,6.271
- c0,3.416-2.213,5.152-4.145,6.469c-2.632,1.848-4.004,2.744-4.452,3.668h8.624v3.472H9.444c0.14-2.324,0.308-4.76,4.62-7.896
- c3.584-2.604,5.012-3.612,5.012-5.853c0-1.315-0.84-2.828-2.744-2.828c-2.744,0-2.828,2.269-2.856,3.725H9.668z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/20.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/20.svg
deleted file mode 100644
index ccbfd40..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/20.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/21.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/21.svg
deleted file mode 100644
index 93ec53f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/21.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.306,13.151c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392v2.976H5.114c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H5.306z"/>
- <path style="fill:#FFFFFF;" d="M19.49,10.079h0.48c3.239,0,4.104-1.681,4.176-2.952h2.761v17.04h-3.361V12.431H19.49V10.079z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/22.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/22.svg
deleted file mode 100644
index f48c5f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/22.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/23.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/23.svg
deleted file mode 100644
index 6624212..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/23.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M21.612,14.636h0.528c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.287-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.521-0.911,2.521-2.808
- c0-2.328-2.257-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/24.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/24.svg
deleted file mode 100644
index a3d5525..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/24.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H4.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H4.972z"/>
- <path style="fill:#FFFFFF;" d="M30.124,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L24.412,7.46h3.816v10.656h1.896V20.732z
- M24.868,18.116c0-4.128,0.071-6.792,0.071-7.32h-0.047l-4.272,7.32H24.868z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/25.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/25.svg
deleted file mode 100644
index 56614a9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/25.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.676,14.276c0.624-0.433,1.393-0.937,3.049-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.177,6.12-6.193,6.12c-2.664,0-5.375-1.584-5.543-5.016h3.36c0.144,1.392,0.889,2.327,2.376,2.327
- c1.608,0,2.544-1.367,2.544-3.191c0-1.513-0.72-3.048-2.496-3.048c-0.455,0-1.607,0.023-2.256,1.224l-3-0.144l1.176-9.36h9.36
- v2.832h-6.937L20.676,14.276z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/26.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/26.svg
deleted file mode 100644
index 56faeac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/26.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M25.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L20.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H25.309z M23.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C25.62,16.868,24.229,16.172,23.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/27.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/27.svg
deleted file mode 100644
index a75c812..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/27.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M29.172,10.34c-1.632,1.776-5.808,6.816-6.216,14.16H19.5c0.36-6.816,4.632-12.24,6.072-13.776
- H17.1l0.072-2.976h12V10.34z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/28.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/28.svg
deleted file mode 100644
index 7f8cf1a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/28.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/29.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/29.svg
deleted file mode 100644
index cb63adf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/29.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.893,20.564v0.023c0.191,1.176,0.936,1.68,1.967,1.68c1.393,0,2.785-1.176,2.809-4.752
- l-0.048-0.048c-0.769,1.152-2.088,1.44-3.24,1.44c-3.264,0-5.16-2.473-5.16-5.328c0-4.176,2.472-6.12,5.807-6.12
- c5.904,0,6.001,6.36,6.001,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.392H20.893z M23.1,16.22
- c1.176,0,2.473-0.84,2.473-2.855c0-1.944-0.84-3.145-2.568-3.145c-0.863,0-2.424,0.433-2.424,2.88
- C20.58,15.668,21.828,16.22,23.1,16.22z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/3.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/3.gif
deleted file mode 100644
index dd3541a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/3.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/3.png
deleted file mode 100644
index ef7b700..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/3.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/3.svg
deleted file mode 100644
index 918be80..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/3.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M15.127,14.005h0.616c1.176,0,3.332-0.112,3.332-2.688c0-0.728-0.336-2.548-2.492-2.548
- c-2.688,0-2.688,2.548-2.688,3.248h-3.64c0-3.724,2.1-6.384,6.58-6.384c2.66,0,6.16,1.344,6.16,5.544
- c0,2.016-1.261,3.276-2.38,3.78v0.056c0.699,0.196,2.996,1.232,2.996,4.62c0,3.752-2.772,6.412-6.776,6.412
- c-1.876,0-6.916-0.42-6.916-6.636h3.836l-0.028,0.027c0,1.064,0.28,3.473,2.912,3.473c1.568,0,2.94-1.064,2.94-3.276
- c0-2.716-2.632-2.828-4.452-2.828V14.005z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/30.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/30.svg
deleted file mode 100644
index dc43ba1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/30.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M8.268,14.636h0.528c1.008,0,2.856-0.096,2.856-2.304c0-0.624-0.288-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.376,5.496-5.808,5.496
- c-1.608,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/4.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/4.gif
deleted file mode 100644
index 4bcbf7e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/4.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/4.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/4.png
deleted file mode 100644
index adb8364..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/4.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/4.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/4.svg
deleted file mode 100644
index 8eb6a53..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/4.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M21.891,20.784h-2.212v4.396h-3.92v-4.396h-7.84v-3.389L15.227,5.3h4.452v12.432h2.212V20.784z
- M15.759,17.731c0-4.815,0.084-7.924,0.084-8.54h-0.056l-4.984,8.54H15.759z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/5.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/5.gif
deleted file mode 100644
index 1c62b4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/5.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/5.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/5.png
deleted file mode 100644
index 4d7eb46..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/5.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/5.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/5.svg
deleted file mode 100644
index ca7a9f2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/5.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M14.035,14.252c0.728-0.504,1.624-1.092,3.556-1.092c2.66,0,6.02,1.848,6.02,6.411
- c0,2.717-1.372,7.141-7.224,7.141c-3.108,0-6.272-1.849-6.468-5.853h3.92c0.168,1.624,1.036,2.717,2.772,2.717
- c1.876,0,2.968-1.597,2.968-3.725c0-1.764-0.839-3.556-2.912-3.556c-0.532,0-1.876,0.028-2.632,1.428l-3.5-0.168l1.372-10.92
- h10.919v3.304h-8.092L14.035,14.252z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/6.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/6.gif
deleted file mode 100644
index 23bc555..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/6.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/6.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/6.png
deleted file mode 100644
index 0ba694a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/6.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/6.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/6.svg
deleted file mode 100644
index 783a0b9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/6.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M19.106,10.673c-0.112-1.12-0.84-1.904-2.296-1.904c-2.548,0-3.136,2.912-3.276,5.488l0.056,0.056
- c0.532-0.728,1.512-1.651,3.724-1.651c4.116,0,6.077,3.164,6.077,6.131c0,4.34-2.66,7.252-6.497,7.252
- c-6.02,0-7.196-5.039-7.196-9.996c0-3.78,0.504-10.416,7.392-10.416c0.812,0,3.08,0.308,4.061,1.288
- c1.092,1.063,1.483,1.652,1.848,3.752H19.106z M16.614,15.797c-1.484,0-2.996,0.924-2.996,3.416c0,2.156,1.232,3.697,3.108,3.697
- c1.428,0,2.745-1.094,2.745-3.781C19.471,16.609,17.846,15.797,16.614,15.797z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/7.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/7.gif
deleted file mode 100644
index e55ce89..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/7.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/7.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/7.png
deleted file mode 100644
index 472e96f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/7.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/7.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/7.svg
deleted file mode 100644
index 59b3714..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/7.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M24.28,9.66c-1.904,2.071-6.776,7.951-7.252,16.52h-4.032c0.42-7.952,5.404-14.28,7.084-16.072
- h-9.884l0.084-3.472h14V9.66z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/8.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/8.gif
deleted file mode 100644
index 49375e0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/8.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/8.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/8.png
deleted file mode 100644
index 5e60973..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/8.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/8.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/8.svg
deleted file mode 100644
index c1803a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/8.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M16.28,26.712c-5.124,0-6.888-3.332-6.888-6.048c0-1.009,0-3.641,3.024-5.04
- c-1.568-0.784-2.408-2.044-2.408-3.893c0-3.388,2.716-5.432,6.188-5.432c4.116,0,6.3,2.436,6.3,5.18
- c0,1.708-0.7,3.164-2.296,4.004c1.903,0.952,2.968,2.212,2.968,4.788C23.168,22.792,21.544,26.712,16.28,26.712z M16.224,17.332
- c-1.428,0-2.8,0.924-2.8,3.08c0,1.903,1.092,3.164,2.884,3.164c2.043,0,2.829-1.765,2.829-3.137
- C19.137,19.04,18.408,17.332,16.224,17.332z M18.744,11.899c0-1.512-1.036-2.464-2.296-2.464c-1.764,0-2.688,1.008-2.688,2.464
- c0,1.177,0.868,2.464,2.548,2.464C17.848,14.363,18.744,13.328,18.744,11.899z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/9.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/9.gif
deleted file mode 100644
index da12a4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/9.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/9.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/9.png
deleted file mode 100644
index a0676d2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/9.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/9.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/9.svg
deleted file mode 100644
index bc149d3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/callouts/9.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M13.953,21.921v0.027c0.224,1.372,1.092,1.961,2.296,1.961c1.624,0,3.248-1.372,3.276-5.545
- l-0.057-0.056c-0.896,1.344-2.436,1.68-3.78,1.68c-3.808,0-6.02-2.884-6.02-6.216c0-4.872,2.884-7.14,6.776-7.14
- c6.888,0,7,7.42,7,10.22c0,7.7-3.641,10.192-7.224,10.192c-3.388,0-5.824-1.96-6.16-5.124H13.953z M16.529,16.853
- c1.372,0,2.884-0.979,2.884-3.332c0-2.268-0.98-3.668-2.996-3.668c-1.008,0-2.828,0.504-2.828,3.36
- C13.589,16.209,15.045,16.853,16.529,16.853z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.gif
deleted file mode 100644
index d9f5e5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.png
deleted file mode 100644
index 5b7809c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.tif
deleted file mode 100644
index 4a28294..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/caution.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-complexDomain-skeleton-bundles.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-complexDomain-skeleton-bundles.png
deleted file mode 100644
index 2207769..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-complexDomain-skeleton-bundles.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-complexDomain-web-page.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-complexDomain-web-page.png
deleted file mode 100644
index 845c01c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-complexDomain-web-page.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-dataSource-classNotFound-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-dataSource-classNotFound-eclipse.png
deleted file mode 100644
index 6021712..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-dataSource-classNotFound-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-add-infrastructure-to-par.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-add-infrastructure-to-par.png
deleted file mode 100644
index 426fa6c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-add-infrastructure-to-par.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-created-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-created-eclipse.png
deleted file mode 100644
index b1481e5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-created-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-databasepopulator-before-manifest.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-databasepopulator-before-manifest.png
deleted file mode 100644
index 036661d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-databasepopulator-before-manifest.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-dbcp-manifest.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-dbcp-manifest.png
deleted file mode 100644
index 6085953..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-dbcp-manifest.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-empty-nested-bundles-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-empty-nested-bundles-eclipse.png
deleted file mode 100644
index 5251214..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-empty-nested-bundles-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-server-with-par-project-deployed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-server-with-par-project-deployed.png
deleted file mode 100644
index 4fb3842..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-server-with-par-project-deployed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-wizard-step1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-wizard-step1.png
deleted file mode 100644
index d679459..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-wizard-step1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-wizard-step2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-wizard-step2.png
deleted file mode 100644
index c4b2934..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-infrastructure-wizard-step2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-par-created-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-par-created-eclipse.png
deleted file mode 100644
index e430a15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-par-created-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-par-wizard-step1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-par-wizard-step1.png
deleted file mode 100644
index bacf639..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-par-wizard-step1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-par-wizard-step2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-par-wizard-step2.png
deleted file mode 100644
index 75e3066..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-par-wizard-step2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb-dependencies.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb-dependencies.png
deleted file mode 100644
index c9ea674..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb-dependencies.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb-search-results.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb-search-results.png
deleted file mode 100644
index a3d4e7d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb-search-results.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb-start.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb-start.png
deleted file mode 100644
index f797c79..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb-start.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb.png
deleted file mode 100644
index 637aa77..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-repo-hsqldb.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-eclipse-full.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-eclipse-full.png
deleted file mode 100644
index 504b0e0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-eclipse-full.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-eclipse.png
deleted file mode 100644
index 3465934..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-server.png
deleted file mode 100644
index 49528cd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-web-eclipse-complete.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-web-eclipse-complete.png
deleted file mode 100644
index e05710c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-web-eclipse-complete.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-web-page.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-web-page.png
deleted file mode 100644
index d6be34b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-simpleDomain-web-page.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-user-repository.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-user-repository.png
deleted file mode 100644
index cdfa61a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/create-new-par-user-repository.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/developing-applications-web-module-format.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/developing-applications-web-module-format.png
deleted file mode 100644
index 11ac784..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/developing-applications-web-module-format.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/draft.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/draft.png
deleted file mode 100644
index 59673fe..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/draft.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-exploded-war.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-exploded-war.png
deleted file mode 100644
index befa8af..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-exploded-war.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-par-exploded-web.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-par-exploded-web.png
deleted file mode 100644
index 70489ad..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-par-exploded-web.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-par-exploded.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-par-exploded.png
deleted file mode 100644
index 7eef71b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-par-exploded.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-par-sample.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-par-sample.png
deleted file mode 100644
index 6d795f7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-par-sample.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-sample-layout.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-sample-layout.png
deleted file mode 100644
index eb8650e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-sample-layout.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-shared-services-eclipse.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-shared-services-eclipse.png
deleted file mode 100644
index 7a39ac0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-shared-services-eclipse.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-shared-services-service-resources.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-shared-services-service-resources.png
deleted file mode 100644
index 2eeed44..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-shared-services-service-resources.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-shared-services-war-resources.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-shared-services-war-resources.png
deleted file mode 100644
index 156debd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-shared-services-war-resources.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-war-webpage.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-war-webpage.png
deleted file mode 100644
index c537744..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/formtags-case-study-war-webpage.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/home.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/home.gif
deleted file mode 100644
index 6784f5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/home.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/home.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/home.png
deleted file mode 100644
index cbb711d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/home.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/home.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/home.svg
deleted file mode 100644
index e803a31..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/home.svg
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st1 "fill:none;stroke:none;">
- <!ENTITY st2 "fill:#000000;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:6.3469;stroke-linejoin:round;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st0;">
- <g style="&st4;">
- <path style="&st3;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M41.8,22.8l-5.1-4.2v-0.1L31,13.7v0l-6.5-5.5C24.2,8,24,8,23.8,8.2L6.2,22.9c-0.1,0.1-0.1,0.3,0.1,0.3h1.6H10h28.1h1.2h2.3c0.2,0,0.4-0.2,0.2-0.4z"/>
- <path d="M35.8,16.8l0-5.1c0-0.2-0.1-0.4-0.3-0.4h-3.2c-0.2,0-0.3,0.1-0.3,0.3v2.2l3.9,2.9z"/>
- <path d="M11.9,24.7V37c0,0.3,0.1,0.4,0.3,0.4h23.6c0.3,0,0.4-0.2,0.4-0.4V24.7H11.9z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st1;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-bundle_import-library.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-bundle_import-library.graffle
deleted file mode 100644
index a94bfeb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-bundle_import-library.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-bundle_import-library.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-bundle_import-library.png
deleted file mode 100644
index c838636..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-bundle_import-library.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-package.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-package.graffle
deleted file mode 100644
index f0ec0a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-package.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-package.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-package.png
deleted file mode 100644
index a38eb77..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/import-package.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.gif
deleted file mode 100644
index 6795d9a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.png
deleted file mode 100644
index 12c90f6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.tif
deleted file mode 100644
index 184de63..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/important.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/introduction-architecture.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/introduction-architecture.graffle
deleted file mode 100644
index 8d8b8ff..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/introduction-architecture.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/introduction-architecture.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/introduction-architecture.png
deleted file mode 100644
index 0656d77..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/introduction-architecture.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migrating-to-osgi-par-structure.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migrating-to-osgi-par-structure.graffle
deleted file mode 100644
index f773720..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migrating-to-osgi-par-structure.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migrating-to-osgi-par-structure.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migrating-to-osgi-par-structure.png
deleted file mode 100644
index a689b39..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migrating-to-osgi-par-structure.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migration-path-war-to-shsrv.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migration-path-war-to-shsrv.graffle
deleted file mode 100644
index c69bc09..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migration-path-war-to-shsrv.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migration-path-war-to-shsrv.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migration-path-war-to-shsrv.png
deleted file mode 100644
index 0870ab4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/migration-path-war-to-shsrv.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/next.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/next.gif
deleted file mode 100644
index aa1516e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/next.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/next.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/next.png
deleted file mode 100644
index 45835bf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/next.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/next.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/next.svg
deleted file mode 100644
index 75fa83e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/next.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- <path style="&st3;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.gif
deleted file mode 100644
index f329d35..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.png
deleted file mode 100644
index d0c3c64..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.svg
deleted file mode 100644
index 648299d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.svg
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#FFFFFF;stroke-width:12.1438;stroke-linejoin:round;">
- <!ENTITY st1 "fill:none;stroke-width:1.2429;">
- <!ENTITY st2 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st4 "fill:#FFFFFF;stroke-width:6.3824;stroke-linejoin:round;">
- <!ENTITY st5 "fill:none;stroke:none;">
- <!ENTITY st6 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st7 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st8 "stroke:none;">
- <!ENTITY st9 "fill:none;stroke-width:4.9715;stroke-linejoin:round;">
-]>
-<svg xmlns="http://www.w3.org/2000/svg" width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve">
- <g id="Layer_x0020_1" style="&st6;">
- <path style="&st0;" d="M35.7,19.8v18.9H11V8.8h13.9l10.8,11z"/>
- <path style="&st3;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st7;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st4;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st2;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- </g>
- <g id="Layer_x0020_4" style="&st6;">
- <path style="&st9;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M20.6,14.7l-2.5,2.5L17,13.4l3.6,1.3z"/>
- <path style="&st1;" d="M19.6,22.2l3-0.3l2.4-2.4l0.4-2.8"/>
- <path style="&st2;" d="M20.4,14.9L18.3,17l1.6,5.2l2.7-0.3l2.4-2.4l0.3-2.4l-5-2.2z"/>
- </g>
- <g id="crop" style="&st6;">
- <path style="&st5;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.tif
deleted file mode 100644
index 08644d6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/note.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/prev.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/prev.gif
deleted file mode 100644
index 64ca8f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/prev.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/prev.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/prev.png
deleted file mode 100644
index cf24654..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/prev.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/prev.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/prev.svg
deleted file mode 100644
index 6d88ffd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/prev.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- <path style="&st3;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/s2-logo.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/s2-logo.png
deleted file mode 100644
index 7f41814..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/s2-logo.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/start.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/start.png
deleted file mode 100644
index 182325d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/start.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.gif
deleted file mode 100644
index 823f2b4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.png
deleted file mode 100644
index 5c4aab3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.svg
deleted file mode 100644
index 4a64a15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.svg
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#000000;stroke-width:1.0944;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#FFFFFF;stroke-width:5.6139;stroke-miterlimit:4;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path d="M9.5,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.8,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path d="M28.1,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,34.8l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8s0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8s-0.9-1.5-1.8-1.4z"/>
- <path d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6c0.9,0,1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st1;" d="M35.9,18.7c0,6.6-5.4,12-12,12c-6.6,0-12-5.4-12-12s5.4-12,12-12c6.6,0,12,5.4,12,12z"/>
- <path style="&st5;" d="M9.6,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.9,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path style="&st5;" d="M28.2,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,34.7l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6s1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st0;" d="M22.3,28.3l-3.5-10.7c0,0,6.6,3.9,10.5,0"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.tif
deleted file mode 100644
index 4a3d8c7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tip.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/toc-blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/toc-blank.png
deleted file mode 100644
index 6ffad17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/toc-blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/toc-minus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/toc-minus.png
deleted file mode 100644
index abbb020..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/toc-minus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/toc-plus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/toc-plus.png
deleted file mode 100644
index 941312c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/toc-plus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-classpath.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-classpath.png
deleted file mode 100644
index df5a692..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-classpath.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-deployed-application.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-deployed-application.png
deleted file mode 100644
index 82ec08f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-deployed-application.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-manifest-form-ui-editor.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-manifest-form-ui-editor.png
deleted file mode 100644
index 8d80b1a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-manifest-form-ui-editor.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-manifest-source-editor.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-manifest-source-editor.png
deleted file mode 100644
index a683fc8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-manifest-source-editor.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-new-project-wizards.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-new-project-wizards.png
deleted file mode 100644
index a235555..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-new-project-wizards.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-new-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-new-server.png
deleted file mode 100644
index 0983a73..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-new-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-repository-browser.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-repository-browser.png
deleted file mode 100644
index ad65152..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-repository-browser.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-start-server.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-start-server.png
deleted file mode 100644
index 3f8bfee..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/tooling-start-server.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/up.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/up.gif
deleted file mode 100644
index aabc2d0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/up.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/up.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/up.png
deleted file mode 100644
index 07634de..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/up.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/up.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/up.svg
deleted file mode 100644
index d31aa9c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/up.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- <path style="&st3;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/virgo-logo-large.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/virgo-logo-large.png
deleted file mode 100644
index f8fe1f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/virgo-logo-large.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/virgo-logo-small.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/virgo-logo-small.png
deleted file mode 100644
index 45e9224..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/virgo-logo-small.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.gif
deleted file mode 100644
index 3adf191..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.png
deleted file mode 100644
index 1c33db8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.svg
deleted file mode 100644
index fc8d748..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#000000;stroke:#FFFFFF;stroke-width:7.9139;stroke-linejoin:round;">
- <!ENTITY st1 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st2 "fill:none;stroke:none;">
- <!ENTITY st3 "fill:#000000;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_4" style="&st1;">
- <g style="&st4;">
- <path style="&st0;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path style="&st3;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path d="M11.7,17.7l18.7,18.7l5.9-5.9L17.6,11.7l-5.9,5.9z"/>
- <path d="M11.7,30.5l5.9,5.9l18.7-18.7l-5.9-5.9L11.7,30.5z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st2;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.tif
deleted file mode 100644
index 7b6611e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/warning.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/welcome.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/welcome.png
deleted file mode 100644
index 87a3926..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/images/welcome.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/virgo-programmer-guide.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/virgo-programmer-guide.html
deleted file mode 100644
index 3c32c5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-programmer-guide/htmlsingle/virgo-programmer-guide.html
+++ /dev/null
@@ -1,1737 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Virgo Programmer Guide</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="d0e1"></a>Virgo Programmer Guide</h1></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Ramnivas</span> <span class="surname">Laddad</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Colin</span> <span class="surname">Yates</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Sam</span> <span class="surname">Brannen</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Rob</span> <span class="surname">Harrop</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Christian</span> <span class="surname">Dupuis</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Andy</span> <span class="surname">Wilkinson</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Glyn</span> <span class="surname">Normington</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Steve</span> <span class="surname">Powell</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Christopher</span> <span class="surname">Frost</span></h3></div></div></div><div><div class="mediaobject" align="right"><img src="images/virgo-logo-small.png" align="right"></div></div><div><span class="productname">Virgo<br></span></div><div><p class="releaseinfo">2.1.1.RELEASE</p></div></div><div><div><div class="legalnotice"><a name="d0e62"></a><p>Copyright © 2008, 2010 VMware Inc.</p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="preface"><a href="#preface">Preface</a></span></dt><dt><span class="chapter"><a href="#prerequisites">1. Prerequisites</a></span></dt><dd><dl><dt><span class="section"><a href="#prerequisites-environment">1.1. Runtime Environment</a></span></dt><dt><span class="section"><a href="#prerequisites-references">1.2. References</a></span></dt></dl></dd><dt><span class="chapter"><a href="#introduction">2. Introduction to VWS</a></span></dt><dd><dl><dt><span class="section"><a href="#introduction-preface">2.1. Overview</a></span></dt><dt><span class="section"><a href="#introduction-what">2.2. What is the Virgo Web Server?</a></span></dt><dt><span class="section"><a href="#introduction-why">2.3. Why the Virgo Web Server?</a></span></dt></dl></dd><dt><span class="chapter"><a href="#architecture">3. Deployment Architecture</a></span></dt><dd><dl><dt><span class="section"><a href="#architecture-deployment-formats">3.1. Supported Deployment Formats</a></span></dt><dt><span class="section"><a href="#architecture-dependency-types">3.2. Dependency Types</a></span></dt><dt><span class="section"><a href="#architecture-forming-bundles">3.3. A guide to forming bundles</a></span></dt></dl></dd><dt><span class="chapter"><a href="#developing-applications">4. Developing Applications</a></span></dt><dd><dl><dt><span class="section"><a href="#developing-applications-bundle">4.1. Anatomy of a bundle</a></span></dt><dt><span class="section"><a href="#developing-applications-packaging">4.2. Creating PARs and WARs</a></span></dt><dt><span class="section"><a href="#developing-applications-plans">4.3. Creating Plans</a></span></dt><dt><span class="section"><a href="#developing-applications-configuration-artifacts">4.4. Creating and Using Configuration Artifacts</a></span></dt><dt><span class="section"><a href="#developing-applications-programmatic-access">4.5. Programmatic Access to The Deployer Pipeline</a></span></dt><dt><span class="section"><a href="#developing-applications-automatic-imports-web">4.6. Automatic Imports for the Web subsystem</a></span></dt><dt><span class="section"><a href="#developing-applications-dependencies">4.7. Working with dependencies</a></span></dt><dt><span class="section"><a href="#developing-applications-application-trace">4.8. Application trace</a></span></dt><dt><span class="section"><a href="#developing-applications-versioning">4.9. Application versioning</a></span></dt></dl></dd><dt><span class="chapter"><a href="#migrating-to-osgi">5. Migrating to OSGi</a></span></dt><dd><dl><dt><span class="section"><a href="#migrating-to-osgi-web">5.1. Migrating Web Applications</a></span></dt><dt><span class="section"><a href="#migrating-to-osgi-par-plan">5.2. Migrating to a Plan or a PAR</a></span></dt></dl></dd><dt><span class="chapter"><a href="#formtags-case-study">6. Migrating Form Tags</a></span></dt><dd><dl><dt><span class="section"><a href="#formtags-case-study-introduction">6.1. Overview of the Form Tags Sample Application</a></span></dt><dt><span class="section"><a href="#formtags-case-study-war">6.2. Form Tags WAR</a></span></dt><dt><span class="section"><a href="#formtags-case-study-war-shared-libs">6.3. Form Tags Shared Libraries WAR</a></span></dt><dt><span class="section"><a href="#formtags-case-study-war-shared-services">6.4. Form Tags Shared Services WAR</a></span></dt><dt><span class="section"><a href="#formtags-case-study-par">6.5. Form Tags PAR</a></span></dt><dt><span class="section"><a href="#formtags-case-study-summary">6.6. Summary of the Form Tags Migration</a></span></dt><dt><span class="section"><a href="#formtags-case-study-as-plan">6.7. Form Tags as a plan</a></span></dt></dl></dd><dt><span class="chapter"><a href="#tooling">7. Tooling</a></span></dt><dd><dl><dt><span class="section"><a href="#tooling-installation">7.1. Installation</a></span></dt><dt><span class="section"><a href="#tooling-running">7.2. Running a Virgo Web Server instance within Eclipse</a></span></dt><dt><span class="section"><a href="#tooling-repository-editor">7.3. Bundle and Library Provisioning</a></span></dt><dt><span class="section"><a href="#tooling-config">7.4. Setting up Eclipse Projects</a></span></dt><dt><span class="section"><a href="#tooling-developing">7.5. Developing OSGi Bundles</a></span></dt><dt><span class="section"><a href="#tooling-deploying">7.6. Deploying Applications</a></span></dt></dl></dd><dt><span class="chapter"><a href="#common-libraries">8. Common Libraries</a></span></dt><dd><dl><dt><span class="section"><a href="#common-libraries-hibernate">8.1. Working with Hibernate</a></span></dt><dt><span class="section"><a href="#common-libraries-datasources">8.2. Working with DataSources</a></span></dt><dt><span class="section"><a href="#common-libraries-weaving-instrumentation">8.3. Weaving and Instrumentation</a></span></dt><dt><span class="section"><a href="#common-libraries-tld">8.4. JSP Tag Libraries</a></span></dt></dl></dd><dt><span class="chapter"><a href="#known-issues">9. Known Issues</a></span></dt><dd><dl><dt><span class="section"><a href="#known-issues-jpa">9.1. JPA Entity Scanning</a></span></dt><dt><span class="section"><a href="#known.issues.proxy">9.2. ClassNotFoundError When Creating a Proxy</a></span></dt><dt><span class="section"><a href="#known.issues.cglib">9.3. Creating proxies with CGLIB for package-protected types</a></span></dt><dt><span class="section"><a href="#known-issues-tomcat-restrictions">9.4. Tomcat Restrictions</a></span></dt><dt><span class="section"><a href="#known-issues-web-bundle-default-headers">9.5. Default Web Application Bundle Headers</a></span></dt></dl></dd></dl></div><div class="preface" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="preface"></a>Preface</h2></div></div></div><p>
- Increasing complexity in modern enterprise applications is a fact of life.
- You not only have to deal with complex business logic, but also a myriad
- of other concerns such as security, auditing, exposing business
- functionality to external applications, and managing the evolution of
- that functionality and technologies. The Spring Framework addresses these
- needs by offering a Plain-Old Java Object (POJO) based solution that
- lets you focus on your business logic.
- </p><p>
- Complex applications pose problems that go beyond using the right set of
- technologies. You need to take into account other considerations such as
- a simplified development process, easy deployment, monitoring deployed
- applications, and managing changes in response to changing business needs.
- This is where the Virgo Runtime Environment comes into play. It offers a simple yet
- comprehensive platform to develop, deploy, and service enterprise
- applications. In this Programmer Guide, we explore the runtime portions of the
- Virgo Runtime Environment, the Virgo Web Server and the Virgo Kernel, and learn how to develop
- applications to benefit from their capabilities.
- </p><div class="simplesect" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e73"></a>A Note to Virgo Kernel Programmers</h2></div></div></div><p>
- Although this guide is written primarily for Virgo Web Server programmers, much of it is also useful for
- Virgo Kernel programmers who should simply ignore the web-related sections.
- </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="prerequisites"></a>1. Prerequisites</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="prerequisites-environment"></a>1.1 Runtime Environment</h2></div></div></div><p>
- The Virgo Web Server requires Java SE 6 or later to be installed. Java is available from
- <a class="ulink" href="http://java.sun.com/javase/downloads/index.jsp" target="_top">Sun</a> and elsewhere.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="prerequisites-references"></a>1.2 References</h2></div></div></div><p>
- To make effective use of the Virgo Web Server, you should also refer to the following guides:
- </p><div class="itemizedlist"><ul type="disc"><li><a class="ulink" href="../../user-guide/html/index.html" target="_top">Virgo User Guide</a></li><li><a class="ulink" href="http://static.springframework.org/osgi/docs/current/reference/html/" target="_top">Spring Dynamic Modules Reference Guide</a></li><li><a class="ulink" href="http://static.springsource.org/spring/docs/3.0.x/spring-framework-reference/html/index.html" target="_top">Spring Framework Reference Guide</a></li></ul></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="introduction"></a>2. Introduction to the Virgo Web Server</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="introduction-preface"></a>2.1 Overview</h2></div></div></div><p>
- In this chapter, we provide an overview of the Virgo Web Server focusing
- on what it is, what benefits it provides to developers and administrators,
- and why you should use it.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="introduction-what"></a>2.2 What is the Virgo Web Server?</h2></div></div></div><p>
- The Virgo Web Server, or VWS for short, is the runtime portion of the Virgo Runtime Environment.
- It is a lightweight, modular, OSGi-based runtime that provides a complete packaged solution for developing,
- deploying, and managing enterprise applications.
- By leveraging several best-of-breed technologies and improving upon
- them, the VWS offers a compelling solution to develop and deploy
- enterprise applications.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="introduction-constituents"></a>What makes up the Virgo Web Server?</h3></div></div></div><p>
- The Virgo Web Server is built on top of the following core technologies:
- </p><div class="itemizedlist"><ul type="disc"><li><a class="ulink" href="http://www.springframework.org/" target="_top">Spring Framework</a>, obviously!</li><li><a class="ulink" href="http://tomcat.apache.org/" target="_top">Tomcat</a> as the web container.</li><li><a class="ulink" href="http://www.osgi.org/Specifications/HomePage" target="_top">OSGi R4.2</a>.</li><li><a class="ulink" href="http://www.eclipse.org/equinox/" target="_top">Equinox</a> as the OSGi implementation.</li><li><a class="ulink" href="http://www.springframework.org/osgi/" target="_top">Spring Dynamic Modules for OSGi</a> for working with OSGi in a Spring application.</li><li><a class="ulink" href="http://www.springsource.com/products/sts" target="_top">SpringSource Tool Suite</a> for developing applications.</li></ul></div><p>
- Note, however, that the Virgo Web Server isn’t just a combination
- of these technologies. Rather, it integrates and extends these
- technologies to provide many features essential for developing,
- deploying, and managing today’s enterprise Java applications.
- </p></div><p>
- The following diagram presents a high-level overview of the VWS’s architecture.
- </p><p>
- <img src="images/introduction-architecture.png">
- </p><p>
- At the heart of the Virgo Web Server is the Virgo Kernel or VK.
- The VK is an OSGi-based kernel that takes full advantage of the modularity
- and versioning of the OSGi platform. The VK builds on Equinox and extends its capabilities for
- provisioning and library management, as well as providing core functionality for the VWS.
- </p><p>
- To maintain a minimal runtime footprint, OSGi bundles are installed on demand by the
- VK provisioning subsystem. This allows for an application to be installed into a running
- VWS and for its dependencies to be satisfied from an external repository. Not only
- does this remove the need to manually install all your application dependencies, which
- would be tedious, but it also keeps memory usage to a minimum.
- </p><p>
- As shown in the figure, VK runs on top of Equinox within a standard Java
- Virtual Machine. Above the VK is a layer of subsystems which contribute functionality
- to the VWS. Subsystems typically provide additional services to the basic OSGi container
- such as serviceability, management, and specific artifact deployment such as web application.
- </p><p>
- Version 2.1.1.RELEASE of the Virgo Web Server supports <span class="emphasis"><em>bundle</em></span>,
- <span class="emphasis"><em>plan</em></span>, <span class="emphasis"><em>PAR</em></span>, <span class="emphasis"><em>configuration</em></span>,
- <span class="emphasis"><em>web</em></span>, and <span class="emphasis"><em>WAR</em></span> artifacts, which enable
- you to build sophisticated web applications. This includes support for
- standard Java EE WARs, "shared library" WARs, and "shared services" WARs, each of
- which will be covered in greater detail in <a class="xref" href="#architecture" title="3. Deployment Architecture">Chapter 3, <i>Deployment Architecture</i></a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="introduction-why"></a>2.3 Why the Virgo Web Server?</h2></div></div></div><p>
- You could deploy a web application in a stand-alone servlet engine or application server.
- Or you could even deploy directly in an OSGi container such as Equinox. However,
- deploying in the Virgo Web Server offers a number of key benefits that make it both more
- appealing and more suitable for enterprise application development.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="introduction-unified-deployment"></a>Deployment options and migration paths</h3></div></div></div><p>
- While many applications deployed in the Virgo Web Server will take advantage
- of OSGi capabilities, not all applications need such sophistication.
- For example, development teams may initially choose to continue packaging
- existing web applications as standard WAR files and then gradually migrate
- toward a fully OSGi-based packaging and deployment model. The Virgo Web Server
- makes such migrations easy for developers by supporting multiple packaging
- and deployment formats. These formats and migration strategies are discussed
- in greater detail in <a class="xref" href="#migrating-to-osgi" title="5. Migrating to OSGi">Chapter 5, <i>Migrating to OSGi</i></a> and
- <a class="xref" href="#formtags-case-study" title="6. Case study: Migrating the Form Tags sample application">Chapter 6, <i>Case study: Migrating the Form Tags sample application</i></a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="introduction-simplified-deployment"></a>Simplified development and deployment of OSGi-based applications</h3></div></div></div><p>
- Prior to the release of the Virgo Web Server, developing and deploying OSGi
- applications involved inherent complexity such as:
- </p><div class="itemizedlist"><ul type="disc"><li><span class="emphasis"><em>Obtaining OSGi bundles for popular Java libraries:</em></span>
- For optimal benefits, every technology you use in an OSGi application must
- be packaged as OSGi bundles. Currently, this involves manually converting
- JAR files into bundles and making sure that any libraries needed by those
- bundles are also available as OSGi bundles. The SpringSource Enterprise Bundle Repository is a good source of
- popular pre-bundled libraries.
- </li><li><span class="emphasis"><em>Package management complexity:</em></span>
- OSGi bundles use other bundles through <code class="code">Import-Package</code> manifest headers.
- Many applications use a set of common technologies (e.g., an ORM solution,
- a web framework, etc.). Combining these two characteristics leads to duplicated
- configuration in the form of repeated and verbose <code class="code">Import-Package</code> statements.
- </li><li><span class="emphasis"><em>Lack of application-level isolation:</em></span>
- In OSGi everything is a bundle, and all bundles share the same OSGi Service Registry.
- To highlight how conflicts can arise between applications and their services in this
- shared service registry, consider the following scenarios.
- <div class="itemizedlist"><ul type="circle"><li>
- Application <code class="code">A</code> is comprised of bundles <code class="code">B</code> and <code class="code">C</code>.
- In a standard OSGi environment, if you attempt to install two instances of the same
- version of application <code class="code">A</code> (i.e., two sets of bundles <code class="code">B</code> and
- <code class="code">C</code>), a clash will occur, because you cannot deploy multiple bundles with
- the same <code class="code">Bundle-SymbolicName</code> and <code class="code">Bundle-Version</code> combination.
- </li><li>
- Application <code class="code">A1</code> is comprised of bundles <code class="code">B1</code> and <code class="code">C1</code>.
- Similarly, application <code class="code">A2</code> is comprised of bundles <code class="code">B2</code> and <code class="code">C2</code>.
- Each bundle has a unique combination of <code class="code">Bundle-SymbolicName</code> and <code class="code">Bundle-Version</code>.
- Bundles <code class="code">B1</code> and <code class="code">B2</code> both export service <code class="code">S</code> which
- is imported by both <code class="code">C1</code> and <code class="code">C2</code>. In contrast to the previous
- example, there is no conflict resulting from duplicate
- <code class="code">Bundle-SymbolicName</code>/<code class="code">Bundle-Version</code> combinations; however,
- there is a clash for the exported service <code class="code">S</code>.
- Which service <code class="code">S</code> will bundles <code class="code">C1</code> and <code class="code">C2</code> end up
- using once they are installed?
- Assuming bundles <code class="code">B1</code> and <code class="code">C1</code> are intended to work together,
- you would not want bundle <code class="code">C1</code> to get a reference to service <code class="code">S</code>
- from bundle <code class="code">B2</code>, because it is installed in a different logical application.
- On the contrary, you typically want bundle <code class="code">C1</code> to get a reference to
- service <code class="code">S</code> exported by bundle <code class="code">B1</code>, but in a standard OSGi environment
- this may not be the case.
- </li></ul></div></li></ul></div><p>
- Furthermore, since standard OSGi does not define a notion of an application as a set of bundles,
- you cannot deploy or undeploy an application and its constituent bundles as a single unit.
- </p><p>
- The Virgo Web Server introduces a number of features to solve these issues:
- </p><div class="itemizedlist"><ul type="disc"><li>
- A full set of OSGi bundles for many popular Java libraries to get you
- started quickly with creating OSGi applications.
- </li><li>
- An OSGi library concept that obviates the need to
- duplicate verbose <code class="code">Import-Package</code> statements.
- </li><li>
- The PAR packaging format which offers
- application-level isolation and deployment.
- </li><li>
- The concept of a plan, which is an XML file that lists a collection of bundles that Virgo Web Server should load together as a single application. Conceptually, plans are very like PARs, except that a plan describes the contents of the application rather than a PAR that actually contains them.
- </li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="introduction-diagnostics"></a>Enhanced diagnostics during deployment and in production</h3></div></div></div><p>
- Identifying why an application won’t deploy or which particular library
- dependencies are unsatisfied is the cause of many headaches!
- Similarly, production time errors that don’t identify the root cause are
- all too familiar to Java developers. The VWS was designed from the
- ground up to enable tracing and First Failure Data Capture (FFDC) that
- empower developers with precise information at the point of failure to
- fix the problem quickly.
- </p></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="architecture"></a>3. Deployment Architecture</h2></div></div></div><p>
- The Virgo Web Server
- offers several choices when it comes to deploying applications. Each choice offers certain advantages, and it is
- important to understand those in order to make the right choice for your application. In this chapter, we take a
- closer look at the choices offered, compare them, and provide guidelines in choosing the right one based on your
- specific needs.
- </p><p>
- The VWS supports standard self-contained WAR files thus allowing you to use the Virgo Web Server
- as an enhanced web server. The VWS also supports the
- <span class="emphasis"><em>Shared Libraries</em></span>
- WAR format which allows for slimmer WAR files that depend on OSGi bundles instead of including JAR files inside the
- WAR. The
- <span class="emphasis"><em>Shared Services</em></span>
- WAR format allows developers to further reduce the complexity of standard WARs by deploying services and
- infrastructure bundles alongside the WAR. A shared services WAR will then consume the services published by those
- bundles. To complete the picture, the VWS supports the new OSGi-standard
- <span class="emphasis"><em>Web Bundle</em></span>
- deployment format for web applications that builds on the benefits provided by a shared services WAR. In addition
- to this VWS provides additional conveniences for developing and deploying Spring MVC-based web
- applications.
- </p><p>For applications consisting of multiple bundles and web applications, plans and the PAR format are the
- primary deployment models that take advantage of OSGi capabilities. We will explore all of these formats and their
- suitability later in this guide.</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="architecture-deployment-formats"></a>3.1 Supported Deployment Formats</h2></div></div></div><p>
- The Virgo Web Server
- supports applications packaged in the following formats:
- </p><div class="orderedlist"><ol type="1"><li><p><a class="link" href="#architecture-raw-osgi-bundles" title="Raw OSGi Bundles">Raw OSGi Bundles</a></p></li><li><p><a class="link" href="#architecture-wars" title="WAR Deployment Formats">Java EE WAR</a></p></li><li><p><a class="link" href="#architecture-war-gemini" title="WARs and the Gemini Web Container">Web Bundles</a></p></li><li><p><a class="link" href="#architecture-pars" title="PAR">PAR</a></p></li><li><p><a class="link" href="#architecture-plans" title="Plans">Plans</a></p></li><li><p><a class="link" href="#architecture-configurations" title="Configurations">Configurations</a></p></li></ol></div><p>
- When you deploy an application to the VWS, each deployment artifact (e.g., a single bundle, WAR, PAR, or
- plan) passes through a deployment pipeline. This deployment pipeline is responsible for processing applications of certain
- types (i.e., application type). The 2.1.1.RELEASE release of the VWS natively supports deployers analogous
- to each of the aforementioned packaging options.
- </p><p>
- Let’s take a closer look now at each of the supported deployment and packaging options to explore which one is best
- suited for your applications.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-raw-osgi-bundles"></a>Raw OSGi Bundles</h3></div></div></div><p>
- At its core, the Virgo Web Server
- is an OSGi container. Thus any OSGi-compliant bundle can be deployed directly on the VWS unmodified.
- You’ll typically deploy an application as a single bundle or a set of stand-alone bundles if you’d like to publish or
- consume services globally within the container via the OSGi Service Registry.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-wars"></a>WAR Deployment Formats</h3></div></div></div><p>
- For Web Application Archives (WAR), the Virgo Web Server
- provides support for the following three formats.
- </p><div class="orderedlist"><ol type="1"><li><p><a class="link" href="#architecture-standard-war" title="Standard WAR">Standard WAR</a></p></li><li><p><a class="link" href="#architecture-shared-libraries-war" title="Shared Libraries WAR">Shared Libraries WAR</a></p></li><li><p><a class="link" href="#architecture-shared-services-war" title="Shared Services WAR">Shared Services WAR</a></p></li></ol></div><p> Each of these formats plays a distinct role in the incremental migration path from a standard Java EE WAR to
- an OSGi-ified web application.</p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="architecture-standard-war"></a>Standard WAR</h4></div></div></div><p>
- Standard WAR files are supported directly in the VWS. At deployment time, the WAR file is
- transformed into an OSGi bundle and installed into Tomcat. All the standard WAR contracts are honored, and your
- existing WAR files should just drop in and deploy without change. Support for standard, unmodified WAR files
- allows you to try out the Virgo Web Server on your existing web applications and then gradually migrate toward the
- <span class="emphasis"><em>Shared Libraries WAR</em></span>
- and
- <span class="emphasis"><em>Shared Services WAR</em></span>
- formats.
- </p><p> In addition to the standard support for WARs that you would expect from Tomcat, the VWS also
- enables the following features:</p><div class="orderedlist"><ol type="1"><li><p>Spring-driven load-time weaving (see Section 6.8.4, “Load-time weaving with AspectJ in the
- Spring Framework").</p></li><li><p>Diagnostic information such as FFDC (first failure data capture)</p></li></ol></div><p> The main benefit of this application style is familiarity -- everyone knows how to create a WAR file! You can
- take advantage of the VWS’s added feature set without modifying the application. The application
- can also be deployed on other Servlet containers or Java EE application servers.</p><p>
- You may choose this application style if the application is fairly simple and small. You may also prefer this style
- even for large and complex applications as a starting point and migrate to the other styles over time as discussed
- in
- <a class="xref" href="#migrating-to-osgi" title="5. Migrating to OSGi">Chapter 5, <i>Migrating to OSGi</i></a>
- .
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="architecture-shared-libraries-war"></a>Shared Libraries WAR</h4></div></div></div><p>
- If you have experience with developing and packaging web applications using the standard WAR format, you’re
- certainly familiar with the pains of library bloat. So, unless you’re installing shared libraries in a common
- library folder for your Servlet container, you have to pack all JARs required by your web application in
- <code class="literal">/WEB-INF/lib</code>.
- Prior to the release of the Virgo Web Server, such library bloat has essentially been the norm for web applications, but
- now there is a better solution! The Shared Libraries WAR format reduces your application’s deployment footprint and
- eradicates library bloat by allowing you to declare dependencies on libraries via standard OSGi manifest headers
- such as
- <code class="literal">Import-Package</code>
- and
- <code class="literal">Require-Bundle</code>
- . The VWS provides additional support for simplifying dependency management via the
- <code class="literal">Import-Library</code>
- and
- <code class="literal">Import-Bundle</code>
- manifest headers which are essentially macros that get expanded into OSGi-compliant
- <code class="literal">Import-Package</code>
- statements.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>
- For detailed information on which libraries are already available, check out the
- <a class="ulink" href="http://www.springsource.com/repository" target="_top">SpringSource Enterprise Bundle Repository
- </a>
- .
- </p></td></tr></table></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="architecture-shared-services-war"></a>Shared Services WAR</h4></div></div></div><p>
- Once you’ve begun taking advantage of declarative dependency management with a Shared Libraries WAR, you’ll likely
- find yourself wanting to take the next step toward reaping further benefits of an OSGi container: sharing services
- between your OSGi-compliant bundles and your web applications. By building on the power and simplicity of
- Spring-DM, the
- <span class="emphasis"><em>Shared Services WAR</em></span>
- format puts the OSGi Service Registry at your finger tips. As a best practice you’ll typically publish services
- from your domain, service, and infrastructure bundles via
- <code class="literal"><osgi:service ... /></code>
- and then consume them in your web application’s ApplicationContext via
- <code class="literal"><osgi:reference ... /></code>.
- Doing so promotes programming to interfaces and allows you to completely decouple your web-specific deployment
- artifacts from your domain model, service layer, etc., and that’s certainly a step in the right direction. Of the
- three supported WAR deployment formats, the Shared Services WAR is by far the most attractive in terms of
- modularity and reduced overall footprint of your web applications.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="architecture-war-gemini"></a>WARs and the Gemini Web Container</h4></div></div></div><p>
- Virgo Web Server fully supports the OSGi Web Applications standard. Using the reference implementation from Gemini Web that
- was developed by SpringSource from an offshoot of the original VWS codebase. This RI is now fully
- integrated in VWS as the basis of the support for web application deployment.
- </p><p>
- The Web Container specification introduces the concept of a <span class="emphasis"><em>web application bundle</em></span>, which is a WAR
- that is also a bundle. The specification defines how WAR files are transformed into bundles automatically as needed.
- </p><p>
- You can find an introduction to the Web Container in blog entries written by the VWS team
- <a class="ulink" href="http://blog.springsource.com/2009/05/27/introduction-to-the-osgi-web-container/" target="_top">here</a>
- and <a class="ulink" href="http://blog.springsource.com/2009/06/01/what-the-osgi-web-container-means-for-dm-server/" target="_top">here</a>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="architecture-war-gemini-extensions"></a>Extensions to the Web Container</h5></div></div></div><p>
- Virgo Web Server provides a variety of extensions to the Web Container that allow you to construct sophisticated applications.
- The table below, summarizes the extensions that are available or in development.
- </p><div class="table"><a name="d0e525"></a><p class="title"><b>Table 3.1. </b></p><div class="table-contents"><table style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Feature</th><th style="border-bottom: 1.0pt solid ; ">Description</th><th style="border-bottom: 1.0pt solid ; ">Notes</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Auto-import of system packages</td><td style="border-bottom: 1.0pt solid ; ">All packages exported by the system bundle are automatically imported by web bundles</td><td style="border-bottom: 1.0pt solid ; ">This feature is being discussed for inclusion in the specification</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Instrumentable ClassLoaders</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">All web bundle ClassLoaders are instrumentable by Spring’s load-time weaving infrastructure.</td><td style="border-bottom: 1.0pt solid ; "> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Support for exploded bundles/WARs</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Bundles/WARs in directory form can be deployed as web bundles</td><td style="border-bottom: 1.0pt solid ; "> </td></tr><tr><td style="border-right: 1.0pt solid ; ">Support for scanning TLDs in dependencies</td><td style="border-right: 1.0pt solid ; ">As per the Web Container specification, all TLDs located inside a web bundle are located using the rules
- defined in the JSP 2.1 specification. In VWS, the dependencies of a web bundle are also scanned
- for TLDs following the rules outlined in JSP 2.1</td><td class="auto-generated" style=""> </td></tr></tbody></table></div></div><br class="table-break"></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-web-bundles"></a>Web Modules</h3></div></div></div><p>
- Web Modules have been removed in favour of war files and web bundles following the OSGi Web Applications specification.
- We believe our users will benefit more from a standard model than one that is VWS-specific.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-pars"></a>PAR</h3></div></div></div><p>
- A PAR is a standard JAR which contains all of the modules of your application (e.g., service,
- domain, and infrastructure bundles as well as a WAR or web module for web applications) in a single deployment unit.
- This allows you to deploy, refresh, and undeploy your entire application as a single entity. If you are familiar with Java
- EE, it is worth noting that a PAR can be considered a replacement for an EAR (Enterprise Archive) within the context
- of an OSGi container. As an added bonus, modules within a PAR can be refreshed independently and on-the-fly, for
- example via the Virgo Web Server Tool Suite (see <a class="xref" href="#tooling" title="7. Tooling">Chapter 7, <i>Tooling</i></a>).
- </p><p>
- Many of the benefits of the PAR format are due to the underlying OSGi infrastructure, including:
- </p><div class="itemizedlist"><ul type="disc"><li><p> Fundamentally modularized applications: instead of relying on fuzzy boundaries between logical modules
- in a monolithic application, this style promotes physically separated modules in the form of OSGi bundles. Then
- each module may be developed separately, promoting parallel development and loose coupling.</p></li><li><p> Robust versioning of various modules: the versioning capability offered by OSGi is much more
- comprehensive than any alternatives. Each module can specify a version range for each of its dependencies. Bundles
- are isolated from each other in such a way that multiple versions of a bundle may be used simultaneously in an
- application.</p></li><li><p> Improved serviceability: each bundle may be deployed or undeployed in a running application. This allows
- modifying the existing application to fix bugs, improve performance, and even to add new features without having
- to restart the application.</p></li></ul></div><p>
- </p><p> Furthermore, PARs scope the modules of your application within the VWS. Scoping provides both a
- physical and logical application boundary, effectively shielding the internals of your application from other PARs deployed
- within the VWS. This means your application doesn’t have to worry about clashing with other running
- applications (e.g., in the OSGi Service Registry). You get support for load-time weaving, classpath scanning, context class
- loading, etc., and the VWS does the heavy lifting for you to make all this work seamlessly in an OSGi
- environment. If you want to take full advantage of all that the Virgo Web Server and OSGi have to offer, packaging and deploying
- your applications as a PAR is a good choice, although plans are an even better one, as described in the next section.</p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip: OSGi != multiple JARs"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">OSGi != multiple JARs</th></tr><tr><td align="left" valign="top"><p>
- Note that while physically separated modules can, in theory, be implemented simply using multiple
- JARs, complex versioning requirements often make this impractical. For example,
- consider the situation depicted in the diagram below.
-
- </p><div class="itemizedlist"><ul type="disc"><li><p>Bundle A depends on version 1.0.0 of bundle B and version 2.0.0 of bundle C.</p></li><li><p>Bundle B depends on version 1.0.0 of bundle C.</p></li></ul></div><p>
-
- Suppose that versions 1.0.0 and 2.0.0 of bundle C are neither backward nor forward compatible. Traditional monolithic
- applications cannot handle such situations: either bundle A or bundle B would need reworking which undermines
- truly independent development. OSGi’s versioning scheme enables this scenario to be implemented in a robust manner.
- If it is desirable to rework the application to share a single version of C, then this can be planned in and is not forced.
- </p><div class="mediaobject"><img src="images/architecture-bundle-versioning.png"></div></td></tr></table></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-plans"></a>Plans</h3></div></div></div><p>
- A plan is similar to a PAR in that it encapsulates all of the artifacts of your application in a single deployment unit.
- The main difference, however, is that a plan is simply an XML file that lists the artifacts of your application;
- a PAR, by contrast, is an actual JAR file that physically contains the artifacts.
- Just like a PAR, you deploy, refresh, and undeploy a plan as a single entity.
- We highly recommends the use of plans for creating applications.
- </p><p>
- When you create a plan, you can specify that the included bundles and services are in a scope that isolates them
- from the rest of Virgo Web Server
- and its deployments.
- This scoping ensures that the bundles wire to each other and see each other’s services in preference to services
- from outside the scope.
- Scoping also prevents application code from leaking into the global scope or scope of another application.
- In addition, a plan can link the lifecycle of a group of bundles together atomically, which ensures that install,
- start, stop, and uninstall events
- on a single artifact in the plan are escalated to all artifacts in the plan.
- You can, however, disable both of these features by simply updating an attribute in the plan.
- </p><p>
- The general benefits of using plans are similar to those of using PARs; see <a class="link" href="#architecture-pars" title="PAR">PAR</a> for details.
- Plans offer added benefits, however, such as the ability to control the deployment order of your application:
- the order in which you list artifacts in the plan’s XML file is the order in which VWS deploys them.
- Additionally, because plans specify the artifacts that make up an application by reference, it is easier to share content
- between plans as well as update individual parts of a plan without having to physically repackage (re-JAR) it.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="architecture-configurations"></a>Configurations</h3></div></div></div><p>
- A Configuration is simply a Java properties file. When deployed it will be recognised by the deployer and installed in to
- <span class="emphasis"><em>Configuration Admin</em></span> for later use by your applications. The name that it will be installed under or PID
- (Persistent Identity) will be the name of the properties file less any extension. How to consume configuration data
- is discussed <a class="link" href="#developing-applications-configuration-artifacts" title="4.4 Creating and Using Configuration Artifacts">later</a>.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="architecture-dependency-types"></a>3.2 Dependency Types</h2></div></div></div><p>
- In an OSGi environment, there are two kinds of dependencies between various bundles: <span class="emphasis"><em>type</em></span>
- dependency and <span class="emphasis"><em>service</em></span> dependency.
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <span class="bold"><strong>Type dependency</strong></span>: A bundle may depend on a type exported by another
- bundle thus creating a type dependency. Type dependencies are managed through <code class="literal">Import-Package</code>
- and <code class="literal">Export-Package</code> directives in the OSGi manifest. This kind of dependency is similar
- to a JAR file using types in other JAR files from the classpath. However, as we’ve seen earlier, there are
- significant differences.
- </p></li><li><p>
- <span class="bold"><strong>Service dependency</strong></span>: A bundle may also publish services (preferably using
- Spring-DM), and other bundles may consume those services. If two bundles depend on the same service, both
- will be communicating effectively to the same object. More specifically, any state for that service will
- be shared between all the clients of that service. This kind of arrangement is similar to the commonly
- seen client-server interaction through mechanisms such as RMI or Web Services.
- </p></li></ul></div><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="architecture-forming-bundles"></a>3.3 A guide to forming bundles</h2></div></div></div><p>
- So what makes a good application suitable for deployment on the Virgo Web Server? Since OSGi is at the heart of the
- VWS, modular applications consisting of bundles, which each represent distinct functionality and
- well-defined boundaries, can take maximum advantage of the OSGi container’s capabilities. The core ideas behind forming
- bundles require following good software engineering practices: separation of concerns, minimum coupling, and communication
- through clear interfaces. In this section, we look at a few approaches that you may use to create modular applications
- for Virgo Web Server deployment. Please consider the following discussion as guidelines and not as rules.
- </p><p> Bundles can be formed along horizontal slices of layering and vertical slices of function. The objective is to
- enable independent development of each bundle and minimize the skills required to develop each bundle.</p><p>
- For example, an application could have the following bundles: <span class="emphasis"><em>infrastructure</em></span>,
- <span class="emphasis"><em>domain</em></span>, <span class="emphasis"><em>repository</em></span>, <span class="emphasis"><em>service</em></span>, and
- <span class="emphasis"><em>web</em></span> as shown in the following diagram.</p><p>
- </p><div class="mediaobject"><img src="images/bundle-dependencies-layers.png"></div><p>
-
- Each bundle consists of types appropriate for that layer and exports packages and services to be used by other
- layers. Let’s examine each bundle in more detail:
- </p><div class="table"><a name="architecture-forming-bundles-across-layers-table"></a><p class="title"><b>Table 3.2. Bundles across layers</b></p><div class="table-contents"><table summary="Bundles across layers" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col><col><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Bundles</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Imported Packages</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Exported Packages</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Consumed Services</th><th style="border-bottom: 1.0pt solid ; ">Published Services</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Infrastructure</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Third-party libraries</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Infrastructure interfaces</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">None</td><td style="border-bottom: 1.0pt solid ; ">None</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Domain</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Depends: for example, if JPA is used to annotate persistent types, then JPA packages.</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Public domain types</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">None</td><td style="border-bottom: 1.0pt solid ; ">None</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Web</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Domain, Service</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">None</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Service beans</td><td style="border-bottom: 1.0pt solid ; ">None</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Service</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Domain, Infrastructure, Repository</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Service interfaces</td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Repository beans</td><td style="border-bottom: 1.0pt solid ; ">Service beans</td></tr><tr><td style="border-right: 1.0pt solid ; ">Repository</td><td style="border-right: 1.0pt solid ; ">Domain, Third-party libraries, ORM bundles, etc.</td><td style="border-right: 1.0pt solid ; ">Repository interfaces</td><td style="border-right: 1.0pt solid ; ">DataSources, ORM session/entity managers, etc.</td><td style="">Repository beans</td></tr></tbody></table></div></div><p><br class="table-break">
- </p><p>
- Within each layer, you may create bundles for each subsystem representing a vertical slice of business functionality.
- For example, as shown in the following figure, the service layer is divided into two bundles each representing
- separate business functionalities.
- </p><div class="mediaobject"><img src="images/bundle-dependencies-verticals.png"></div><p>
- </p><p> You can similarly separate the repositories, domain classes, and web controllers based on the business role
- they play.</p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="developing-applications"></a>4. Developing Applications</h2></div></div></div><p>
- Applications that take advantage of the OSGi capabilities of the Virgo Web Server
- are typically comprised of multiple bundles. Each bundle may have dependencies on
- other bundles. Furthermore, each bundle exposes only certain packages and
- services. In this chapter, we look at how to create bundles, import and export
- appropriate functionality, and create artifacts to deploy web applications on the Virgo Web Server.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-bundle"></a>4.1 Anatomy of a bundle</h2></div></div></div><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>
- This is an abbreviated introduction to OSGi bundles. Please refer to the
- <a class="ulink" href="http://static.springframework.org/osgi/docs/current/reference/html/" target="_top">
- Spring Dynamic Modules for OSGi documentation</a> for full details.
- </p></td></tr></table></div><p>
- An OSGi bundle is simply a jar file with metadata that describe
- additional characteristics such as version and imported and exported packages.
- </p><p>
- A bundle exports types and publishes services to be used by other bundles:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <span class="bold"><strong>Types</strong></span>:
- via the OSGi <code class="code">Export-Package</code> directive,
- </p></li><li><p>
- <span class="bold"><strong>Services</strong></span>:
- via Spring-DM’s <code class="code"><service ... /></code> XML namespace element.
- </p></li></ul></div><p>
- A bundle may import types and services exported by other bundles:
- </p><div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>Types</strong></span>:
- via the OSGi <code class="code">Import-Package</code> directive,</p></li><li><p><span class="bold"><strong>Services</strong></span>:
- via Spring-DM’s <code class="code"><reference ... /></code> XML namespace element.</p></li></ul></div><p>
- Let’s see an example from the PetClinic sample application. The following listing shows the
- <code class="filename">MANIFEST.MF</code> file for the <code class="code">org.springframework.petclinic.infrastructure.hsqldb</code> bundle.
- </p><pre class="programlisting">
-Manifest-Version: 1.0
-<span class="bold"><strong>Bundle-ManifestVersion</strong></span>: 2
-<span class="bold"><strong>Bundle-Name</strong></span>: PetClinic HSQL Database Infrastructure
-<span class="bold"><strong>Bundle-SymbolicName</strong></span>: org.springframework.petclinic.infrastructure.hsqldb
-<span class="bold"><strong>Bundle-Version</strong></span>: 1.0
-<span class="bold"><strong>Import-Library</strong></span>: org.springframework.spring;version="[2.5,2.6]"
-<span class="bold"><strong>Import-Bundle</strong></span>: com.springsource.org.apache.commons.dbcp;version="[1.2.2.osgi,1.2.2.osgi]",
- com.springsource.org.hsqldb;version="[1.8.0.9,1.8.0.9]"
-<span class="bold"><strong>Import-Package</strong></span>: javax.sql
-<span class="bold"><strong>Export-Package</strong></span>: org.springframework.petclinic.infrastructure
- </pre><p>
- The <code class="code">org.springframework.petclinic.infrastructure.hsqldb</code> bundle expresses its dependencies on
- the <code class="code">javax.sql</code> package, the Commons DBCP and HSQLDB bundles, and the Spring library (we will examine
- the details of the library artifact in <a class="xref" href="#developing-applications-defining-libraries" title="Defining libraries">the section called “Defining libraries”</a>). The Commons DBCP
- bundle is imported at a version of exactly 1.2.2.osgi and the HSQLDB bundle is imported at a version of exactly
- 1.8.0.9. The Spring library is imported at a version between 2.5 inclusive and 2.6 exclusive.
- </p><p>
- Note that you do not specify the bundle that will provide the imported packages.
- The Virgo Web Server will examine the available bundles and satisfy the required dependencies.
- </p><p>
- The following <code class="filename">osgi-context.xml</code> file from the PetClinic sample’s
- <code class="code">org.springframework.petclinic.repository.jdbc</code> bundle declares a service published by the bundle and
- references a service published by another bundle.
- </p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">beans:beans</span> <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xmlns:beans</span>=<span class="hl-value">"http://www.springframework.org/schema/beans"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi
- http://www.springframework.org/schema/osgi/spring-osgi.xsd
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd"</span>>
-
- <<span class="hl-tag">service</span> <span class="hl-attribute">id</span>=<span class="hl-value">"osgiClinic"</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"clinic"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"org.springframework.petclinic.repository.Clinic"</span> />
- <<span class="hl-tag">reference</span> <span class="hl-attribute">id</span>=<span class="hl-value">"dataSource"</span> <span class="hl-attribute">interface</span>=<span class="hl-value">"javax.sql.DataSource"</span>/>
-
-<<span class="hl-tag">/beans:beans</span>></pre><p>
- The <code class="code">service</code> element publishes the <code class="code">clinic</code> bean
- (a regular Spring bean declared in the <code class="filename">module-context.xml</code> file) and specifies
- <code class="code">org.springframework.petclinic.repository.Clinic</code> as the type
- of the published service.
- </p><p>The <code class="code">reference</code> elements define a <code class="code">dataSource</code> bean that references
- a service published by another bundle with a an interface type of <code class="code">javax.sql.DataSource</code>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-packaging"></a>4.2 Creating PARs and WARs</h2></div></div></div><p>
- The Virgo Web Server supports two OSGi-oriented ways of packaging applications: the PAR format
- and application bundles (including web bundles). The VWS also supports three
- distinct WAR deployment and packaging formats: standard Java EE WAR, Shared Libraries WAR, Shared Services WAR.
- </p><p>
- The VWS also supports plans as a way to describe an application. This method is similar to a PAR
- in that it encapsulates all the artifacts of an application as a single unit, but differs in that a plan simply
- lists the bundles in an XML file rather than packaging all the bundles in a single JAR file. The use of plans
- offers additional benefits to using PARs; for this reason, we recommend their use. For details, see
- <a class="link" href="#developing-applications-plans" title="4.3 Creating Plans">Creating Plans</a>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-packaging-par"></a>PARs</h3></div></div></div><p>
- An OSGi application is packaged as a JAR file, with extension <code class="literal">.par</code>. A PAR artifact offers several benefits:
- </p><div class="itemizedlist"><ul type="disc"><li>A PAR file has an application name, version, symbolic name, and description.</li><li>The artifacts of a PAR file are scoped so that they cannot
- be shared accidentally by other applications. The scope forms a boundary for automatic
- propagation of load time weaving and bundle refresh.</li><li>The artifacts of a PAR have their exported packages imported by the
- synthetic context bundle which is used for thread context class loading. So,
- for example, hibernate will be able to load classes of any of the exported
- packages of the artifacts in a PAR file using <code class="code">Class.forName()</code> (or equivalent).</li><li>The PAR file is visible to management interfaces.</li><li>The PAR file can be undeployed and redeployed as a unit.</li></ul></div><p>
- </p><p>
- A PAR includes one or more application bundles and its manifest specifies the following
- manifest headers:
- </p><div class="table"><a name="developing-applications-packaging-par-headers-table"></a><p class="title"><b>Table 4.1. PAR file headers</b></p><div class="table-contents"><table summary="PAR file headers" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Header</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">Application-SymbolicName</code></td><td style="border-bottom: 1.0pt solid ; ">Identifier for the application which, in combination with Application-Version, uniquely identifies an application</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">Application-Name</code></td><td style="border-bottom: 1.0pt solid ; ">Human readable name of the application</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">Application-Version</code></td><td style="border-bottom: 1.0pt solid ; ">Version of the application</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">Application-Description</code></td><td style="">Short description of the application</td></tr></tbody></table></div></div><p><br class="table-break">
- </p><p>
- The following code shows an example MANIFEST.MF in a PAR file:
- </p><pre class="programlisting"><span class="bold"><strong>Application-SymbolicName</strong></span>: com.example.shop
-<span class="bold"><strong>Application-Version</strong></span>: 1.0
-<span class="bold"><strong>Application-Name</strong></span>: Online Shop
-<span class="bold"><strong>Application-Description</strong></span>: Example.com’s Online Shopping Application</pre><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-packaging-web-modules"></a>Web Modules</h3></div></div></div><p>
- As discussed earlier, Web Modules are no longer supported in VWS. Instead, we recommend that you
- use Shared Service WARs or Web Application Bundles that are compliant with the OSGi Web Applications specification.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="developing-applications-packaging-web-module-to-war"></a>Migrating to a Web Application Bundle from a Web Module</h4></div></div></div><p>
- To move from a Web Module to a Web Container-compliant Web Bundle you need to follow these four steps:
- </p><div class="orderedlist"><ol type="1"><li>Remove the <code class="literal">Module-Type</code> manifest header</li><li>Replace any <code class="literal">Web-DispatcherServletUrlPatterns</code> header with the corresponding
- servlet entries in <code class="literal">web.xml</code></li><li>Replace any <code class="literal">Web-FilterMappings</code> header with the corresponding filter
- entries in <code class="literal">web.xml</code></li><li>Move all content in <code class="literal">MODULE-INF</code> to the root of the WAR</li></ol></div><p>
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="developing-applications-packaging-web-module-to-war-ds"></a>Removing <code class="literal">Web-DispatcherServletUrlPatterns</code></h5></div></div></div><p>
- To remove a <code class="literal">Web-DispatcherServletUrlPatterns</code> header such as
- <code class="literal">Web-DispatcherServletUrlPatterns: *.htm</code>, start by declaring
- a <code class="classname">DispatcherServlet</code> in <code class="literal">web.xml</code>:
- </p><pre class="programlisting"><servlet>
- <servlet-name>dispatcher.myapp</servlet-name>
- <servlet-<span class="hl-keyword">class</span>>org.springframework.web.servlet.DispatcherServlet</servlet-<span class="hl-keyword">class</span>>
-</servlet></pre><p>
- For every mapping in the <code class="literal">DispatcherServletUrlPatterns</code> header, create the
- corresponding <code class="literal">servlet-mapping</code>:
- </p><pre class="programlisting"><servlet-mapping>
- <servlet-name>dispatcher.myapp</servlet-name>
- <url-pattern>*.htm</url-pattern>
-</servlet-mapping></pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="developing-applications-packaging-web-module-to-war-filter"></a>Removing <code class="literal">Web-FilterMappings</code></h5></div></div></div><p>
- To remove a <code class="literal">Web-FilterMappings</code> header such as
- <code class="literal">Web-FilterMappings: myfilter;url-patterns:="*.htm"</code>, start by declaring
- <code class="classname">DelegatingFilterProxy</code> in <code class="literal">web.xml</code> for each filter listed:
- </p><pre class="programlisting"><filter>
- <filter-name>myfilter</filter-name>
- <filter-<span class="hl-keyword">class</span>>org.springframework.web.filter.DelegatingFilterProxy</filter-<span class="hl-keyword">class</span>>
-</filter></pre><p>
- For every mapping listed for the filter create the
- corresponding <code class="literal">filter-mapping</code>:
- </p><pre class="programlisting"><filter-mapping>
- <filter-name>myfilter</filter-name>
- <url-pattern>*.htm</url-pattern>
-</filter-mapping></pre></div></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-plans"></a>4.3 Creating Plans</h2></div></div></div><p>
- Plans are similar to PARs in that they encapsulate the artifacts of an application as a single unit. As a consequence, they have similar benefits; for details of the benefits common to PARs and plans, see <a class="link" href="#developing-applications-packaging-par" title="PARs">PARs</a>.
- </p><p>
- Plans have the following additional benefits, which is why we recommend that you use plans rather than PARs when defining an application:
- </p><div class="itemizedlist"><ul type="disc"><li>Virgo Web Server deploys the artifacts in the plan in the order in which they are listed in the XML file, which gives you complete control over deployment order. With a PAR, the order of deployment of the included artifacts is not guaranteed.</li><li>Plans describe their contents by reference (using an XML file) as opposed to PARs that are JAR files that physically contain the included artifacts. For this reason, it is easier to share content between plans as well as update individual parts of a plan without having to physically repackage (re-JAR) it.</li><li>You can enable or disable whether a plan is scoped or atomic; PARs are always scoped and atomic.</li></ul></div><p>
- Plans always get their dependencies from the VWS repository. This means, for example, that if you drop one of the plan’s dependencies in the <code class="code">pickup</code> directory rather than adding it to the repository, the plan will fail to deploy because it will not find the dependency.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-plans-create"></a>Creating the Plan XML File</h3></div></div></div><p>
- Plans are XML files that have a <code class="code">.plan</code> file extension, such as <code class="code">multi-artifact.plan</code>.
- The structure of the XML file is simple:
- the root element is <code class="code"><plan></code> with attributes specifying the name of the plan, the version, atomicity, and scoping.
- Then, for each artifact that makes up your application,
- you add a <code class="code"><artifact></code> element, using its attributes to specify the type of artifact and its name and version.
- The following is a simple example of a plan’s XML file:
- </p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">plan</span> <span class="hl-attribute">name</span>=<span class="hl-value">"multi-artifact.plan"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"1.0.0"</span> <span class="hl-attribute">scoped</span>=<span class="hl-value">"true"</span> <span class="hl-attribute">atomic</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springsource.org/schema/dm-server/plan"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"
- http://www.springsource.org/schema/dm-server/plan
- http://www.springsource.org/schema/dm-server/plan/springsource-dm-server-plan.xsd"</span>>
-
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"configuration"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"app-properties"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"1.0.0"</span>/>
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"bundle"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"com.springsource.exciting.app"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"[2.0.0, 3.1.0)"</span>/>
-
-<<span class="hl-tag">/plan</span>></pre><p>
- In the preceding example, the name of the plan is <code class="code">multi-artifact.plan</code> and its version is <code class="code">1.0.0</code>.
- The plan is both scoped and atomic. The plan contains two artifacts: one is a bundle called <code class="code">com.springsource.exciting.app</code> and the other is a configuration file called <code class="code">app-properties</code>.
- </p><p>
- The following table describes the attributes of the <code class="code"><plan></code> element.
- </p><div class="table"><a name="developing-applications-plans-create-plan-attributes"></a><p class="title"><b>Table 4.2. Attributes of the <plan> Element</b></p><div class="table-contents"><table summary="Attributes of the <plan> Element" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Attribute</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Description</th><th style="border-bottom: 1.0pt solid ; ">Required?</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">name</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies the name of this plan. Virgo Web Server uses the name as one component of the unique identifier of this plan. </td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">version</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies the version of this plan. You must use OSGi version specification syntax, such as <code class="code">2.1.0</code>. Virgo Web Server uses the version as one component of the unique identifier of this plan. </td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">scoped</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies whether Virgo Web Server should install the artifacts into plan-specific scope so that only the application described by this plan has access to the artifacts. If you disable scoping, then Virgo Web Server installs the artifacts into the global scope, which means they are then available for access by all other deployed artifacts. Set the attribute to <code class="code">true</code> to enable scoping or <code class="code">false</code> to disable it.</td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">atomic</code></td><td style="border-right: 1.0pt solid ; ">Specifies whether you want to tie together the lifecycle of the artifacts in this plan. Making a plan atomic means that if you install, start, stop, or uninstall a single artifact in the plan, Virgo Web Server escalates the event to all artifacts in the plan. Also, in an atomic plan, Virgo Web Server prevents artifacts from being in inconsistent states. For example, if one artifact should fail to start, then Virgo Web Server stops all artifacts in the plan. Set this attribute to <code class="code">true</code> to enable atomicity or <code class="code">false</code> to disable it. </td><td style="">Yes.</td></tr></tbody></table></div></div><br class="table-break"><p>
- The following table describes the attributes of the <code class="code"><artifact></code> element.
- </p><div class="table"><a name="developing-applications-plans-create-artifact-attributes"></a><p class="title"><b>Table 4.3. Attributes of the <artifact> Element</b></p><div class="table-contents"><table summary="Attributes of the <artifact> Element" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Attribute</th><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Description</th><th style="border-bottom: 1.0pt solid ; ">Required?</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">type</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies the type of the artifact. Valid values are:
- <div class="itemizedlist"><ul type="disc"><li><code class="code">bundle</code>: Specifies an OSGi bundle. Use this artifact type for WAR files and Web application bundles. </li><li><code class="code">configuration</code>: Specifies that the artifact is a configuration file. Configuration files contain name/value pairs that set initial values for configuration properties of a bundle. </li><li><code class="code">plan</code>: Specifies that the artifact is a plan. </li><li><code class="code">par</code>: Specifies that the artifact is a PAR. </li></ul></div>
- </td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">name</code></td><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Specifies the name of the artifact.
-
- <p>See <a class="link" href="#">Artifact Names</a> for guidelines for determining the name of an artifact.</p>
- </td><td style="border-bottom: 1.0pt solid ; ">Yes.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">version</code></td><td style="border-right: 1.0pt solid ; ">Specifies the version or range of versions of this artifact that VWS should look up in its repositories and then install and deploy. You must use OSGi version specification syntax, such as <code class="code">[1.0.0, 2.0.0)</code>. </td><td style="">No. If not specified, defaults to <code class="code">0</code>, which in OSGi means 0 to infinity, or any version.</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="names-of-artifacts"></a>Artifact Names</h3></div></div></div><p>When you create a plan, you use the <code class="code">name</code> attribute of the <code class="code"><artifact></code> element to specify the name of all the plan’s dependencies. This section describes how to determine the name of an artifact, which is not always obvious.</p><p>Use the following guidelines to determine the name of an artifact:</p><div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>Bundle</strong></span>: In this context, a <span class="emphasis"><em>bundle</em></span> refers to a standard OSGi bundle as well as a Web application bundles and WAR file. The name of a bundle is the value of the <code class="code">Bundle-SymbolicName</code> header in the <code class="code">META-INF/MANIFEST.MF</code> file of the <code class="code">*.jar</code> or <code class="code">*.war</code> file. The following <code class="code">MANIFEST.MF</code> snippet shows a bundle with name <code class="code">com.springsource.exciting.app</code>:</p><pre class="screen">Bundle-SymbolicName: org.eclispe.virgo.exciting.app</pre><p>If the bundle does not contain a <code class="code">META-INF/MANIFEST.MF</code> file, then the name of the bundle is its filename minus the <code class="code">.jar</code> or <code class="code">.war</code> extension.</p></li><li><p><span class="bold"><strong>Configuration File</strong></span>: The name of a configuration file is its filename minus the <code class="code">.properties</code> extension. </p></li><li><p><span class="bold"><strong>Plan</strong></span>: The name of a plan is the value of the required <code class="code">name</code> attribute of the <code class="code"><plan></code> element in the plan’s XML file. In the following XML snippet, the plan name is <code class="code">multi-artifact.plan</code>:</p><pre class="screen"><?xml version="1.0" encoding="UTF-8"?>
-<plan name="<span class="bold"><strong>multi-artifact.plan</strong></span>" version="1.0.0" scoped="true" atomic="true"
- xmlns="http://www.springsource.org/schema/dm-server/plan"
-...</pre></li><li><p><span class="bold"><strong>PAR</strong></span>: The name of a PAR is the value of the <code class="code">Application-SymbolicName</code> header in the <code class="code">META-INF/MANIFEST.MF</code> file of the <code class="code">*.par</code> file. The following <code class="code">MANIFEST.MF</code> snippet shows a PAR with name <code class="code">com.springsource.my.par</code>:</p><pre class="screen">Application-SymbolicName: org.eclipse.virgo.my.par</pre><p>If the PAR does not contain a <code class="code">META-INF/MANIFEST.MF</code> file, then the name of the PAR is its filename minus the <code class="code">.par</code> extension.</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-plans-use"></a>Using the Plan</h3></div></div></div><p>
- Because a plan is a list of artifacts, rather than a physical file that contains the artifacts, there are a few additional steps you must perform before you deploy it to VWS.
- </p><div class="orderedlist"><ol type="1"><li><p>Copy the artifacts that make up the plan to the <code class="code">usr</code> repository, which by default is the <code class="code">$SERVER_HOME/repository/usr</code> directory, where <code class="code">$SERVER_HOME</code> refers to the top-level installation directory of VWS. Note that you might have configured the server differently; in which case, copy the artifacts to your custom repository directory.</p></li><li><p>Restart VWS.</p></li><li><p>After the server has started, either use the Admin Console to deploy the plan, or manually deploy it by copying the plan’s XML file into the <code class="code">$SERVER_HOME/pickup</code> directory. </p><p>This results in VWS deploying the plan with the same semantics as a PAR file.</p></li><li><p>To undeploy the plan, use the Admin Console, or simply delete it from the <code class="code">$SERVER_HOME/pickup</code> directory.</p></li></ol></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-plans-scoping"></a>Plans and Scoping</h3></div></div></div><p>As described in previous sections, you can specify that a plan be <span class="emphasis"><em>scoped</em></span>. This means that Virgo Web Server installs the artifacts that make up the plan into a plan-specific scope so that only the application described by the plan has access to the artifacts. If you disable scoping, then Virgo Web Server installs the artifacts into the global scope, which means they are available for access by all other deployed artifacts. This section describes scoping in a bit more detail. It also describes how you can change the default behavior of scoping, with respect to services, so that a service that is in a scope can be made globally available. </p><p>If a bundle in a given scope imports a package and a bundle in the same scope exports the package, then the import may only be satisfied by the bundle in the scope, and not by any bundles outside the scope, including the global scope. Similarly, package exports from bundles in a scope are not visible to bundles in the global scope.</p><p>If a bundle in a scope uses Spring DM (or the blueprint service) to obtain a service reference and a bundle in the same scope uses Spring DM (or the blueprint service) to publish a matching service, then the service reference may only bind to the service published in the scope (and not to any services outside the scope). Services published by bundles in a scope are not visible to bundles in the global scope. </p><p>However, sometimes it is useful to make a service in a scope globally available to artifacts outside the scope. To do this, publish the service with the <code class="literal">org.eclipse.virgo.service.scope</code> service property set to <code class="literal">global</code>. Use the <code class="literal"><service-properties></code> child element of <code class="literal"><service></code>, as shown in the following example: </p><pre class="programlisting"><service id="publishIntoGlobal" interface="java.lang.CharSequence">
- <span class="bold"><strong><service-properties>
- <beans:entry key="org.eclipse.virgo.service.scope" value="global" />
- </service-properties></strong></span>
- <beans:bean class="java.lang.String">
- <beans:constructor-arg value="foo"/>
- </beans:bean>
-</service></pre></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-configuration-artifacts"></a>4.4 Creating and Using Configuration Artifacts</h2></div></div></div><p>
- Applications typically include some sort of configuration data
- that might change depending on the environment in which the
- application is deployed. For example, if an application connects to a
- database server using JDBC, the configuration data would include the
- JDBC URL of the database server, the JDBC drvier, and the username and
- password that the application uses to connect to the database server.
- This information often changes as the application is deployed to
- different computers or the application moves from the testing phase to
- the production phase.
- </p><p>
- Virgo Web Server provides a feature called
- <span class="emphasis"><em>configuration artifacts</em></span>
- that makes it very easy for you to manage this configuration data. A
- configuration artifact is simply a properties file that is made
- available at runtime using the OSGi
- <code class="literal">ConfigurationAdmin</code>
- service. When you create this properties file, you set the values of
- the properties for the specific environment in which you are going to
- deploy your application, and then update the metadata of your Spring
- application to use the properties file. You then deploy the
- application and properties file together, typically as a
- <a class="link" href="#developing-applications-plans" title="4.3 Creating Plans">plan</a>
- . Virgo Web Server automatically creates a configuration artifact from
- the properties file, and you can manage the lifecycle of this
- configuration artifact in the same way you manage the lifecycle of
- PARs, bundles, and plans, using the Admin
- Console. Additionally, VWS subscribes your
- application for notification of any refresh of the configuration
- artifact and the application can then adapt accordingly, which means
- you can easily
- <span class="emphasis"><em>change</em></span>
- the configuration of your application without redeploying it.
- </p><p>In sum, configuration artifacts, especially when combined with
- plans, provide an excellent mechanism for managing external
- configuration data for your applications.</p><p>The following sections describe the format of the configuration
- artifact, how to update the Spring application context file of your
- application so that it knows about the configuration artifact, and
- finally how to include it in a plan alongside your application. </p><p>
- As an example to illustrate the configuration artifact feature, assume
- that you have a Spring bean called
- <code class="literal">PropertiesController</code>
- whose constructor requires that four property values be passed to it,
- as shown in the following snippet of Java code:
- </p><pre class="programlisting">@Controller
-public class PropertiesController {
-
- private final String driverClassName;
- private final String url;
- private final String username;
- private final String password;
-
- public PropertiesController(String driverClassName, String url, String username, String password) {
- this.driverClassName = driverClassName;
- this.url = url;
- this.username = username;
- this.password = password;
-}</pre><p>In the preceding example, the <code class="literal">PropertiesController</code> constructor requires four property values: <code class="literal">driverClassName</code>, <code class="literal">url</code>, <code class="literal">username</code>, and <code class="literal">password</code>. Note that the example shows just one way that a class might require property values; your application may code it another way.</p><p>Additionally, assume that the following snippet of the associated Spring application context XML file shows how the <code class="literal">PropertiesController</code> bean is configured:</p><pre class="programlisting"><bean class="com.springsource.configuration.properties.PropertiesController">
- <constructor-arg value="${driverClassName}"/>
- <constructor-arg value="${url}"/>
- <constructor-arg value="${username}"/>
- <constructor-arg value="${password}"/>
-</bean></pre><p>The rest of this section describes how the bean can get these property values using a configuration artifact.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-configuration-artifacts-propfile"></a>Creating the Properties File</h3></div></div></div><p>To create a properties file that in turn will become a configuration artifact when deployed to VWS from which a Spring bean, such as the <code class="literal">PropertiesController</code> bean, will get the actual property values, follow these guidelines:</p><div class="itemizedlist"><ul type="disc"><li><p>Create a text file in which each property is listed as a name/value pair, one pair per line. Precede comments with a <code class="literal">#</code>. For example:</p><pre class="screen"># Properties for the com.springsource.configuration.properties sample
-
-driverClassName = org.w3.Driver
-url = http://www.springsource.com
-username = joe
-password = secret</pre><p>The example shows four properties whose name correspond to the constructor arguments of the <code class="literal">PropertiesController</code> Spring bean.</p></li><li><p>Name the file anything you want, as long as it has a <code class="literal">.properties</code> extension, such as <code class="literal">app-properties.properties</code>.</p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-configuration-artifacts-app"></a>Updating Your Application</h3></div></div></div><p>To update your application so that it "knows" about the configuration artifact, you update the application's Spring application context XML file, typically located in the <code class="literal">WEB-INF</code> or <code class="literal">META-INF/spring</code> directories.</p><p>You use the <code class="literal"><context:property-placeholder></code> element to specify that you want to use the VWS mechanism for substituting values into bean properties. The <code class="literal">properties-ref</code> attribute of this element points to a <code class="literal"><osgi-compendium:cm-properties></code> element which you use to specify the configuration artifact that contains the property values. You set the value of the <code class="literal">persistent-id</code> attribute of this element equal to the name of the configuration artifact, which is the name of the properties file <span class="emphasis"><em>minus</em></span> the <code class="literal">.properties</code> extension. </p><p>The following sample Spring application context XMl file shows everything wired together; only relevant parts of the file are shown:</p><pre class="programlisting"><?xml version="1.0" encoding="UTF-8"?>
-<beans xmlns="http://www.springframework.org/schema/beans"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xmlns:context="http://www.springframework.org/schema/context"
- xmlns:osgi-compendium="http://www.springframework.org/schema/osgi-compendium"
- xsi:schemaLocation="http://www.springframework.org/schema/osgi
- http://www.springframework.org/schema/osgi/spring-osgi-1.2.xsd
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-2.5.xsd
- http://www.springframework.org/schema/context
- http://www.springframework.org/schema/context/spring-context-2.5.xsd
- http://www.springframework.org/schema/osgi-compendium
- http://www.springframework.org/schema/osgi-compendium/spring-osgi-compendium-1.2.xsd">
-
-...
-
- <bean class="com.springsource.configuration.properties.PropertiesController">
- <constructor-arg value="${driverClassName}"/>
- <constructor-arg value="${url}"/>
- <constructor-arg value="${username}"/>
- <constructor-arg value="${password}"/>
- </bean>
-
- <context:property-placeholder properties-ref="configAdminProperties"/>
-
- <osgi-compendium:cm-properties id="configAdminProperties" persistent-id="app-properties"/>
-
-...
-
-</beans> </pre></div><p>The preceding example shows how the id <code class="literal">configAdminProperites</code> wires the <code class="literal"><context:property-placeholder></code> and <code class="literal"><osgi-compendium:cm-properties></code> elements together. Based on the value of the <code class="literal">persistent-id</code> attribute, you must also deploy a properties file called <code class="literal">app-properties.properties</code> which VWS installs as a configuration artifact.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-configuration-artifacts-plan"></a>Adding the Configuration Artifact to a Plan</h3></div></div></div><p>Although you can always deploy your application and associated configuration artifact using the <code class="literal">pickup</code> directory, we recommends that you group the two together in a plan, add the two artifacts to the repository, and then deploy the plan using the <code class="literal">pickup</code> directory. The following sample plan includes the two artifacts:</p><pre class="programlisting"><?xml version="1.0" encoding="UTF-8"?>
-<plan name="multi-artifact.plan" version="1.0.0"
- scoped="false" atomic="false"
- xmlns="http://www.springsource.org/schema/dm-server/plan"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="
- http://www.springsource.org/schema/dm-server/plan
- http://www.springsource.org/schema/dm-server/plan/springsource-dm-server-plan.xsd">
-
- <artifact type="configuration" name="app-properties" version="0"/>
- <artifact type="bundle" name="org.eclipse.virgo.configuration.properties" version="1.0.0"/>
-</plan></pre><p>For additional information about plans, see <a class="link" href="#developing-applications-plans" title="4.3 Creating Plans">Creating Plans</a>.</p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-programmatic-access"></a>4.5 Programmatic Access to The Deployer Pipeline</h2></div></div></div><p>
- Typically access to features are provided automatically via custom
- manifest headers or other configuration mechanisms. There may be situations,
- however, for which programmatic access to such features is desirable or necessary.
- This section describes how to programmatically access features from application
- code in a bundle.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-programmatic-access-web"></a>Programmatic Access to Web Features</h3></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="developing-applications-programmatic-access-web-application-context"></a>Programmatic Access to the WebApplicationContext</h4></div></div></div><p>
- The Virgo Web Server automatically creates a <code class="literal">WebApplicationContext</code>
- for Web application bundles and WAR files. When used in conjunction with an
- an auto-configured Spring MVC <code class="literal">DispatcherServlet</code>,
- there is generally no need to access the <code class="literal">WebApplicationContext</code>
- programmatically, since all components of the web application are configured
- within the scope of the <code class="literal">WebApplicationContext</code>
- itself. However, if you wish to access the <code class="literal">WebApplicationContext</code>
- you can do so via the web application’s <code class="literal">ServletContext</code>.
- The Web subsystem stores the bundle’s
- <code class="literal">WebApplicationContext</code> in the ServletContext under
- the attribute name "<code class="literal">BSN-ApplicationContext</code>", where
- <code class="literal">BSN</code> is the <code class="literal">Bundle-SymbolicName</code>
- of your WAR or Web application bundle.
- </p><p>
- Alternatively, since the Web subsystem also stores the
- <code class="literal">WebApplicationContext</code> under the attribute name
- with the value of the <code class="literal">WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE</code>
- constant, you may choose to use Spring MVC’s WebApplicationContextUtils’
- <code class="literal">getWebApplicationContext(servletContext)</code>
- or
- <code class="literal">getRequiredWebApplicationContext(servletContext)</code>
- methods to access the <code class="literal">WebApplicationContext</code> without providing
- an explicit attribute name.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="developing-applications-programmatic-access-web-bundle-context"></a>Programmatic Access to the BundleContext</h4></div></div></div><p>
- As required by the OSGi Web Applications specification, you can access the
- <code class="literal">BundleContext</code> of your WAR or Web Bundle via the web application’s
- <code class="literal">ServletContext</code>. The bundle context is stored in the
- <code class="literal">ServletContext</code> under the attribute name <code class="literal">osgi-bundlecontext</code>.
- </p></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-automatic-imports-web"></a>4.6 Automatic Imports for the Web subsystem</h2></div></div></div><p>
- The Virgo Web Server generates automatic package imports (i.e., via the
- <code class="literal">Import-Package</code> manifest header) for the web subsystem’s
- artifacts. This section lists which packages are automatically generated.
- </p><p>
- All WARs, as required by the OSGi Web Applications specification, and Web application bundles (see <a class="link" href="#known-issues-web-bundle-default-headers" title="9.5 Default Web Application Bundle Headers">Default Web
- Application Bundle Headers</a>) will automatically import the following packages:
- </p><div class="itemizedlist"><ul type="disc"><li><code class="literal">javax.servlet;version="2.5"</code></li><li><code class="literal">javax.servlet.http;version="2.5"</code></li><li><code class="literal">javax.servlet.jsp";version="2.1"</code></li><li><code class="literal">javax.servlet.jsp.el;version="2.1"</code></li><li><code class="literal">javax.servlet.jsp.tagext;version="2.1"</code></li><li><code class="literal">javax.el";version="1.0"</code></li></ul></div><p>
- In addition to the above-described imports, VWS will also
- generate automatic imports for all of the packages that are exported by the system
- bundle, unless an import for the package already exists in the artifact’s manifest,
- or the artifact contains the package, i.e. within <code class="literal">WEB-INF/classes</code>,
- or in a jar file in <code class="literal">WEB-INF/lib</code>. When an import is generated, it
- is versioned such that it exactly matches the version or versions of the package that
- are exported from the system bundle. For example, a package that’s exported only at
- version <code class="literal">1.0.0</code> will generate an import with a version of
- <code class="literal">[1.0.0,1.0.0]</code>, and a package that’s exported at version
- <code class="literal">1.0.0</code> and version <code class="literal">2.0.0</code> will generate an import
- with a version of <code class="literal">[1.0.0,2.0.0]</code>.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip: System Bundle Package Exports"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">System Bundle Package Exports</th></tr><tr><td align="left" valign="top"><p>
- For further details on which packages are exported by the
- OSGi system bundle, consult the <code class="filename">java6-server.profile</code>
- file located in the <code class="literal">SERVER_HOME/lib</code> directory.
- </p></td></tr></table></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-dependencies"></a>4.7 Working with dependencies</h2></div></div></div><p>Complex enterprise frameworks such a Spring and Hibernate are typically divided into many, many different
- packages. Traditionally, if an OSGi bundle wished to make extensive use of such a framework its manifest would
- have to import a huge number of different packages. This can be an error-prone and tedious process. Furthermore,
- application developers are used to thinking in terms of their application using a framework, such as Spring, as a
- whole, rather than a long list of all the different packages that comprise the framework.
- </p><p>The following figure provides a simple illustration of the complexity of only using <code class="code">Import-Package</code>:
- </p><p>
- <img src="images/import-package.png">
- </p><p>The Virgo Web Server reduces the need for long lists of imported packages by introducing two new manifest
- headers; <code class="code">Import-Bundle</code> and <code class="code">Import-Library</code>. The following figure provides an
- illustration of the simplification that these new headers offer:
- </p><p>
- <img src="images/import-bundle_import-library.png">
- </p><p>
- As you can see, use of <code class="code">Import-Bundle</code> and <code class="code">Import-Library</code> can lead to a dramatic reduction
- in the number of imports that you need to include in an application bundle’s manifest. Furthermore, <code class="code">Import-Bundle</code>
- and <code class="code">Import-Library</code> are simply aliases for <code class="code">Import-Package</code>; at deployment time <code class="code">Import-Bundle</code>
- and <code class="code">Import-Library</code> header entries are automatically expanded into numerous <code class="code">Import-Package</code> entries. This
- means that you retain the exact same semantics of using <code class="code">Import-Package</code>, without having to go through the labourious
- process of doing so.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-importing-libraries"></a>Importing libraries</h3></div></div></div><p>A bundle in an application can declare a dependency on a library by using the
- Virgo Web Server-specific <code class="code">Import-Library</code> header. This header specifies a
- comma-separated list of library symbolic names and version ranges that determine which libraries
- are imported. By default a dependency on a library is mandatory but this can be
- controlled through use of the resolution directive in exactly the same way as
- it can with <code class="code">Import-Package</code>.
- </p><pre class="programlisting">
-<span class="bold"><strong>Import-Library</strong></span>: org.springframework.spring;version="[2.5.4, 3.0)",
- org.aspectj;version="[1.6.0,1.6.0]";resolution:="optional"
- </pre><p>
- This example <code class="code">Import-Library</code> header declares a mandatory dependency on the Spring
- library at a version from 2.5.4 inclusive to 3.0 exclusive. It also declares an
- optional dependency on the AspectJ library at exactly 1.6.0.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-importing-bundles"></a>Importing bundles</h3></div></div></div><p>A bundle in an application can declare a dependency on a bundle by using the
- Virgo Web Server-specific <code class="code">Import-Bundle</code> header. The header specifies a comma-separated
- list of bundle symbolic names, version ranges, and scope declarmations that determine which bundles are imported and the scope of their dependency. By default a dependency
- on a bundle is mandatory but this can be controlled through use of the resolution directive in exactly
- the same way as it can with <code class="code">Import-Package</code>.
- </p><pre class="programlisting">
-<span class="bold"><strong>Import-Bundle</strong></span>: com.springsource.org.apache.commons.dbcp;version="[1.2.2.osgi, 1.2.2.osgi]"
- </pre><p>
- This example <code class="code">Import-Bundle</code> header declares a mandatory dependency on the Apache Commons
- DBCP bundle at exactly 1.2.2.osgi.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-scoping-libraries-bundles"></a>Scoping Bundles in an Application</h3></div></div></div><p>
- When working with a scoped application, such as a PAR file or a plan, you might run into a situation where one of the bundles in the application (call it <code class="code">bundleA</code>) depends on another bundle (<code class="code">bundleB</code>) that performs a runtime task (such as class generation) that a third bundle (<code class="code">bundleC</code>) might need to know about, although <code class="code">bundleC</code> does not explicitly depend on <code class="code">bundleB</code>.
- </p><p>
- For example, Hibernate uses CGLIB (code generation library) at runtime to generate proxies for persistent classes. Assume that a domain bundle in your application uses Hibernate for its persistent objects, and thus its <code class="code">Import-Bundle</code> manifest header includes the Hibernate bundle. Further assume that a separate Web bundle uses reflection in its data-binding code, and thus needs to reflect on the persistent classes generated by Hibernate at runtime. The Web bundle now has an indirect dependency on the Hibernate bundle because of these dynamically generated classes, although the Web bundle does not typically care about the details of how these classes are persisted. One way to solve this dependency problem is to explicitly add the Hibernate bundle to the <code class="code">Import-Bundle</code> header of the Web bundle; however, this type of explicit-specified dependency breaks the modularity of the application and is not a programming best practice.
- </p><p>
- A better way to solve this problem is to specify that Virgo Web Server itself dynamically import
- the bundle (Hibernate in the example above) to all bundles in the application at runtime.
- You do this by adding the <code class="code">import-scope:=application</code> directive to the <code class="code">Import-Bundle</code> header
- of the bundle that has the direct dependency (the domain bundle in our example). At runtime, although the Web bundle
- does not explicitly import the Hibernate bundle, Virgo Web Server implicitly imports it and thus its classes are available
- to the Web bundle. This mechanism allows you to declare the dependencies you need to make your application run,
- without having to make changes to your application that might limit its flexibility.
- </p><p>
- The following example shows how to use the <code class="code">import-scope</code> directive with the <code class="code">Import-Bundle</code> header:
- </p><pre class="programlisting">
-Import-Bundle: com.springsource.org.hibernate;version="[3.2.6.ga,3.2.6.ga]";<span class="bold"><strong>import-scope:=application</strong></span></pre><p>
- You can also set the <code class="code">import-scope</code> directive to the (default) value <code class="code">bundle</code>; in this case, the scope of the bundle is just the bundle itself and thus Virgo Web Server does not perform any implicit importing into other bundles of the application.
- </p><p>
- Note that use of the <code class="code">import-scope:=application</code> directive of the <code class="code">Import-Bundle</code> header only makes sense when the bundle is part of a scoped application (PAR or plan); if the bundle is not part of a scoped application, then this directive has no effect.
- </p><p>
- Finally, because <code class="code">import-scope:=application</code> implicitly adds a bundle import to each bundle of the PAR or plan, the impact of subsequently refreshing the imported bundle is, in general, broader than it would have been if you had not used <code class="code">import-scope:=application</code>. This may well affect the performance of refresh.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-defining-libraries"></a>Defining libraries</h3></div></div></div><p>
- Libraries are defined in a simple text file, typically with a <code class="code">.libd</code> suffix. This file identifies the
- library and lists all of its constituent bundles. For example, the following is the library definition for
- Spring 2.5.4:
- </p><pre class="programlisting"><span class="bold"><strong>Library-SymbolicName</strong></span>: org.springframework.spring
-<span class="bold"><strong>Library-Version</strong></span>: 2.5.4
-<span class="bold"><strong>Library-Name</strong></span>: Spring Framework
-<span class="bold"><strong>Import-Bundle</strong></span>: org.springframework.core;version="[2.5.4,2.5.5)",
- org.springframework.beans;version="[2.5.4,2.5.5)",
- org.springframework.context;version="[2.5.4,2.5.5)",
- org.springframework.aop;version="[2.5.4,2.5.5)",
- org.springframework.web;version="[2.5.4,2.5.5)",
- org.springframework.web.servlet;version="[2.5.4,2.5.5)",
- org.springframework.jdbc;version="[2.5.4,2.5.5)",
- org.springframework.orm;version="[2.5.4,2.5.5)",
- org.springframework.transaction;version="[2.5.4,2.5.5)",
- org.springframework.context.support;version="[2.5.4,2.5.5)",
- org.springframework.aspects;version="[2.5.4,2.5.5)",
- com.springsource.org.aopalliance;version="1.0"</pre><p>
- </p><p>
- The following table lists all of the headers that may be used in a library definition:
- </p><div class="table"><a name="developing-applications-defining-libraries-library-headers-table"></a><p class="title"><b>Table 4.4. Library definition headers</b></p><div class="table-contents"><table summary="Library definition headers" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Header</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Library-SymbolicName</td><td style="border-bottom: 1.0pt solid ; ">Identifier for the library</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Library-Version</td><td style="border-bottom: 1.0pt solid ; ">Version number for the library</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Import-Bundle</td><td style="border-bottom: 1.0pt solid ; ">A comma separated list of bundle symbolic names.
- Each entry may optionally specify a version (using the <code class="code">version=</code> directive)
- and the scope of the import (using the <code class="code">import-scope</code> directive).</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Library-Name</td><td style="border-bottom: 1.0pt solid ; ">Optional. The human-readable name of the library</td></tr><tr><td style="border-right: 1.0pt solid ; ">Library-Description</td><td style="">Optional. A human-readable description of the library</td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="developing-applications-installing-dependencies"></a>Installing dependencies</h3></div></div></div><p>
- Rather than encouraging the packaging of all an application’s dependencies within the application itself, Virgo Web Server
- uses a local provisioning repository of bundles and libraries upon which an application can depend. When the Virgo Web Server
- encounters an application with a particular dependency, it will automatically provide, from its provisioning repository,
- the appropriate bundle or library.
- </p><p>
- Making a dependency available for provisioning is simply a matter of copying it to the appropriate location in the
- VWS’s local provisioning repository. By default this is
- <code class="literal">SERVER_HOME/repository/usr</code>. A more detailed discussion of the provisioning
- repository can be found in the <a class="ulink" href="../../user-guide/html/index.html" target="_top">User Guide</a>.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-application-trace"></a>4.8 Application trace</h2></div></div></div><p>
- As described in the <a class="ulink" href="../../user-guide/html/index.html" target="_top">User Guide</a> Virgo Web Server provides support for
- per-application trace. Virgo Web Server provides SLF4J with Logback logging for Event Logging and Tracing.
- Application trace is configured in the <code class="literal">serviceability.xml</code> file.
- See the <a class="ulink" href="../../user-guide/html/index.html" target="_top">User Guide</a> for more details.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="developing-applications-versioning"></a>4.9 Application versioning</h2></div></div></div><p>
- In much the same way that individual OSGi bundles can be versioned, Virgo Web Server allows applications to be versioned. How exactly you do this depends on how you have packaged the application:
- </p><div class="itemizedlist"><ul type="disc"><li>If you package your application using a PAR, you version the application by using the <code class="literal">Application-Version</code> header in the <code class="code">MANIFEST.MF</code> file of the PAR file.</li><li>If you use a plan to describe the artifacts that make up your application, you version it by using the <code class="code">version</code> attribute of the <code class="code"><plan></code> root element of the plan’s XML file.</li><li>If your application consists of a single bundle, you version it in the standard OSGi way: by using the <code class="literal">Bundle-Version</code> header of the <code class="code">MANIFEST.MF</code> file of the bundle.</li></ul></div><p>
- </p><p>Virgo Web Server uses an application’s version to prevent clashes when multiple versions of the same application are deployed at
- the same time. For example, the application trace support described in <a class="xref" href="#developing-applications-application-trace" title="4.8 Application trace">Section 4.8, “Application trace”</a>,
- includes the application’s name and version in the file path. This ensures that each version of the same application has its
- own trace or logging file.
- </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="migrating-to-osgi"></a>5. Migrating to OSGi</h2></div></div></div><p>
- Taking on a new technology such as OSGi may seem a bit daunting at first,
- but a proven set of migration steps can help ease the journey. Teams
- wishing to migrate existing applications to run on the Virgo Web Server
- will find that their applications typically fall into one of the following
- categories.
-
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <span class="bold"><strong>Web Application</strong></span>: for web applications,
- this chapter provides an overview of the steps required to migrate
- from a Standard WAR to a Shared Services WAR. Furthermore, the following
- chapter provides a detailed case study involving the migration
- of the Spring 2.0 Form Tags show case application.
- </p></li><li><p>
- <span class="bold"><strong>Anything else</strong></span>: for any other type
- of application, you will typically either deploy your application
- as multiple individual bundles, as a single PAR file, or as a plan,
- which is the recommended approach for deploying applications on
- the Virgo Web Server. See <a class="xref" href="#migrating-to-osgi-par-plan" title="5.2 Migrating to a Plan or a PAR">Section 5.2, “Migrating to a Plan or a PAR”</a> for details.
- </p></li></ul></div><p>
-
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="migrating-to-osgi-web"></a>5.1 Migrating Web Applications</h2></div></div></div><p>
- Many applications may start with the standard WAR format for web applications and
- gradually migrate to a more OSGi-oriented architecture. Since the Virgo Web Server
- offers several benefits to all supported deployment formats, it provides a smooth
- migration path. Of course, depending on your application’s complexity and your
- experience with OSGi, you may choose to start immediately with an OSGi-based
- architecture.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-web-standard-war"></a>Standard WAR</h3></div></div></div><p>
- If you are not yet familiar with OSGi or simply want to deploy an existing web application on the Virgo Web Server,
- you can deploy a standard WAR and leverage the VWS with a minimal learning curve. In fact reading the
- <a class="ulink" href="../../user-guide/html/index.html" target="_top">Virgo Web Server User Guide</a>
- is pretty much all that you need to do to get started. Furthermore, you will gain
- familiarity with the Virgo Web Server, while preparing to take advantage of the other formats.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-web-shared-libraries-war"></a>Shared Libraries WAR</h3></div></div></div><p>
- The <span class="emphasis"><em>Shared Libraries WAR</em></span>
- format is the first step to reaping the benefits of OSGi. In this phase, you dip your toes into OSGi-based dependency
- management by removing JAR files from the WAR and declaring dependencies on corresponding OSGi bundles.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-web-shared-services-war"></a>Shared Services WAR</h3></div></div></div><p> In this phase, you take the next step toward a fully OSGi-based architecture by separating your web artifacts
- (e.g., Servlets, Controllers, etc.) from the services they depend on.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-web-summary"></a>Web Migration Summary</h3></div></div></div><p>
- The following diagram graphically depicts the migration path from a Standard WAR to a Shared Services WAR.
- As you can see, the libraries (<span class="emphasis"><em>libs</em></span>) move from within the deployment artifact
- to the Bundle Repository.
- Similarly, the services move from within the WAR to external bundles and are accessed via the
- OSGi Service Registry. In addition, the overall footprint of the deployment artifact decreases
- as you move towards a Shared Services WAR.
- </p><div class="mediaobject"><img src="images/migration-path-war-to-shsrv.png"></div><p>
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="migrating-to-osgi-par-plan"></a>5.2 Migrating to a Plan or a PAR</h2></div></div></div><p>
- The first steps to migrating an existing application to a plan or a PAR are the same: deciding on the bundles that make up the application and ensuring that their <code class="code">Import-Package</code>, <code class="code">Import-Library</code>, and <code class="code">Import-Bundle</code> manifest headers are correct. Once you have the list of bundles that make up your application, you then decide whether you want to JAR them all into a single application file (PAR) or create a plan that simply lists the bundles by reference. Creating a plan is the recommend way to create an application, although PARs also have benefits that might suit your needs better, as described in <a class="xref" href="#migrating-to-osgi-parplan-decide" title="Plan or PAR?">the section called “Plan or PAR?”</a>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-parplan-bundles"></a>Creating the Application Bundles</h3></div></div></div><p>
- When migrating an existing application to the PAR packaging and deployment format or a plan,
- you consider modularity as the prime objective. Following the ideas discussed in
- <a class="xref" href="#architecture-forming-bundles" title="3.3 A guide to forming bundles">Section 3.3, “A guide to forming bundles”</a>, you refactor the application into multiple bundles.
- You may start conservatively with a small number of bundles and then further refactor those bundles.
- </p><p>
- If the original code is crafted following good software practices such as separation of concerns and use of
- well-defined interfaces, migration may involve modifying only configuration and packaging. In other words,
- your Java sources will remain unchanged. Even configuration is likely to change only slightly.
- </p><p>
- For example, the following diagram depicts a typical web application that has been refactored and
- packaged as a PAR. The blue elements within the <span class="emphasis"><em>Application</em></span> box constitute
- the bundles of the application. Each of these bundles imports types from other bundles within
- the PAR using <code class="literal">Import-Package</code>. The green elements in the left column represent
- <span class="emphasis"><em>libraries</em></span> installed on the VWS. The PAR’s bundles reference these
- libraries using <code class="literal">Import-Library</code>. The purple element in the left column
- represents a bundle within the VWS’s bundle repository which is imported by the DAO
- bundle using <code class="literal">Import-Bundle</code>. In contrast to a traditional, monolithic
- WAR deployment, the PAR format provides both a logical and physical application boundary
- and simultaneously allows the application to benefit from both the OSGi container and the Virgo Web Server.
- </p><div class="mediaobject"><img src="images/migrating-to-osgi-par-structure.png"></div><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="migrating-to-osgi-parplan-decide"></a>Plan or PAR?</h3></div></div></div><p>
- Once you have refactored your existing application into separate OSGi bundles, you then must decide whether to package the bundles into a single PAR file or create a plan that lists the bundles by reference. As described in more detail in preceding sections of this guides, PARs and plans have similar benefits, such as:
- </p><div class="itemizedlist"><ul type="disc"><li>Scoping</li><li>Atomicity, or the ability to deploy and control the bundles as a single unit</li><li>Versioning</li><li>Improved serviceability</li></ul></div><p>
- Plans, the method most recommended by us to create your application, has the following added benefits:
- </p><div class="itemizedlist"><ul type="disc"><li>Guaranteed order of deployment, based on the order in which they are listed in the plan’s XML file</li><li>Ease of sharing content between plans and updating individual plans without having to physically repackage, due to the artifacts being listed by reference.</li><li>Ability to disable scoping and atomicity, if desired.</li></ul></div><p>
- The main benefit of PARS is that, because they physically contain all the required artifacts, you know exactly what bundles are deployed when you deploy the PAR file, in contrast to plans that allow content to be substituted or lost.
- </p><p>
- For details about creating plans and PARs, see <a class="xref" href="#developing-applications-plans" title="4.3 Creating Plans">Section 4.3, “Creating Plans”</a> and <a class="xref" href="#developing-applications-packaging" title="4.2 Creating PARs and WARs">Section 4.2, “Creating PARs and WARs”</a>, respectively.
- </p></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="formtags-case-study"></a>6. Case study: Migrating the Form Tags sample application</h2></div></div></div><p>
- In this chapter we will walk through the steps needed to migrate the
- Form Tags sample application from a standard Java EE WAR to a fully OSGi
- compliant <span class="emphasis"><em>Shared Services WAR</em></span> within a PAR.
- The migration involves four packaging and deployment formats:
- </p><div class="orderedlist"><ol type="1"><li><p>
- <a class="link" href="#formtags-case-study-war" title="6.2 Form Tags WAR">Standard WAR</a>
- </p></li><li><p>
- <a class="link" href="#formtags-case-study-war-shared-libs" title="6.3 Form Tags Shared Libraries WAR">Shared Libraries WAR</a>
- </p></li><li><p>
- <a class="link" href="#formtags-case-study-war-shared-services" title="6.4 Form Tags Shared Services WAR">Shared Services WAR</a>
- </p></li><li><p>
- <a class="link" href="#formtags-case-study-par" title="6.5 Form Tags PAR">PAR with a shared services WAR</a>
- </p></li></ol></div><p>
- </p><p>
- Each of these migration steps will produce a web application
- that can be deployed and run on the VWS.
- </p><p>
- After summarising the process, an example <code class="literal">plan</code> is shown which is another way of
- packaging and deploying the application.
- </p><p>
- The following image displays the directory structure you should have
- after installing the Form Tags sample. Note however that the release tag
- will typically resemble <code class="literal">2.0.0.RELEASE</code>.
- </p><p><img src="images/formtags-case-study-sample-layout.png"></p><p>
- The <code class="literal">dist</code> directory contains the distributables,
- and the <code class="literal">projects</code> directory contains the source code
- and build scripts.
- </p><p>
- For simplicity, this chapter will focus on the distributables—which are built using Virgo-Build
- rather than on configuring a project in an IDE.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- Pre-packaged distributables are made available in the <code class="literal">dist</code> directory;
- however, if you would like to modify the samples or build them from scratch, you may
- do so using Virgo-Build. Take a look at
- the <code class="literal">README.TXT</code> file in each of the folders under
- the <code class="literal">projects</code> directory in the
- Form Tags sample for instructions.
- </td></tr></table></div><p>
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-introduction"></a>6.1 Overview of the Form Tags Sample Application</h2></div></div></div><p>
- The sample that we will be using is the Form Tags show case sample
- which was provided with Spring 2.0. The Form Tags application has
- been removed from the official Spring 2.5.x distributions; however,
- since it is relatively simple but still contains enough ingredients
- to demonstrate the various considerations required during a migration,
- we have chosen to use it for these examples.
- </p><p>
- The purpose of the Form Tags show case sample was to demonstrate how
- the Spring specific <code class="literal">form:</code> tags, released
- in Spring 2.0, make view development with JSPs and tag libraries easier.
- The Form Tags application consists of a single <code class="literal">UserService</code> which returns a list
- of <code class="literal">Users</code>. Furthermore, the application demonstrates how to list, view,
- and edit <code class="literal">Users</code> in a simple Spring MVC based web application using JSP
- and JSTL.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-war"></a>6.2 Form Tags WAR</h2></div></div></div><p>
- We begin with a standard WAR deployment.
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- The Virgo Web Server supports the standard Java EE WAR packaging
- and deployment format as a first-class citizen, and there are many
- benefits to deploying a standard WAR file on the VWS including,
- but not limited to: tooling support, runtime error diagnostics, FFDC
- (first failure data capture), etc.
- In addition, support for standard WAR deployment provides an easy on-ramp
- for trying out the Virgo Web Server with existing web applications.
- </td></tr></table></div><p>
- </p><p>
- The following screen shot displays the directory structure of the
- Form Tags application using the standard WAR format. As you can see,
- there is no deviation from the standard structure and layout, and as
- you would expect, all of the web application’s third-party dependencies
- (for example: Spring, Commons Logging) are packaged as JARs in
- <code class="literal">WEB-INF/lib</code>.
- </p><p><img src="images/formtags-case-study-exploded-war.png"></p><p>
- To deploy this application, simply copy <code class="literal">dist/formtags-war-2.0.0.*.war</code> to
- the <code class="literal">SERVER_HOME/pickup</code> directory for hot deployment.
- </p><p>
- You should then see the VWS produce console output similar to the following:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 14:54:45.135] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-war-2.0.0.RELEASE.war'.
-[2009-07-01 14:54:45.797] fs-watcher
- <SPDE0010I> Deployment of 'formtags-war-2.0.0.RELEASE.war' version '0' completed.
-[2009-07-01 14:54:45.797] Thread-20
- <SPWE0000I> Starting web bundle '/formtags-war-2.0.0.RELEASE'.
-[2009-07-01 14:54:46.380] Thread-20
- <SPWE0001I> Started web bundle '/formtags-war-2.0.0.RELEASE'.
-</pre><p>
- Navigate to <code class="literal">http://localhost:8080/</code> plus the web application context path,
- which in the above case is
- <code class="literal">formtags-war-2.0.0.RELEASE</code>. Thus navigating to
- <code class="literal">http://localhost:8080/formtags-war-2.0.0.RELEASE</code>
- should render the sample application’s welcome page, as displayed in the screen
- shot below.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- For WARs, the default web context path is the name of the WAR file
- without the <code class="literal">.war</code> extension. You can optionally
- specify a context path using the <code class="literal">Web-ContextPath</code> bundle
- manifest header, which will be described in further detail later.
- </td></tr></table></div><p>
- </p><p>
- <img src="images/formtags-case-study-war-webpage.png">
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-war-shared-libs"></a>6.3 Form Tags Shared Libraries WAR</h2></div></div></div><p>
- As mentioned above, a standard WAR file typically packages of all its required
- dependencies in <code class="literal">WEB-INF/lib</code>. The servlet container will
- then add all of the JARs in <code class="literal">WEB-INF/lib</code> to the application’s
- classpath.
- </p><p>
- The first step of the migration towards benefiting from an OSGi
- container is to retrieve the dependencies from the VWS’s bundle
- repository at runtime. This can significantly reduce the time it takes to build
- and deploy the application. It also enables the enforcement of policies
- regarding the use of third-party libraries.
- </p><p>
- The way in which dependencies are declared in an OSGi environment is
- via manifest headers in a bundle’s <code class="literal">/META-INF/MANIFEST.MF</code>.
- As mentioned in <a class="xref" href="#developing-applications" title="4. Developing Applications">Chapter 4, <i>Developing Applications</i></a>, there are
- three ways of expressing dependencies: <code class="literal">Import-Package</code>,
- <code class="literal">Import-Bundle</code> and <code class="literal">Import-Library</code>.
- </p><p>
- The Form Tags application uses JSTL standard tag libraries.
- Thus, you need to choose a JSTL provider, for example the
- Apache implementation which comes with the VWS. To use the
- Apache implementation of JSTL, you need to express your dependency
- as outlined in the following manifest listing.
- Because it is a single bundle, <code class="literal">Import-Bundle</code> is
- the simplest and therefore preferred manifest header to use.
- </p><p>
- The Form Tags application requires commons-logging and Spring.
- It would be very painful to have to list all the Spring packages one by one.
- Equally, considering the number of bundles that make up the
- Spring framework, it would be verbose to list each bundle. Therefore
- <code class="literal">Import-Library</code> is the preferred approach
- for expressing the dependency on the Spring framework.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top"><p>
- How do you determine the name of a library definition provided
- by the Virgo Web Server?
- Use the <a class="ulink" href="http://www.springsource.com/repository" target="_top">SpringSource Enterprise Bundle Repository</a>.
- </p></td></tr></table></div><p>
- Examine the <code class="literal">/META-INF/MANIFEST.MF</code> in
- <code class="literal">/dist/formtags-shared-libs-*.war</code>:
-</p><pre class="programlisting">
-Manifest-Version: 1.0
-Ant-Version: Apache Ant 1.7.0
-Created-By: 1.5.0_13-119 (Apple Inc.)
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: org.springframework.showcase.formtags-shared-libs
-<span class="bold"><strong>Import-Library</strong></span>: org.springframework.spring;version="[2.5.4,3.1.0)"
-<span class="bold"><strong>Import-Bundle</strong></span>: com.springsource.org.apache.taglibs.standard;version="1
- .1.2"
-</pre><p>
- You can see the <code class="literal">Import-Library</code> and <code class="literal">Import-Bundle</code>
- directives that instruct the VWS to add the appropriate package imports to the bundle
- classpath used by this WAR file.
- </p><p>
- Deploying the shared libraries WAR onto the VWS should result
- in console output similar to the following:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 15:00:14.953] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-shared-libs-2.0.0.RELEASE.war'.
-[2009-07-01 15:00:15.363] fs-watcher
- <SPDE0010I> Deployment of 'org.springframework.showcase.formtags_shared_libs' version '2' completed.
-[2009-07-01 15:00:15.364] Thread-20
- <SPWE0000I> Starting web bundle '/formtags-shared-libs-2.0.0.RELEASE'.
-[2009-07-01 15:00:15.816] Thread-20
- <SPWE0001I> Started web bundle '/formtags-shared-libs-2.0.0.RELEASE'.
-</pre><p>
- Navigating to <code class="literal">http://localhost:8080/formtags-shared-libs-BUILDTAG</code>
- should render the welcome page. Note that for the pre-packaged distributable,
- the <code class="literal">BUILDTAG</code> should be similar to <code class="literal">2.0.0.RELEASE</code>;
- whereas, for a local build the <code class="literal">-BUILDTAG</code> may be completely
- omitted. Please consult the console output, web-based admin console, or log
- to determine the exact context path under which the web application has been deployed.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-war-shared-services"></a>6.4 Form Tags Shared Services WAR</h2></div></div></div><p>
- The next step in the migration is to deploy the services as a separate
- OSGi bundle which the WAR then references.
- The Form Tags sample has a single service <code class="literal">UserManager</code>.
- </p><p>
- This scenario has two separate deployables, the <code class="literal">service</code> bundle and the WAR file.
- The following image shows the two separate source trees:
- </p><p>
- <img src="images/formtags-case-study-shared-services-eclipse.png">
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">Note that the WAR does not contain the <code class="literal">.domain</code> or
- <code class="literal">.service</code> packages as these will be imported from the separate service bundle.
- </td></tr></table></div><p>
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-war-shared-services-service"></a>The Service Bundle</h3></div></div></div><p>
- The responsibility of the first bundle (<code class="literal">formtags-shared-services-service</code>)
- is to provide the API of the formtags service. This includes both the
- domain and the service API. In the same way that imports are defined
- in the <code class="literal">/META-INF/MANIFEST.MF</code>, so are exports.
- The following is the <code class="literal">/META-INF/MANIFEST.MF</code> listing from the service bundle.
-</p><pre class="programlisting">
-Manifest-Version: 1.0
-Ant-Version: Apache Ant 1.7.0
-Created-By: 1.5.0_13-119 (Apple Inc.)
-Bundle-ManifestVersion: 2
-Bundle-Name: FormTags Service (and implementation)
-Bundle-SymbolicName: org.springframework.showcase.formtags.service-shared-services
-<span class="bold"><strong>Export-Package</strong></span>: org.springframework.showcase.formtags.service,org.spri
- ngframework.showcase.formtags.domain
-Import-Library: org.springframework.spring;version="[2.5.4,3.1.0)"
-</pre><p>
- </p><p>
- The symbolic name of this bundle is
- <code class="literal">org.springframework.showcase.formtags.service-shared-services</code>.
- Note that the name of the bundle typically describes the package
- that the bundle primarily exports.
- If you take a look at the <code class="literal">repository/bundles/ext</code> in the VWS
- directory, you’ll see that names are almost always indicative of the contents of the bundle.
- For this example, however, we have also appended
- "<code class="literal">-shared-services</code>"
- in order to avoid possible clashes with other bundle symbolic names.
- You will see later that the PAR also contains a service bundle.
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- In OSGi, the combination of <code class="literal">Bundle-SymbolicName</code>
- and <code class="literal">Bundle-Version</code> is used to uniquely identify
- a bundle within the OSGi container. Furthermore, when you deploy
- a bundle to the Virgo Web Server, for example via the <code class="literal">pickup</code>
- directory, a bundle’s filename is also used to uniquely identify it for
- the purpose of supporting <span class="emphasis"><em>hot deployment</em></span> via
- the file system.
- </td></tr></table></div><p>
- </p><p>
- As well as exporting types (i.e. the domain classes and service
- API), the service bundle also publishes an implementation of the
- <code class="literal">UserManager</code>. The actual implementation is
- <code class="literal">StubUserManager</code>; however, that should remain an
- implementation detail of this bundle.
- </p><p>
- The fact that this bundle publishes a service is not captured in
- the <code class="literal">/META-INF/MANIFEST.MF</code>, as it is a Spring-DM concept.
- The following image is of <code class="literal">src/main/resources/spring</code>.
- </p><p><img src="images/formtags-case-study-shared-services-service-resources.png"></p><p>
- As you can see there are two Spring configuration files: <code class="literal">module-context.xml</code> and
- <code class="literal">osgi-context.xml</code>.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- These names are abitrary; however, they follow an informal convention:
- <code class="literal">module-context.xml</code> typically bootstraps the Spring context
- (usually delegating to smaller fine grained context files inside another directory), whilst
- <code class="literal">osgi-context.xml</code> contains all the OSGi service exports and references.
- </td></tr></table></div><p>
- The following is a listing of <code class="literal">module-context.xml</code>.
-</p><pre class="programlisting">
-<<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-
-<<span class="hl-tag">beans</span> <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springframework.org/schema/beans"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"</span>>
-
- <<span class="hl-tag">bean</span> <span class="hl-attribute">id</span>=<span class="hl-value">"userManager"</span>
- <span class="hl-attribute">class</span>=<span class="hl-value">"org.springframework.showcase.formtags.service.internal.StubUserManager"</span>/>
-
-<<span class="hl-tag">/beans</span>>
-</pre><p>
- As you can see, this simply defines a bean called <code class="literal">userManager</code>.
- The following is a listing of <code class="literal">osgi-context.xml</code>.
-</p><pre class="programlisting">
-<<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">beans:beans</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xmlns:beans</span>=<span class="hl-value">"http://www.springframework.org/schema/beans"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi
- http://www.springframework.org/schema/osgi/spring-osgi.xsd
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd"</span>>
-
- <<span class="hl-tag">service</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"userManager"</span>
- <span class="hl-attribute">interface</span>=<span class="hl-value">"org.springframework.showcase.formtags.service.UserManager"</span>/>
-
-<<span class="hl-tag">/beans:beans</span>>
-</pre><p>
- This single bean definition exports the <code class="literal">userManager</code>
- defined in <code class="literal">module-context.xml</code> to the
- OSGi service registry and makes it available under the public
- <code class="literal">org.springframework.showcase.formtags.service.UserManager</code> API.
- </p><p>
- The service bundle should now be ready to deploy on the VWS.
- So copy <code class="literal">/dist/formtags-shared-services-services*</code>
- to the <code class="literal">SERVER_HOME/pickup</code> directory.
- Output similar to the following should appear in the VWS’s console:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 15:05:03.511] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-shared-services-service-2.0.0.RELEASE.jar'.
-[2009-07-01 15:05:03.688] fs-watcher
- <SPDE0010I> Deployment of 'org.springframework.showcase.formtags.service_shared_services' version '2.0.0.RELEASE' completed.
-</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-war-shared-services-war"></a>Accessing the Service and Types from the WAR</h3></div></div></div><p>
- The WAR file now needs to access the types and service exported
- by the service bundle. The following listing is the WAR’s
- <code class="literal">/META-INF/MANIFEST.MF</code> which imports the types
- exported by the service bundle. The <code class="literal">Import-Bundle</code>
- statement has also been extended to import <code class="literal">org.springframework.osgi.core</code>,
- which is necessary in order to load an OSGi-enabled <code class="literal">WebApplicationContext</code>.
-</p><pre class="programlisting">
-Manifest-Version: 1.0
-Ant-Version: Apache Ant 1.7.0
-Created-By: 1.5.0_13-119 (Apple Inc.)
-Bundle-ManifestVersion: 2
-Bundle-SymbolicName: org.springframework.showcase.formtags.web-shared-
- services
-<span class="bold"><strong>Import-Package</strong></span>: org.springframework.showcase.formtags.domain,org.sprin
- gframework.showcase.formtags.service, org.eclipse.virgo.web.dm;version="[1.0,2.1)"
-Import-Library: org.springframework.spring;version="[2.5.4,3.1.0)"
-Import-Bundle: com.springsource.org.apache.taglibs.standard;version="1
- .1.2",<span class="bold"><strong>org.springframework.osgi.core</strong></span>
-</pre><p>
- </p><p>
- In addition to importing the exported types of the service bundle,
- the WAR must also obtain a reference to the <code class="literal">UserManager</code>
- published by the service bundle. The following image shows the directory
- structure of the Shared Services WAR.
- </p><p><img src="images/formtags-case-study-shared-services-war-resources.png"></p><p>
- As you can see in the above image, the Form Tags Shared Services WAR’s
- <code class="literal">/WEB-INF/web.xml</code> directory contains a standard <code class="literal">web.xml</code>
- deployment descriptor, <code class="literal">applicationContext.xml</code> which defines the configuration
- for the <span class="emphasis"><em>root</em></span> <code class="literal">WebApplicationContext</code>, and
- <code class="literal">formtags-servlet.xml</code> which defines the configuration specific to the
- configured <span class="emphasis"><em>formtags</em></span> <code class="literal">DispatcherServlet</code>.
- </p><p>
- As is typical for Spring MVC based web applications, you configure a <code class="literal">ContextLoaderListener</code>
- in <code class="literal">web.xml</code> to load your root <code class="literal">WebApplicationContext</code>; however, to enable your
- <code class="literal">WebApplicationContext</code> to be able to reference services from the OSGi Service Registry,
- you must explicitly set the <code class="literal">contextClass</code> Servlet context parameter to the fully qualified
- class name of a <code class="literal">ConfigurableWebApplicationContext</code> which is OSGi-enabled. When deploying
- Shared Services WARs to the Virgo Web Server, you should use
- <code class="literal">org.eclipse.virgo.web.dm.ServerOsgiBundleXmlWebApplicationContext</code>. This will
- then enable the use of Spring-DM’s <code class="literal"><reference ... /></code> within your root
- <code class="literal">WebApplicationContext</code> (i.e., in <code class="literal">applicationContext.xml</code>).
- The following listing is an excerpt from <code class="literal">/WEB-INF/web.xml</code>.
- </p><pre class="programlisting">
- <<span class="hl-tag">context-param</span>>
- <<span class="hl-tag">param-name</span>>contextClass<<span class="hl-tag">/param-name</span>>
- <<span class="hl-tag">param-value</span>>org.eclipse.virgo.web.dm.ServerOsgiBundleXmlWebApplicationContext<<span class="hl-tag">/param-value</span>>
- <<span class="hl-tag">/context-param</span>>
-
- <<span class="hl-tag">listener</span>>
- <<span class="hl-tag">listener-class</span>>org.springframework.web.context.ContextLoaderListener<<span class="hl-tag">/listener-class</span>>
- <<span class="hl-tag">/listener</span>>
-</pre><p>
- The Form Tags Shared Services WAR contains a <code class="literal">/WEB-INF/applicationContext.xml</code>
- file which is the default configuration location used to create the <span class="emphasis"><em>root</em></span>
- <code class="literal">WebApplicationContext</code> for Spring MVC’s <code class="literal">ContextLoaderListener</code>.
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- As already mentioned, in the OSGi world, bundle configuration
- takes place in the root <code class="literal">/META-INF/</code> directory.
- Typically Spring-DM powered configuration files will live
- there as well (e.g., in <code class="literal">/META-INF/spring/*.xml</code>).
- In a WAR, however, the root <code class="literal">WebApplicationContext</code>
- loaded by <code class="literal">ContextLoaderListener</code> and the <code class="literal">DispatcherServlet’s</code>
- application context typically live in <code class="literal">/WEB-INF/</code>.
- </td></tr></table></div><p>
- The following is the listing of the WAR’s <code class="literal">/WEB-INF/applicationContext.xml</code>.
-</p><pre class="programlisting">
-<<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">beans:beans</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xmlns:beans</span>=<span class="hl-value">"http://www.springframework.org/schema/beans"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"http://www.springframework.org/schema/osgi
- http://www.springframework.org/schema/osgi/spring-osgi.xsd
- http://www.springframework.org/schema/beans
- http://www.springframework.org/schema/beans/spring-beans.xsd"</span>>
-
- <<span class="hl-tag">reference</span> <span class="hl-attribute">id</span>=<span class="hl-value">"userManager"</span>
- <span class="hl-attribute">interface</span>=<span class="hl-value">"org.springframework.showcase.formtags.service.UserManager"</span>/>
-
-<<span class="hl-tag">/beans:beans</span>>
-</pre><p>
- The single bean declaration is retrieving a service that implements
- the <code class="literal">org.springframework.showcase.formtags.service.UserManager</code>
- API from the OSGi Service Registry.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- You might have been expecting a reference to the service bundle,
- but that isn’t how OSGi works. OSGi provides a service
- registry, and this bean definition is accessing a service in that
- registry that meets the specified restriction (i.e. implements
- the specified interface). This leads to a very loosely coupled
- programming model: the WAR really doesn’t care where the implementation
- comes from.
- </td></tr></table></div><p>
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- What happens if there is no service at runtime?
- What if there are multiple services that match the criteria?
- Spring-DM provides a lot of configuration options, including
- whether or not the reference is <span class="emphasis"><em>mandatory</em></span>,
- how long to wait for a service reference, etc. Please consult the
- <a class="ulink" href="http://www.springframework.org/osgi/" target="_top">Spring Dynamic Modules for OSGi</a>
- home page for further information.
- </td></tr></table></div><p>
- </p><p>
- One of the benefits of programming to interfaces is that you are
- decoupled from the actual implementation; Spring-DM provides a proxy. This
- has enormous benefits including the ability to dynamically refresh individual bundles without
- cascading that refresh to unrelated bundles.
- </p><p>
- </p><p>
- To deploy the WAR, copy <code class="literal">/dist/formtags-shared-services-war*</code>
- to the <code class="literal">SERVER_HOME/pickup</code> directory.
- You should then see console output similar to the following:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 15:09:19.819] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-shared-services-war-2.0.0.RELEASE.war'.
-[2009-07-01 15:09:20.167] fs-watcher
- <SPDE0010I> Deployment of 'org.springframework.showcase.formtags.web_shared_services' version '2' completed.
-[2009-07-01 15:09:20.168] Thread-20
- <SPWE0000I> Starting web bundle '/formtags-shared-services-war-2.0.0.RELEASE'.
-[2009-07-01 15:09:20.647] Thread-20
- <SPWE0001I> Started web bundle '/formtags-shared-services-war-2.0.0.RELEASE'.
-</pre>
- Navigating to the appropriate link should render the welcome page.
- </div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-par"></a>6.5 Form Tags PAR</h2></div></div></div><p>
- The final step in the migration is that of a full blown
- OSGi application with web support. The Virgo Web Server introduces a
- new packaging and deployment format: the PAR.
-
- A PAR is a standard JAR with a "<code class="literal">.par</code>"
- file extension which contains all of the modules of your
- application (e.g., service, domain, and infrastructure bundles
- as well as a WAR for web applications) in a single deployment unit.
- Moreover, a PAR defines both a physical and logical application boundary.
- </p><p>
- The PAR sample is comprised of four directories, as shown below.
- </p><p><img src="images/formtags-case-study-par-sample.png"></p><p>
- The <code class="literal">formtags-par</code> directory is a build project that
- understands how to create the PAR from its constituent bundles.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-par-granularity"></a>Granularity of the PAR</h3></div></div></div><p>
- Achieving the appropriate level of granularity for your OSGi
- application is more of an art than a science. It helps to look
- at the different requirements:
- </p><div class="table"><a name="formtags-case-study-par-granularity-drivers-table"></a><p class="title"><b>Table 6.1. Granularity drivers</b></p><div class="table-contents"><table summary="Granularity drivers" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Requirement</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Domain/Technical Layering</td><td style="border-bottom: 1.0pt solid ; ">
- Applications can be split either by domain (i.e.,
- by use case or <span class="emphasis"><em>vertically</em></span>) or
- by their technical layers (i.e., <span class="emphasis"><em>horizontally</em></span>).
- Since the Form Tags application essentially has only
- a single use case, the bundles are split by technical layering
- (i.e., domain, service, and web).
- </td></tr><tr><td style="border-right: 1.0pt solid ; ">Refreshability</td><td style="">
- A major benefit of OSGi is that of refreshability: if one bundle
- is changed, only bundles that have a dependency upon
- the exported types need to be refreshed. This has a high impact
- on development time costs as well as production
- costs. However, this can lead to lots of smaller, fine grained
- bundles. An example of this granularity would be to
- separate out the service API and implementation into two different
- bundles. This means that a change in the implementation
- wouldn’t require any other bundles to be refreshed.
- </td></tr></tbody></table></div></div><p><br class="table-break">
- Ultimately the right level of granularity will depend upon your particular application and team.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-par-domain-and-service"></a>Domain and Service Bundles</h3></div></div></div><p>
- The service bundle is identical (except for the <code class="literal">Bundle-SymbolicName</code>) to that
- in the shared-services variation of the sample.
- The PAR has also separated out the domain classes into their own bundle.
- When layering by technical considerations, it is again
- somewhat of an unofficial convention to have a
- <code class="literal">.domain</code> bundle.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="formtags-case-study-par-par"></a>Constructing the PAR</h3></div></div></div><p>
- Finally we need to construct the PAR itself.
- The following are the contents of the exploded PAR.
- </p><p><img src="images/formtags-case-study-par-exploded.png"></p><p>
- You can see that the PAR itself doesn’t contain any resources or
- Java classes: it simply packages together a related set of bundles
- as a single, logical unit.
- </p><p>
- The PAR does however, contain its own <code class="literal">/META-INF/MANIFEST.MF</code>.
-</p><pre class="programlisting">
-Manifest-Version: 1.0
-Application-SymbolicName: org.springframework.showcase.formtags-par
-Application-Version: 1.0.0
-Application-Name: FormTags Showcase Application (PAR)
-</pre><p>
- For more information on the contents of the PAR’s
- <code class="literal">/META-INF/MANIFEST.MF</code>, please consult
- <a class="xref" href="#developing-applications" title="4. Developing Applications">Chapter 4, <i>Developing Applications</i></a>.
- </p><p>
- You can now deploy the PAR on the VWS, for example by copying
- <code class="literal">/dist/formtags-par*.par</code> to the VWS’s
- <code class="literal">pickup</code> directory.
- You should then see console output similar to the following:
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>The console output has been reformatted to fit this document.</p></td></tr></table></div><pre class="programlisting">
-[2009-07-01 15:13:43.306] fs-watcher
- <SPDE0048I> Processing 'CREATED' event for file 'formtags-par-2.0.0.RELEASE.par'.
-[2009-07-01 15:13:44.060] fs-watcher
- <SPDE0010I> Deployment of 'formtags-par' version '2.0.0.RELEASE' completed.
-[2009-07-01 15:13:44.068] Thread-20
- <SPWE0000I> Starting web bundle '/formtags-par'.
-[2009-07-01 15:13:45.212] Thread-20
- <SPWE0001I> Started web bundle '/formtags-par'.
-</pre><p>
- Navigate to <a class="ulink" href="http://localhost:8080/formtags-par" target="_top">http://localhost:8080/formtags-par</a> to see the welcome page.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Tip</th></tr><tr><td align="left" valign="top">
- Note that the web application’s context path is explicitly defined via the
- <code class="literal">Web-ContextPath</code> manifest header in <code class="literal">/META-INF/MANIFEST.MF</code>
- of the Web application bundle within the PAR.
- </td></tr></table></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-summary"></a>6.6 Summary of the Form Tags Migration</h2></div></div></div><p>
- The Virgo Web Server provides out-of-the-box support for deploying
- standard Java EE WAR files. In addition support for
- <span class="emphasis"><em>Shared Libraries</em></span> and <span class="emphasis"><em>Shared Services</em></span>
- WAR formats provides a logical migration path away from standard,
- monolithic WARs toward OSGi-enable Web applications. The PAR packaging
- and deployment format enables truly fine-grained, loosely-coupled, and
- efficient application development. In general, the migration steps
- presented in this chapter are fairly straightforward, but developers
- should set aside time for some up-front design of the bundles themselves.
- </p><p>
- It is recommended that you take another sample application or
- indeed your own small application and go through this migration
- process yourself. This will help you better understand the concepts and
- principles at work. In addition, it is highly recommended that you
- familiarize yourself with the Eclipse-based
- <span class="emphasis"><em>Virgo Web Server Tools</em></span> support which is discussed in
- <a class="xref" href="#tooling" title="7. Tooling">Chapter 7, <i>Tooling</i></a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="formtags-case-study-as-plan"></a>6.7 Form Tags as a plan</h2></div></div></div><p>
- Plans (see <a class="xref" href="#developing-applications-plans" title="4.3 Creating Plans">Section 4.3, “Creating Plans”</a>)
- allow us to package and deploy the Form Tags application in a more flexible way.
- Instead of packaging all the bundles of the application into a single PAR file, each bundle can be placed in the repository
- and referred to in a <span class="emphasis"><em>plan</em></span>.
- </p><p>
- The bundles to be placed in a repository in the chain (for example, <code class="literal">repository/usr</code>) are:
-</p><pre class="programlisting">org.springframework.showcase.formtags.domain-2.0.0.RELEASE.jar
-org.springframework.showcase.formtags.service-2.0.0.RELEASE.jar
-org.springframework.showcase.formtags.web-2.0.0.RELEASE.war
-</pre><p>
- which are just those files which were part of the PAR.
- </p><p>
- Here is the contents of a suitable plan file for the Form Tags example:
-</p><pre class="programlisting"><<span class="hl-tag">?xml version="1.0" encoding="UTF-8"?</span>>
-<<span class="hl-tag">plan</span> <span class="hl-attribute">name</span>=<span class="hl-value">"formtags.plan"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"2.0.0"</span> <span class="hl-attribute">scoped</span>=<span class="hl-value">"true"</span> <span class="hl-attribute">atomic</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">xmlns</span>=<span class="hl-value">"http://www.springsource.org/schema/dm-server/plan"</span>
- <span class="hl-attribute">xmlns:xsi</span>=<span class="hl-value">"http://www.w3.org/2001/XMLSchema-instance"</span>
- <span class="hl-attribute">xsi:schemaLocation</span>=<span class="hl-value">"
- http://www.springsource.org/schema/dm-server/plan
- http://www.springsource.org/schema/dm-server/plan/springsource-dm-server-plan.xsd"</span>>
-
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"bundle"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.springframework.showcase.formtags.domain_par"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"[2.0,2.1)"</span>/>
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"bundle"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.springframework.showcase.formtags.service_par"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"[2.0,2.1)"</span>/>
- <<span class="hl-tag">artifact</span> <span class="hl-attribute">type</span>=<span class="hl-value">"bundle"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.springframework.showcase.formtags.web_par"</span> <span class="hl-attribute">version</span>=<span class="hl-value">"[2.0,2.1)"</span>/>
-
-<<span class="hl-tag">/plan</span>></pre><p>
- where we have chosen to use any of the artifacts in the version range [2.0,2.1).
- This plan (as a file called, for example, <code class="literal">formtags.plan</code>)
- can be deployed in any of the normal ways (for example, dropped in
- the <code class="literal">pickup</code> directory).
- </p><p>
- When the plan is deployed, the artifacts it references are installed from the repository and deployed in the order given in the plan file.
- Because this plan is scoped and atomic, the collection is given an application scope and is started and stopped as a single unit.
- </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="tooling"></a>7. Tooling</h2></div></div></div><p>
- SpringSource provides a set of plug-ins for the Eclipse IDE that streamline the development
- lifecycle of OSGi bundles and PAR applications. The Virgo Web Server Tools build on top
- of the Eclipse Web Tools Project (WTP).
- </p><p>
- The Virgo Web Server Tools support the creation of new OSGi bundle and PAR projects within Eclipse, and the
- conversion of existing projects into OSGi bundle projects. Projects can then be deployed and debugged on a running
- VWS from within Eclipse.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-installation"></a>7.1 Installation</h2></div></div></div><p>
- Currently the Tools support Eclipse 3.5 and Eclipse 3.6 with the corresponding version of WTP. Downloading and
- unzipping the <a class="ulink" href="http://www.eclipse.org/downloads/" target="_top">Eclipse IDE for Java EE Developers</a> is the
- easiest way to start.
- </p><p>
- You may like to change the Eclipse launcher options to increase the values of <code class="literal">-XX:MaxPermSize</code>,
- <code class="literal">-Xms</code>, and <code class="literal">-Xmx</code>. Suggested values, if you have plenty of RAM, are <code class="literal">768m</code>,
- <code class="literal">500m</code>, and <code class="literal">2500m</code>, respectively.
- </p><p>
- Install the dm Server Tools, which include the Virgo Tools, from one of the following update sites depending on
- your version of Eclipse. Releases are, in general, more stable than milestones whereas nightly builds are not for the
- faint of heart.
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <code class="literal">http://dist.springsource.com/release/TOOLS/update/e3.6/</code> (not yet available at the time of writing)
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/release/TOOLS/update/e3.5/</code>
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/milestone/TOOLS/update/e3.6/</code> (recommended at the time of writing)
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/milestone/TOOLS/update/e3.5/</code>
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/snapshot/TOOLS/nightly/e3.6/</code>
- </p></li><li><p>
- <code class="literal">http://dist.springsource.com/snapshot/TOOLS/nightly/e3.5/</code>
- </p></li></ul></div><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-running"></a>7.2 Running a Virgo Web Server instance within Eclipse</h2></div></div></div><p>
- After installing the Tools from the update site outlined in the previous section, you
- will be able to configure an instance of the VWS inside Eclipse.
- </p><p>
- To do so bring up the WTP Servers view (i.e.,
- <span class="guimenu">Window</span> → <span class="guisubmenu">Show View</span> → <span class="guimenuitem">Other</span> → <span class="guimenuitem">Server</span> → <span class="guimenuitem">Servers</span>).
- You can now right-click in the view and select "<span class="guimenu">New</span> → <span class="guimenuitem">Server</span>".
- This will bring up a "New Server" dialog. Select "Virgo Web Server v2.1 Server"
- in the "Virgo" category and click "<span class="guibutton">Next</span>".
- </p><p>
- <img src="images/tooling-new-server.png">
- </p><p>
- Within the "New Server Wizard" point to the installation directory of the Virgo Web Server
- and finish the wizard. After finishing the wizard you should see a Virgo Web Server
- entry in the Servers view.
- </p><p>
- To start, stop, and debug the created Virgo Web Server instance use the toolbar or the context
- menu actions of the Servers view.
- </p><p>
- <img src="images/tooling-start-server.png">
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-repository-editor"></a>7.3 Bundle and Library Provisioning</h2></div></div></div><p>
- After successful configuration of an instance of the Virgo Web Server in Eclipse you can use
- the Repository Browser to very easily install bundles and libraries from the remote
- SpringSource Enterprise Bundle Repository.
- </p><p>
- To open the Repository Browser double-click a Virgo Web Server instance in the Servers
- view and select the "Repository" tab in the server editor. Please note that opening of the
- Editor may take a few seconds as the contents of the local repository needs to be indexed
- before opening.
- </p><p>
- <img src="images/tooling-repository-browser.png">
- </p><p>
- The left section of the Repository Browser allows the user to run searches against the
- SpringSource Enterprise Bundle Repository and displays matching results. The search can
- take parts of bundle symbolic names, class or package names and allows wildcards such as
- ‘?’ and ‘*’. By selecting the checkbox left to a matching bundle and/or library and clicking
- the "Download" button it is very easy to install new bundles in the Virgo Web Server. For your
- convenience JARs containing the bundle source code can be automatically downloaded as well.
- </p><p>
- Clicking the "Download" button will trigger an Eclipse background job that will download
- the selected repository artifacts and -- if desired -- the source JARs one after another.
- </p><p>
- The section on the right displays the currently installed bundles and libraries. Bundles
- with available sources are visually marked. You can very easily download missing source
- JARs by using the "Install Sources" button.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-config"></a>7.4 Setting up Eclipse Projects</h2></div></div></div><p>
- The Virgo Web Server supports different deployment units as discussed earlier in this guide. The
- Tools define specific project types to support the development of OSGi and PAR projects.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-config-creating-new-projects"></a>Creating New Projects</h3></div></div></div><p>
- There are two New Project Wizards available within Eclipse that allow for creating
- new OSGi bundle and PAR projects. The projects created by the wizards are deployable
- to the integrated VWS instance without requiring any additional steps.
- </p><p>
- <img src="images/tooling-new-project-wizards.png">
- </p><p>
- Those wizards create the required <code class="code">MANIFEST.MF</code> file and appropriate manifest
- headers.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-config-migrating-existing-projects"></a>Migrating existing Java Projects</h3></div></div></div><p>
- To migrate an existing Java Project to be used with the VWS, the Tools
- provide a migration action that adds the required meta data to the project.
- The migration will not change your project’s source layout.
- </p><p>
- Use the context menu action of a project in the Package or Project Explorer and select
- "<span class="guimenu">Spring Tools</span> → <span class="guimenuitem">Convert to OSGi bundle project</span>".
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-config-creating-plan-projects"></a>Creating Plan Projects</h3></div></div></div><p>
- This is done by creating a new <span class="emphasis"><em>faceted</em></span> project and then applying the OSGi Plan facet.
- This will give you access to features such as content completion when editing <code class="literal">.plan</code> files
- and deployment to configured servers from within the IDE.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-developing"></a>7.5 Developing OSGi Bundles</h2></div></div></div><p>
- The Tools provide functionality that makes developing OSGi bundles,
- especially the editing of MANIFEST.MF files, easier.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-developing-resolving-bundle-dependencies"></a>Resolving Bundle Dependencies</h3></div></div></div><p>
- While working with OSGi bundles, one of the most interesting and challenging aspects is defining
- the package, bundle, and library imports in the manifest and then keeping this in sync
- with your compile classpath either in Ant and Maven or Eclipse. In most cases you would typically
- be required to manually set up the Eclipse classpath. Ultimately, the Eclipse compile
- classpath is still different from the bundle runtime classpath, as normally an entire
- JAR file is being made available on the Eclipse classpath but not necessarily at runtime
- due to the explicit visibility rules defined in <code class="code">Import-Package</code> headers.
- </p><p>
- The Tools address this problem by providing an Eclipse classpath container that
- uses an Virgo Web Server-specific dependency resolution mechanism. This classpath
- container makes resolved dependencies available on the project’s classpath but allows
- only access to those package that are imported explicitly (e.g., via <code class="code">Import-Package</code>)
- or implicitly by using <code class="code">Import-Library</code> or <code class="code">Import-Bundle</code>.
- </p><p>
- To use the automatic dependency resolution, an OSGi bundle or PAR project needs to be
- targeted to a configured Virgo Web Server instance. This can be done from the project’s
- preferences by selecting the runtime on the "Targeted Runtimes" preference page.
- </p><p>
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- In most scenarios it is sufficient to target the PAR project to a runtime. The nested
- bundles will then automatically inherit this setting.
- </td></tr></table></div><p>
- </p><p>
- <img src="images/tooling-classpath.png">
- </p><p>
- After targeting the project or PAR you will see a "Bundle Dependencies" classpath
- container in your Java project. It is now safe to remove any manually configured classpath
- entries.
- </p><p>
- The classpath container will automatically attach Java source code to the classpath
- entries by looking for source JARs next to the binary JARs in the Virgo Web Server’s
- repository. You can also manually override the source code attachment by using the
- properties dialog on a single JAR entry. This manual attachment will always override
- the convention-based attachment.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="tooling-developing-editing-manifest-mf"></a>Editing the Manifest</h3></div></div></div><p>
- The Tools provide a Bundle Manifest Editor that assists the developer to create and
- edit MANIFEST.MF files. The editor understands the Virgo Web Server specific headers
- like <code class="code">Import-Library</code> and <code class="code">Import-Bundle</code> and provides content
- assist features while editing source code. Furthermore a Eclipse Form-based UI is also
- available.
- </p><p>
- To open the Bundle Manifest Editor right click a MANIFEST.MF file and select "Bundle
- Manifest Editor" from the "Open With" menu.
- </p><p>
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- Please note that the Virgo Web Server specific manifest headers appear in green color
- to distinguish them from those headers defined in the OSGi specification. This also
- makes navigating much easier.
- </td></tr></table></div><p>
- </p><p>
- <img src="images/tooling-manifest-source-editor.png">
- </p><p>
- The content assist proposals in the source tab as well as in the UI-based tabs are
- resolved from the bundle and library repository of an installed and configured
- Virgo Web Server. Therefore it is important to target the project or PAR to a specific
- VWS instance to indicate to the tooling which bundle repository to use.
- </p><p>
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top">
- If a OSGi bundle project is not targeted to a VWS instance, either
- directory or indirectly via a PAR project’s targetting, the manifest editor will not
- be able to provide content assist for importing packages, bundles, and libraries.
- </td></tr></table></div><p>
- </p><p>
- <img src="images/tooling-manifest-form-ui-editor.png">
- </p><p>
- The Dependencies tab of the Bundle Manifest Editor enables the user to easily download
- and install bundles and libraries from the SpringSource Enterprise Bundle Repository
- by using the "Download..." buttons next to the "Import Bundle" and "Import Library"
- sections.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="tooling-deploying"></a>7.6 Deploying Applications</h2></div></div></div><p>
- Currently the Tools support direct deployment of WTP Dynamic Web Projects, OSGi
- bundle and PAR projects to the VWS from directly within Eclipse.
- </p><p>
- To deploy an application to the Virgo Web Server just bring up the context menu on the configured
- VWS runtime in the Servers view and choose "Add or Remove Projects...". In the
- dialog, select the desired project and add it to the list of "Configured projects".
- </p><p>
- <img src="images/tooling-deployed-application.png">
- </p><div class="note" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Note"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Note]" src="images/note.gif"></td><th align="left">Note</th></tr><tr><td align="left" valign="top"><p>
- Deploying and undeploying an application from the VWS certainly works
- while the Virgo Web Server is running, but you can also add or remove projects if the
- VWS is not running.
- </p></td></tr></table></div><p>
- Once an application is deployed on the Virgo Web Server the tooling support will automatically
- pick up any change to source files -- for example, Java and XML context files -- and refresh the
- deployed application on the VWS.
- </p><p>
- The wait time between a change and the actual refresh can be configured
- in the configuration editor of the runtime. To bring up that editor,
- double-click on the configured Virgo Web Server instance in the Servers view.
- </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="common-libraries"></a>8. Working with Common Enterprise Libraries</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="common-libraries-hibernate"></a>8.1 Working with Hibernate</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="common-libraries-hibernate-import"></a>Importing Hibernate</h3></div></div></div><p>
- Hibernate uses CGLIB to dynamically create subclasses of your entity types at
- runtime. To guarantee that Hibernate and CGLIB can correctly see the types,
- you must add an <code class="literal">Import-Library</code> or <code class="literal">Import-Bundle</code> for the Hibernate library or bundle
- into any bundle that uses Hibernate directly.
- </p><p>
- Additionally, if other bundles in your application contain types to be persisted by Hibernate, then be sure to specify the <code class="code">import-scope</code> directive of the <code class="literal">Import-Bundle</code> header in the bundle that uses Hibernate directly. The <code class="literal">import-scope</code> directive tells Virgo Web Server to implicitly import the bundle into all other bundles that make up the application; this ensures that bundles that indirectly depend on the generated Hibernate classes have access to them, but you do not have to explicitly update their <code class="code">Import-Bundle</code> header, ensuring modularity. For example:
- </p><pre class="programlisting">
-Import-Bundle: com.springsource.org.hibernate;version="[3.2.6.ga,3.2.6.ga]";<span class="bold"><strong>import-scope:=application</strong></span></pre><p>
- The <code class="code">import-scope</code> directive works only for the bundles in a scoped application (PARs or plans.)
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="common-libraries-datasources"></a>8.2 Working with DataSources</h2></div></div></div><p>
- Many <code class="literal">DataSource</code> implementations use the <code class="literal">DriverManager</code>
- class which is incompatible with typical OSGi class loading semantics. To get around this,
- use a <code class="literal">DataSource</code> implementation that does not rely on
- <code class="literal">DriverManager</code>. Versions of the following
- <code class="literal">DataSources</code> that are known to work in an OSGi environment are available in the
- <a class="ulink" href="http://www.springsource.com/repository" target="_top">SpringSource Enterprise Bundle Repository</a>.
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <a class="ulink" href="http://www.springsource.com/repository/app/bundle/detail?name=com.springsource.org.apache.commons.dbcp" target="_top">Apache Commons DBCP</a>
- </p></li><li><p>SimpleDriverDataSource available in
- <a class="ulink" href="http://www.springsource.com/repository/app/bundle/detail?name=org.springframework.jdbc" target="_top">Spring JDBC</a>
- 2.5.5 and later
- </p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="common-libraries-weaving-instrumentation"></a>8.3 Weaving and Instrumentation</h2></div></div></div><p>
- When using a library that performs bytecode weaving or instrumentation, such as AspectJ,
- OpenJPA or EclipseLink, any types that are woven must be able to see the library doing
- the weaving. This is accomplished by adding an <code class="literal">Import-Library</code> for the
- weaving library into all bundles that are to be woven.
- </p><p>
- Weaving is often used by JPA implementations to transform persisted types. When using a
- JPA provider that uses load-time weaving, an <code class="literal">Import-Library</code> for the
- provider is needed in the bundles containing the persisted types.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="common-libraries-tld"></a>8.4 JSP Tag Libraries</h2></div></div></div><p>
- When using tag libraries within a WAR or Web Bundle, be sure to include an
- <code class="literal">Import-Bundle</code> or <code class="literal">Import-Library</code> for the tag library
- bundle(s). This will ensure that your module can see the TLD definition and implementing types.
- For example, to use the Apache implementation of JSTL, add the following to your bundle’s
- <code class="literal">/META-INF/MANIFEST.MF</code>:
- </p><pre class="programlisting">
-<span class="bold"><strong>Import-Bundle</strong></span>: com.springsource.org.apache.taglibs.standard;version="1.1.2"
-</pre></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="known-issues"></a>9. Known Issues</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-jpa"></a>9.1 JPA Entity Scanning</h2></div></div></div><p>
- Classpath scanning for JPA entities annotated with <code class="literal">@Entity</code> does
- not work. Describing entities with <code class="literal">@Entity</code> will work, but the
- entities need to be listed explicitly.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known.issues.proxy"></a>9.2 <code class="classname">ClassNotFoundError</code> When Creating a Proxy</h2></div></div></div><p>
- When creating proxies at runtime, there are circumstances where <code class="classname">ClassNotFoundErrors</code>
- can be generated. These errors happen because the proxy creating bundle does not have visibility into every
- type on the interface of the proxy. You can either put in import statements for all the relevant types or
- add use a service (with visibility of all pertinent types) to create the proxy. Please see
- <a class="ulink" href="http://www.osgi.org/blog/2008/08/classy-solutions-to-tricky-proxies.html" target="_top">this blog entry</a>
- for more details.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known.issues.cglib"></a>9.3 Creating proxies with CGLIB for package-protected types</h2></div></div></div><p>
- In traditional Java EE applications user types are loaded by the same <code class="classname">ClassLoader</code> as
- CGLIB. This allows CGLIB to proxy package-protected types. In OSGi environments, user types and CGLIB will
- most likely be packaged in separate bundles. This results in the user types and CGLIB being loaded by
- different <code class="classname">ClassLoaders</code>. This prevents CGLIB from proxying any package-protected types.
- </p><p>
- The workaround for this issue is to make all types that require proxying public.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-tomcat-restrictions"></a>9.4 Tomcat Restrictions</h2></div></div></div><p>
- The following Tomcat features are not supported.
- </p><div class="itemizedlist"><ul type="disc"><li><code class="literal"><Context></code> elements.
- </li></ul></div><p>
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-web-bundle-default-headers"></a>9.5 Default Web Application Bundle Headers</h2></div></div></div><p>
- The Gemini Web container conforms to the OSGi Web Applications specification and does not apply default values
- to the headers of a Web Application Bundle. However, SpringSource dm Server 2.0.x applies default values
- to certain headers (see below) and so Virgo modifies the behaviour of Gemini Web so that it applies default
- values consistently with dm Server 2.0.x.
- </p><p>
- This restriction is intended to ease migration to Virgo 2.1.0 and may be removed in a later release.
- </p><p>
- The following defaults are applied to a Web Application Bundle:
- </p><div class="itemizedlist"><ul type="disc"><li><code class="literal">Bundle-ManifestVersion</code> is set to <code class="literal">2</code></li><li><code class="literal">Bundle-SymbolicName</code> is generated from the path from which the bundle was installed
- </li><li><code class="literal">Bundle-ClassPath</code> is set to <code class="literal">WEB-INF/classes</code> followed by the JARs in
- <code class="literal">WEB-INF/lib</code> in an unspecified order, followed by any transitive dependencies declared
- by the JARs in <code class="literal">WEB-INF/lib</code></li><li><code class="literal">Import-Package</code> is extended to import a fixed set of <code class="classname">javax.servlet.*</code>
- packages, <code class="classname">javax.el</code>, and packages which are exported by the system bundle but not
- provided by the bundle (see <a class="link" href="#developing-applications-automatic-imports-web" title="4.6 Automatic Imports for the Web subsystem">Automatic Imports
- for the Web Personality</a> for details)
- </li></ul></div><p>
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apa.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apa.html
deleted file mode 100644
index 5c7029c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apa.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Appendix A. Event log codes</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch11s06.html" title="11.6 Configuring the OSGi Framework"><link rel="next" href="apb.html" title="Appendix B. Known Issues"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix A. Event log codes</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch11s06.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="apb.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="log-codes"></a>Appendix A. Event log codes</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="event-log-codes-format"></a>A.1 Format of the event log codes</h2></div></div></div><p>
-Event log codes issued by VWS have the general syntax
-<code class="literal"><XXnnnnL></code> where:
-</p><div class="informaltable"><table style="border: none;"><colgroup><col><col></colgroup><tbody><tr><td style=""><code class="literal">XX</code></td><td style="">
-is a two-letter code (upper-case) identifying the area of the VWS code which issued the log message;
-</td></tr><tr><td style=""><code class="literal">nnnn</code></td><td style="">
-is a four-digit message number; and
-</td></tr><tr><td style=""><code class="literal">L</code></td><td style="">
-is a single-letter (upper-case) code identifying the level of the message.
-</td></tr></tbody></table></div><p>
-</p><p>
-The two-letter codes are (this list is not complete):
-</p><div class="informaltable"><table style="border: none;"><colgroup><col><col></colgroup><tbody><tr><td style=""><code class="literal">AG</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.agent.dm</code></td></tr><tr><td style=""><code class="literal">DE</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.deployer.core</code></td></tr><tr><td style=""><code class="literal">HD</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.deployer.hot</code></td></tr><tr><td style=""><code class="literal">HR</code></td><td style=""><code class="literal">org.eclipse.virgo.apps.repository.core</code></td></tr><tr><td style=""><code class="literal">KE</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.core</code></td></tr><tr><td style=""><code class="literal">KS</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.services</code></td></tr><tr><td style=""><code class="literal">OF</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.osgi</code></td></tr><tr><td style=""><code class="literal">RP</code></td><td style=""><code class="literal">org.eclipse.virgo.repository</code></td></tr><tr><td style=""><code class="literal">TC</code></td><td style=""><code class="literal">org.eclipse.virgo.web.tomcat</code></td></tr><tr><td style=""><code class="literal">UR</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.userregion</code></td></tr><tr><td style=""><code class="literal">WE</code></td><td style=""><code class="literal">org.eclipse.virgo.web.core</code></td></tr></tbody></table></div><p>
-
-</p><p>
-The four-digit numbers identify the message text (with placeholders for inserted values). These are not listed here, but can be discovered by examining the files called
-<code class="literal">EventLogMessages.properties</code>, found in the relevant packages.
-</p><p>
-The single-digit level code is one of:
-</p><div class="informaltable"><table style="border: none;"><colgroup><col><col></colgroup><tbody><tr><td style=""><code class="literal">E</code></td><td style="">Error level: enabled if level is <code class="literal">ERROR</code>.</td></tr><tr><td style=""><code class="literal">W</code></td><td style="">Warning level: enabled if level is <code class="literal">WARNING</code> or above.</td></tr><tr><td style=""><code class="literal">I</code></td><td style="">Info level: enabled if level is <code class="literal">INFO</code> or above.</td></tr><tr><td style=""><code class="literal">D</code></td><td style="">Debug level: enabled if level is <code class="literal">DEBUG</code> or above.</td></tr><tr><td style=""><code class="literal">T</code></td><td style="">Trace level: always enabled.</td></tr></tbody></table></div><p>
-There are never two messages with the same prefix and number, but with different levels.
-</p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch11s06.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="apb.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">11.6 Configuring the OSGi Framework </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Appendix B. Known Issues</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apb.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apb.html
deleted file mode 100644
index 9659f3a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apb.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Appendix B. Known Issues</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="apa.html" title="Appendix A. Event log codes"><link rel="next" href="apbs02.html" title="B.2 OutOfMemoryError: PermGen space running on Sun VM"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix B. Known Issues</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apa.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="apbs02.html">Next</a></td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="known-issues"></a>Appendix B. Known Issues</h2></div></div></div><p>This section describes known issues that you might run into, along with corresponding workarounds. </p><p>For the full list of known issues, see <a class="ulink" href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;order=Importance;classification=RT;product=Virgo" target="_top">Virgo bugs in Eclipse Bugzilla</a>. The bugs are organised by component as well as by release. You can also use bugzilla to enter a new issue if you cannot find an existing issue that describes the problem you are running into, but it's probably worth asking on the <a class="ulink" href="http://www.eclipse.org/forums/index.php?t=thread&frm_id=159" target="_top">Virgo community forum</a> first.</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-firewall-timeout"></a>B.1 Timeout During Startup Due to Firewall Settings</h2></div></div></div><p>
- The VWS will fail to start correctly if it is prevented from
- connecting to needed ports by the firewall. Typically this manifests
- as error <code class="literal">SPPM0003E</code> . Configuring the firewall to
- allow the VWS process to bind to the necessary ports will prevent
- this error from occurring.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="apa.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="apbs02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix A. Event log codes </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> B.2 OutOfMemoryError: PermGen space running on Sun VM</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apbs02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apbs02.html
deleted file mode 100644
index 17f0dd7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apbs02.html
+++ /dev/null
@@ -1,21 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>B.2 OutOfMemoryError: PermGen space running on Sun VM</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="apb.html" title="Appendix B. Known Issues"><link rel="prev" href="apb.html" title="Appendix B. Known Issues"><link rel="next" href="apbs03.html" title="B.3 Alternate serviceability and work Directories"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">B.2 OutOfMemoryError: PermGen space running on Sun VM</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apb.html">Prev</a> </td><th width="60%" align="center">Appendix B. Known Issues</th><td width="20%" align="right"> <a accesskey="n" href="apbs03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-perm-gen-sun-vm"></a>B.2 OutOfMemoryError: PermGen space running on Sun VM</h2></div></div></div><p>
- As a result of Sun Java bug
- <a class="ulink" href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4957990" target="_top">4957990</a>,
- the Virgo Web Server may consume more PermGen space than expected when running with the
- server HotSpot compiler. This problem may be resolved by configuring the
- <code class="literal">JAVA_OPTS</code> environment variable to specify an increased
- <code class="literal">MaxPermSize</code>, for example <code class="literal">-XX:MaxPermSize=128M</code>.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="apb.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="apb.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="apbs03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Appendix B. Known Issues </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> B.3 Alternate serviceability and work Directories</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apbs03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apbs03.html
deleted file mode 100644
index 462e4de..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apbs03.html
+++ /dev/null
@@ -1,18 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>B.3 Alternate serviceability and work Directories</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="apb.html" title="Appendix B. Known Issues"><link rel="prev" href="apbs02.html" title="B.2 OutOfMemoryError: PermGen space running on Sun VM"><link rel="next" href="apbs04.html" title="B.4 Web Application Context Configuration File Copying"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">B.3 Alternate serviceability and work Directories</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apbs02.html">Prev</a> </td><th width="60%" align="center">Appendix B. Known Issues</th><td width="20%" align="right"> <a accesskey="n" href="apbs04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="alternate-serviceability-work"></a>B.3 Alternate <code class="literal">serviceability</code> and <code class="literal">work</code> Directories</h2></div></div></div><p>
- Although an alternate <code class="literal">config</code> directory may be specified on startup, there is no way to specify
- alternate <code class="literal">serviceability</code> or <code class="literal">work</code> directories. This is covered by
- <a class="ulink" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=307737" target="_top">bug 307737</a> which also describes a workaround.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="apbs02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="apb.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="apbs04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">B.2 OutOfMemoryError: PermGen space running on Sun VM </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> B.4 Web Application Context Configuration File Copying</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apbs04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apbs04.html
deleted file mode 100644
index 3852e7f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apbs04.html
+++ /dev/null
@@ -1,22 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>B.4 Web Application Context Configuration File Copying</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="apb.html" title="Appendix B. Known Issues"><link rel="prev" href="apbs03.html" title="B.3 Alternate serviceability and work Directories"><link rel="next" href="apc.html" title="Appendix C. Further Reading"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">B.4 Web Application Context Configuration File Copying</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apbs03.html">Prev</a> </td><th width="60%" align="center">Appendix B. Known Issues</th><td width="20%" align="right"> <a accesskey="n" href="apc.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="web-application-context-configuration"></a>B.4 Web Application Context Configuration File Copying</h2></div></div></div><p>If a web application, packaged as an archive rather than a directory, includes context configuration in <code class="literal">META-INF/context.xml</code>,
- Virgo copies this file to <code class="literal">$SERVER_HOME/config/[enginename]/[hostname]/[contextpath].xml</code>.
- If the application is redeployed, the copy of the context configuration overrides any updated context configuration included in
- <code class="literal">META-INF/context.xml</code>. To use the updated context configuration, the user must delete the copy of the file before redeploying.
- This is covered by
- <a class="ulink" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=328683" target="_top">bug 328683</a>.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="apbs03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="apb.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="apc.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">B.3 Alternate serviceability and work Directories </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Appendix C.
- Further Reading
- </td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apc.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apc.html
deleted file mode 100644
index 5952871..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/apc.html
+++ /dev/null
@@ -1,34 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Appendix C. Further Reading</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="apbs04.html" title="B.4 Web Application Context Configuration File Copying"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Appendix C.
- Further Reading
- </th></tr><tr><td width="20%" align="left"><a accesskey="p" href="apbs04.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> </td></tr></table><hr></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="furtherreading"></a>Appendix C.
- Further Reading
- </h2></div></div></div><p>
- <a class="ulink" href="../../virgo-programmer-guide/html/index.html" target="_top">
- Virgo Web Server Programmer Guide
- </a>
- </p><p>
- <a class="ulink" href="http://static.springframework.org/spring/docs/2.5.x/reference/index.html" target="_top">
- Spring Framework Reference Guide
- </a>
- </p><p>
- <a class="ulink" href="http://static.springframework.org/osgi/docs/current/reference/html/" target="_top">
- Spring Dynamic Modules Reference Guide
- </a>
- </p><p>
- <a class="ulink" href="http://logback.qos.ch/manual" target="_top">
- The Logback Manual
- </a>
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="apbs04.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> </td></tr><tr><td width="40%" align="left" valign="top">B.4 Web Application Context Configuration File Copying </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> </td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch01.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch01.html
deleted file mode 100644
index 881df04..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch01.html
+++ /dev/null
@@ -1,20 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>1. Introduction</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="index.html" title="Virgo User Guide"><link rel="next" href="ch02.html" title="2. Installing Virgo Web Server"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">1. Introduction</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="introduction"></a>1. Introduction</h2></div></div></div><p>
- This User Guide covers both Virgo Web Server and Virgo Kernel, although it emphasises the Virgo Web Server since that is likely
- to apply to more users.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e94"></a>1.1 A Note for Virgo Kernel Users</h2></div></div></div><p>
- Virgo Kernel users can be reassured that the majority of the information
- in this Guide is directly applicable to the Virgo Kernel and they can simply ignore the web-related sections.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="index.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">Virgo User Guide </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2. Installing Virgo Web Server</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch02.html
deleted file mode 100644
index b965efd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch02.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2. Installing Virgo Web Server</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch01.html" title="1. Introduction"><link rel="next" href="ch02s02.html" title="2.2 Installing from the ZIP Download"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2. Installing Virgo Web Server</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch01.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch02s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="installation"></a>2. Installing Virgo Web Server</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation-prereqs"></a>2.1 Prerequisites</h2></div></div></div><p>
- The Virgo Web Server, or VWS for short, requires Java SE 6 or later to be installed. Java is available from
- <a class="ulink" href="http://www.java.com/" target="_top">http://www.java.com/</a> and elsewhere.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch01.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch02s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">1. Introduction </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2.2 Installing from the ZIP Download</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch02s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch02s02.html
deleted file mode 100644
index cc57e1a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch02s02.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2.2 Installing from the ZIP Download</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch02.html" title="2. Installing Virgo Web Server"><link rel="prev" href="ch02.html" title="2. Installing Virgo Web Server"><link rel="next" href="ch02s03.html" title="2.3 Post-installation steps"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.2 Installing from the ZIP Download</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02.html">Prev</a> </td><th width="60%" align="center">2. Installing Virgo Web Server</th><td width="20%" align="right"> <a accesskey="n" href="ch02s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation-zip"></a>2.2 Installing from the ZIP Download</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e113"></a>Downloading the ZIP file</h3></div></div></div><p>
- Virgo Web Server is distributed as a ZIP file. This can be downloaded from
- <a class="ulink" href="http://www.eclipse.org/virgo/download/" target="_top">here</a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installation-zip-installing"></a>Installing</h3></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-zip-installing-linux"></a>Linux</h4></div></div></div><p>
- To install the Virgo Web Server on Linux, unzip the distribution package to the desired installation directory.
- For example, to install into <code class="literal">/opt</code>:
- </p><pre class="screen">prompt$ unzip virgo-web-server-2.1.1.RELEASE.zip -d /opt</pre><p>
- This creates a directory called <code class="literal">virgo-web-server-2.1.1.RELEASE</code> under <code class="literal">/opt</code>.
- </p><p>
- Virgo Web Server requires write access to the installation directory, in this case <code class="literal">/opt/virgo-web-server-2.1.1.RELEASE</code>.
- Typically this means it must be run as the user that installed it, or the installation directory’s ownership must be changed.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-zip-installing-win"></a>Microsoft Windows</h4></div></div></div><p>
- To install the Virgo Web Server on Windows, unzip the distribution package to the desired installation directory.
- You should use a zip application such as 7zip, not the built-in folder decompression. Note that both Windows and
- Java have some issues with long file names and file paths, so we recommend installing to the root directory of
- your chosen drive.
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch02s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2. Installing Virgo Web Server </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 2.3 Post-installation steps</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch02s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch02s03.html
deleted file mode 100644
index 57ee13a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch02s03.html
+++ /dev/null
@@ -1,73 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>2.3 Post-installation steps</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch02.html" title="2. Installing Virgo Web Server"><link rel="prev" href="ch02s02.html" title="2.2 Installing from the ZIP Download"><link rel="next" href="ch03.html" title="3. Installing Virgo Kernel"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">2.3 Post-installation steps</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s02.html">Prev</a> </td><th width="60%" align="center">2. Installing Virgo Web Server</th><td width="20%" align="right"> <a accesskey="n" href="ch03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation-post"></a>2.3 Post-installation steps</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installation-post-env"></a>Set environment variable variables</h3></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-post-env-java"></a>JAVA_HOME</h4></div></div></div><p>
- The Virgo Web Server uses the <code class="literal">JAVA_HOME</code> environment variable to locate the <code class="literal">java</code>
- executable. Configure this environment variable to point to the home directory of the Java 6 installation on your computer.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-post-env-server"></a>SERVER_HOME</h4></div></div></div><p>
- As a convenience it is recommended that you create an environment variable that points
- to the Virgo Web Server installation directory. Note that the Virgo Web Server does not require that
- such an environment variable has been set. This variable may have any name of your
- choosing. The Virgo Web Server’s documentation assumes that the variable is named
- <code class="literal">SERVER_HOME</code>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="installation-post-env-server-linux"></a>Linux</h5></div></div></div><p>
- Edit the <code class="literal">.profile</code> file in your home directory to
- add the <code class="literal">SERVER_HOME</code> and <code class="literal">JAVA_HOME</code> environment variables. For
- example, if you installed into <code class="literal">/opt</code>:
- </p><pre class="screen">export SERVER_HOME=/opt/virgo-web-server-2.1.1.RELEASE/
-export JAVA_HOME=/user/java/jdk1.6.0_17
-export PATH=$JAVA_HOME/bin:$PATH</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="installation-post-env-server-win"></a>Microsoft Windows</h5></div></div></div><p>
- This section shows how to add <code class="literal">SERVER_HOME</code> as a system variable on Windows. Follow the same procedure to add or update the <code class="literal">JAVA_HOME</code> environment variable.
- </p><p>
- From the Start menu, open the Control Panel and double-click on ‘System’.
- </p><p>
- <img src="images/system-props.png">
- </p><p>
- Click the ‘Advanced’ tab and select ‘Environment Variables’. Next,
- click the ‘New’ button in the ‘System Variables’ section.
- </p><p>
- <img src="images/env-variables.png">
- </p><p>
- This will display the ‘New System Variable’ window. Enter
- <code class="literal">SERVER_HOME</code> as the ‘Variable name’ and
- the installation directory as the ‘Variable value’. Click OK.
- </p><p>
- <img src="images/system-variable.png">
- </p></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installation-post-env-server-win-troubleshooting"></a>Microsoft Windows - Troubleshooting</h3></div></div></div><p>
- When starting the Virgo Web Server on some variants of Windows you might encounter a problem with file permissions.
- The error looks like this.
- </p><pre class="screen">WARNING: jmxPermissions.vbs did not update the permissions of C:\virgo\config\org.eclipse.virgo.kernel.jmxremote.access.properties. Check the file has the correct permissions.</pre><p>
- If the VWS starts at this point you can skip this section and carry on. However to secure your
- installation you have to set correct permissions. To do so, go to the ‘config’ directory of the installation
- in Windows Explorer.
- </p><p>
- <img src="images/install-windows-1-FileListing.png">
- </p><p>
- Right click on the ‘org.eclipse.virgo.kernel.jmxremote.access.properties’ file and view its properties,
- then select the ‘Security’ tab. Remove all groups and users from the list and select ‘Apply’.
- </p><p>
- <img src="images/install-windows-2-SecuritySettings.png">
- </p><p>
- Within the security page select the ‘Advanced’ options. On the ‘Owner’ tab, choose the owner
- that you are trying to run the VWS as and select ‘Apply’.
- </p><p>
- <img src="images/install-windows-3-AdvanceSettingsOwner.png">
- </p><p>
- Once this is done select ‘OK’ to return to the ‘Security’ tab
- and now add the owner to the list of groups and users that have permission to access the file.
- </p><p>
- <img src="images/install-windows-4-AllSetReadAndExecute.png">
- </p><p>
- Once all these steps are complete you can proceed to start the VWS.
- </p><pre class="screen">C:\dev\virgo-web-server-2.1.0.RELEASE>bin\startup.bat
-[2009-12-08 13:09:09.545] startup-tracker <KE0001I> Kernel starting.</pre></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch02.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2.2 Installing from the ZIP Download </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3. Installing Virgo Kernel</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch03.html
deleted file mode 100644
index fd1aab1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch03.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3. Installing Virgo Kernel</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch02s03.html" title="2.3 Post-installation steps"><link rel="next" href="ch03s02.html" title="3.2 Installing from the ZIP Download"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3. Installing Virgo Kernel</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch02s03.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch03s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="kernel-installation"></a>3. Installing Virgo Kernel</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-installation-prereqs"></a>3.1 Prerequisites</h2></div></div></div><p>
- The Virgo Kernel, or VK for short, requires Java SE 6 or later to be installed. Java is available from
- <a class="ulink" href="http://www.java.com/" target="_top">http://www.java.com/</a> and elsewhere.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch02s03.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch03s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">2.3 Post-installation steps </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3.2 Installing from the ZIP Download</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch03s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch03s02.html
deleted file mode 100644
index 32e2286..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch03s02.html
+++ /dev/null
@@ -1,30 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3.2 Installing from the ZIP Download</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch03.html" title="3. Installing Virgo Kernel"><link rel="prev" href="ch03.html" title="3. Installing Virgo Kernel"><link rel="next" href="ch03s03.html" title="3.3 Post-installation steps"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.2 Installing from the ZIP Download</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03.html">Prev</a> </td><th width="60%" align="center">3. Installing Virgo Kernel</th><td width="20%" align="right"> <a accesskey="n" href="ch03s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-installation-zip"></a>3.2 Installing from the ZIP Download</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e277"></a>Downloading the ZIP file</h3></div></div></div><p>
- Virgo Kernel is distributed as a ZIP file. This can be downloaded from
- <a class="ulink" href="http://www.eclipse.org/virgo/download/" target="_top">here</a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="kernel-installation-zip-installing"></a>Installing</h3></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="kernel-installation-zip-installing-linux"></a>Linux</h4></div></div></div><p>
- To install the Virgo Kernel on Linux, unzip the distribution package to the desired installation directory.
- For example, to install into <code class="literal">/opt</code>:
- </p><pre class="screen">prompt$ unzip virgo-kernel-2.1.1.RELEASE.zip -d /opt</pre><p>
- This creates a directory called <code class="literal">virgo-kernel-2.1.1.RELEASE</code> under <code class="literal">/opt</code>.
- </p><p>
- Virgo Kernel requires write access to the installation directory, in this case <code class="literal">/opt/virgo-kernel-2.1.1.RELEASE</code>.
- Typically this means it must be run as the user that installed it, or the installation directory’s ownership must be changed.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="kernel-installation-zip-installing-win"></a>Microsoft Windows</h4></div></div></div><p>
- To install the Virgo Kernel on Windows, unzip the distribution package to the desired installation directory.
- You should use a zip application such as 7zip, not the built-in folder decompression. Note that both Windows and
- Java have some issues with long file names and file paths, so we recommend installing to the root directory of
- your chosen drive.
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch03s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3. Installing Virgo Kernel </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 3.3 Post-installation steps</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch03s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch03s03.html
deleted file mode 100644
index de46584..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch03s03.html
+++ /dev/null
@@ -1,16 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>3.3 Post-installation steps</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch03.html" title="3. Installing Virgo Kernel"><link rel="prev" href="ch03s02.html" title="3.2 Installing from the ZIP Download"><link rel="next" href="ch04.html" title="4. Starting and Stopping Virgo Web Server"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">3.3 Post-installation steps</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s02.html">Prev</a> </td><th width="60%" align="center">3. Installing Virgo Kernel</th><td width="20%" align="right"> <a accesskey="n" href="ch04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-installation-post"></a>3.3 Post-installation steps</h2></div></div></div>
- Follow the same <a class="link" href="ch02s03.html" title="2.3 Post-installation steps">Post-installation steps</a> as for Virgo Web Server.
- </div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch03.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3.2 Installing from the ZIP Download </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4. Starting and Stopping Virgo Web Server</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04.html
deleted file mode 100644
index f74ddae..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4. Starting and Stopping Virgo Web Server</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch03s03.html" title="3.3 Post-installation steps"><link rel="next" href="ch04s02.html" title="4.2 Starting in Clean Mode"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4. Starting and Stopping Virgo Web Server</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch03s03.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch04s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="starting-stopping"></a>4. Starting and Stopping Virgo Web Server</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e328"></a>4.1 Starting Virgo Web Server</h2></div></div></div><p>
- To start Virgo Web Server run the <code class="literal">startup.sh</code> (Linux) or <code class="literal">startup.bat</code> (Windows) script.
- For both platforms, the script is located in the <code class="literal">SERVER_HOME/bin</code> directory.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e342"></a>Linux</h3></div></div></div><p>
- To start Virgo Web Server, open a terminal window and run <code class="literal">startup.sh</code>:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh</pre><p>
- Once Virgo Web Server has started, the console will display a log message
- similar to the one shown below, along with other status messages:
- </p><pre class="screen">[2009-11-30 12:12:12.111] Thread-2 <UR0001I> User region ready.</pre><p>The preceding message indicates that you can start using VWS.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e358"></a>Microsoft Windows</h3></div></div></div><p>
- To start Virgo Web Server, open a command-window and run <code class="literal">startup.bat</code>:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat</pre><p>
- Once Virgo Web Server has started, the console will display a log message
- similar to the one shown below, along with other status messages:
- </p><pre class="screen">[2009-11-30 12:12:12.111] Thread-2 <UR0001I> User region ready.</pre><p>
- </p><p>The preceding message indicates that you can start using VWS.</p><p>
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch03s03.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch04s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">3.3 Post-installation steps </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.2 Starting in Clean Mode</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s02.html
deleted file mode 100644
index 99ef314..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s02.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.2 Starting in Clean Mode</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch04.html" title="4. Starting and Stopping Virgo Web Server"><link rel="prev" href="ch04.html" title="4. Starting and Stopping Virgo Web Server"><link rel="next" href="ch04s03.html" title="4.3 Starting in Debug Mode"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.2 Starting in Clean Mode</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04.html">Prev</a> </td><th width="60%" align="center">4. Starting and Stopping Virgo Web Server</th><td width="20%" align="right"> <a accesskey="n" href="ch04s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e376"></a>4.2 Starting in Clean Mode</h2></div></div></div><p>
- When you start Virgo Web Server in clean mode, the startup script removes the <code class="literal">SERVER_HOME/work</code> directory (and hence all
- running applications) as well as all trace, log and dump files. It leaves the
- <code class="literal">SERVER_HOME/repository</code> and <code class="literal">SERVER_HOME/pickup</code> directories untouched,
- which means that any applications previously hot deployed will be automatically reinstalled.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e390"></a>Linux</h3></div></div></div><p>
- To start Virgo Web Server in clean mode, open a terminal window and run <code class="literal">startup.sh -clean</code>:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -clean </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e400"></a>Microsoft Windows</h3></div></div></div><p>
- To start Virgo Web Server in clean mode, open a command window and run <code class="literal">startup.bat -clean</code>:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -clean</pre></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4. Starting and Stopping Virgo Web Server </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.3 Starting in Debug Mode</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s03.html
deleted file mode 100644
index db3af47..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s03.html
+++ /dev/null
@@ -1,56 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.3 Starting in Debug Mode</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch04.html" title="4. Starting and Stopping Virgo Web Server"><link rel="prev" href="ch04s02.html" title="4.2 Starting in Clean Mode"><link rel="next" href="ch04s04.html" title="4.4 Starting with JMX Access Modifications"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.3 Starting in Debug Mode</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s02.html">Prev</a> </td><th width="60%" align="center">4. Starting and Stopping Virgo Web Server</th><td width="20%" align="right"> <a accesskey="n" href="ch04s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e410"></a>4.3 Starting in Debug Mode</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e413"></a>Linux</h3></div></div></div><p>
- To start Virgo Web Server in debug mode, run
- <code class="literal">startup.sh</code> passing in the
- <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -debug</pre><p>
- This will start the debug agent listening on port
- <code class="literal">8000</code> which is the default remote debug port used
- by Eclipse. To start in debug mode with a specific port number, pass
- this in as the value for the <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -debug 8001</pre><p>
- This will start the debug agent listening on port
- <code class="literal">8001</code>. To start in debug mode and suspend the VM
- until a debugger attaches, pass in the <code class="literal">-suspend</code>
- argument along with the <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -debug -suspend</pre><p>
- This starts the debug agent, but prevents Virgo Web Server from actually
- starting until a debugger attaches to the agent. This can be useful
- when trying to diagnose problems that occur during startup.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e451"></a>Microsoft Windows</h3></div></div></div><p>
- To start Virgo Web Server in debug mode, run
- <code class="literal">startup.bat</code> passing in the
- <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -debug</pre><p>
- This will start the debug agent listening on port
- <code class="literal">8000</code> which is the default remote debug port used
- by Eclipse. To start in debug mode with a specific port number, pass
- this in as the value for the <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -debug 8001</pre><p>
- This will start the debug agent listening on port
- <code class="literal">8001</code>. To start in debug mode and suspend the VM
- until a debugger attaches, pass in the <code class="literal">-suspend</code>
- argument along with the <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -debug -suspend</pre><p>
- This starts the debug agent, but prevents Virgo Web Server from actually
- starting until a debugger attaches to the agent. This can be useful
- when trying to diagnose problems that occur during startup.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.2 Starting in Clean Mode </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.4 Starting with JMX Access Modifications</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s04.html
deleted file mode 100644
index d350baa..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s04.html
+++ /dev/null
@@ -1,112 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.4 Starting with JMX Access Modifications</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch04.html" title="4. Starting and Stopping Virgo Web Server"><link rel="prev" href="ch04s03.html" title="4.3 Starting in Debug Mode"><link rel="next" href="ch04s05.html" title="4.5 Starting with a Custom Configuration Directory"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.4 Starting with JMX Access Modifications</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s03.html">Prev</a> </td><th width="60%" align="center">4. Starting and Stopping Virgo Web Server</th><td width="20%" align="right"> <a accesskey="n" href="ch04s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e489"></a>4.4 Starting with JMX Access Modifications</h2></div></div></div>
- The Virgo Web Server always starts with JMX access enabled, allowing you to use a management tool such as JConsole
- to attach to the Web Server instance.
- By default both local access and remote access over SSL with username and password
- authentication are provided. The default port for secure JMX access is <code class="literal">9875</code>
- and the default username and password are <code class="literal">admin</code> and <code class="literal">springsource</code>.
- <div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e502"></a>Linux</h3></div></div></div><p>
- To start Virgo Web Server with default JMX access enabled, run <code class="literal">startup.sh</code> passing
- in no arguments:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh </pre><p>
- To start JConsole, run the <code class="literal">jconsole.sh</code> script, located in the <code class="literal">bin</code> directory, as shown:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/jconsole.sh </pre><p>
- The following image shows how to specify a local connection using JConsole.
- </p><p>
- <img src="images/jmx-local-attach.png">
- </p><p>
- The following image shows how to specify a remote connection in JConsole that uses SSL with the default
- username/password (<code class="literal">admin/springsource</code> and default secure port of <code class="literal">9875</code>).
- </p><p>
- <img src="images/jmx-remote-attach-default.png">
- </p><p>
- To start with the JMX remote access on a specific port number other than the default <code class="literal">9875</code>,
- pass this port number in as the value
- of the <code class="literal">-jmxport</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -jmxport 9090</pre><p>
- This will start the Virgo Web Server with JMX enabled for remote connections on port <code class="literal">9090</code>.
- </p><p>
- <img src="images/jmx-remote-attach-jmxport.png">
- </p><p>To start the JMX remote access with a custom username and password, update the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.users.properties</code> file. First specify the custom username by changing the value of the <code class="literal">role.admin</code> property. Then set the password of this new user by adding a new property called <code class="literal">user.<span class="emphasis"><em>username</em></span></code>, where <code class="literal"><span class="emphasis"><em>username</em></span></code> refers to the actual name of the user. Finally, restart VWS for the changes to take effect.</p><p>For example, if you want change the JMX remote access username to <code class="literal">zebedee</code> with password <code class="literal">florence</code>, change the file as follows:
- </p><pre class="programlisting">##################
-# User definitions
-##################
-user.zebedee=florence
-
-
-##################
-# Role definitions
-##################
-role.admin=zebedee</pre><p>Specify the custom username in JConsole as shown. </p><p>
- <img src="images/jmx-remote-attach-jmxusers.png">
- </p><p>
- To start the JMX remote access using a custom SSL certificate, edit the file located at
- <code class="literal">$SERVER_HOME/config/keystore</code>. If you wish to use a different keystore,
- pass this filename in as the value for the <code class="literal">-keystore</code> argument and the keystore
- password in as the value for the <code class="literal">-keystorePassword</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -keystore customKeystore -keystorePassword customKeystorePassword</pre><p>
- This will start the Virgo Web Server with JMX enabled for remote connections using an SSL certificate from
- <code class="literal">customKeystore</code> with a password of <code class="literal">customKeystorePassword</code>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e613"></a>Microsoft Windows</h3></div></div></div><p>
- To start Virgo Web Server with default JMX access enabled, run <code class="literal">startup.bat</code> passing
- in no arguments:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat</pre><p>
- To start JConsole, run the <code class="literal">jconsole.bat</code> script, located in the <code class="literal">bin</code> directory, as shown:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\jconsole.bat </pre><p>
- The following image shows how to specify a local connection using JConsole.
- </p><p>
- <img src="images/jmx-local-attach.png">
- </p><p>
- The following image shows how to specify a remote connection in JConsole that uses SSL with the default
- username/password (<code class="literal">admin/springsource</code> and default secure port of <code class="literal">9875</code>).
- </p><p>
- <img src="images/jmx-remote-attach-default.png">
- </p><p>
- To start with the JMX remote access on a specific port number other than the default <code class="literal">9875</code>,
- pass this port number in as the value of the <code class="literal">-jmxport</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -jmxport 9090</pre><p>
- This will start the Virgo Web Server with JMX enabled for remote connections on port
- <code class="literal">9090</code>.
- </p><p>
- <img src="images/jmx-remote-attach-jmxport.png">
- </p><p>To start the JMX remote access with a custom username and password, update the <code class="literal">%SERVER_HOME%\config\org.eclipse.virgo.kernel.users.properties</code> file. First specify the custom username by changing the value of the <code class="literal">role.admin</code> property. Then set the password of this new user by adding a new property called <code class="literal">user.<span class="emphasis"><em>username</em></span></code>, where <code class="literal"><span class="emphasis"><em>username</em></span></code> refers to the actual name of the user. Finally, restart VWS for the changes to take effect.</p><p>For example, if you want change the JMX remote access username to <code class="literal">zebedee</code> with password <code class="literal">florence</code>, change the file as follows:
- </p><pre class="programlisting">##################
-# User definitions
-##################
-user.zebedee=florence
-
-
-##################
-# Role definitions
-##################
-role.admin=zebedee</pre><p>Specify the custom username in JConsole as shown. </p><p>
- <img src="images/jmx-remote-attach-jmxusers.png">
- </p><p>
- To start the JMX remote access using a custom SSL certificate, edit the file located at
- <code class="literal">%SERVER_HOME%\config\keystore</code>. If you wish to use a different
- keystore, pass this filename in as the value for the <code class="literal">-keystore</code> argument and the
- keystore password in as the value for the <code class="literal">-keystorePassword</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -keystore customKeystore -keystorePassword customKeystorePassword</pre><p>
- This will start the Virgo Web Server with JMX enabled for remote attach using an SSL certificate from
- <code class="literal">customKeystore</code> with a password of <code class="literal">customKeystorePassword</code>.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.3 Starting in Debug Mode </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.5 Starting with a Custom Configuration Directory</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s05.html
deleted file mode 100644
index a2f9587..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s05.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.5 Starting with a Custom Configuration Directory</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch04.html" title="4. Starting and Stopping Virgo Web Server"><link rel="prev" href="ch04s04.html" title="4.4 Starting with JMX Access Modifications"><link rel="next" href="ch04s06.html" title="4.6 Stopping Virgo Web Server"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.5 Starting with a Custom Configuration Directory</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s04.html">Prev</a> </td><th width="60%" align="center">4. Starting and Stopping Virgo Web Server</th><td width="20%" align="right"> <a accesskey="n" href="ch04s06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e724"></a>4.5 Starting with a Custom Configuration Directory</h2></div></div></div><p>
- Use the <code class="literal">-configDir</code> option to specify an alternate <code class="literal">config</code> directory, different from the
- default <code class="literal">SERVER_HOME/config</code> directory. This option allows you to use the same Virgo Web Server
- installation to run multiple instances of Web Server . Simply create a config directory for each
- instance, specify unique port numbers, logging and tracing directories, and so on. and then specify that directory
- when starting Virgo Web Server.
- </p><p>
- If you specify a relative path for the <code class="literal">-configDir</code> parameter,
- the startup script interprets the path as relative to the root of the Virgo Web Server installation,
- and not relative to the directory from which you execute the <code class="literal">startup</code> script.
- </p><p>
- See <a class="link" href="apbs03.html" title="B.3 Alternate serviceability and work Directories">Alternate <code class="literal">serviceability</code> and <code class="literal">work</code>
- Directories</a> for a known issue related to specifying an alternate <code class="literal">config</code> directory.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e760"></a>Linux</h3></div></div></div>
- To start Virgo Web Server using a config directory of <code class="literal">/config/node1</code>:
- <pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -configDir /config/node1</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e769"></a>Windows</h3></div></div></div>
- To start Virgo Web Server using a config directory of <code class="literal">c:\config\node1</code>:
- <pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -configDir c:\config\node1</pre></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch04s06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.4 Starting with JMX Access Modifications </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 4.6 Stopping Virgo Web Server</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s06.html
deleted file mode 100644
index 63ed57a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch04s06.html
+++ /dev/null
@@ -1,39 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>4.6 Stopping Virgo Web Server</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch04.html" title="4. Starting and Stopping Virgo Web Server"><link rel="prev" href="ch04s05.html" title="4.5 Starting with a Custom Configuration Directory"><link rel="next" href="ch05.html" title="5. Overview of the Virgo Kernel and User Region"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">4.6 Stopping Virgo Web Server</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s05.html">Prev</a> </td><th width="60%" align="center">4. Starting and Stopping Virgo Web Server</th><td width="20%" align="right"> <a accesskey="n" href="ch05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e778"></a>4.6 Stopping Virgo Web Server</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e781"></a>Linux</h3></div></div></div><p>
- To stop a running instance of Virgo Web Server, start a new terminal window and run the <code class="literal">shutdown.sh</code> script:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/shutdown.sh</pre><p>
- To stop a running instance of Virgo Web Server immediately, bypassing normal shutdown
- processing, run <code class="literal">shutdown.sh</code> with the <code class="literal">-immediate</code> option:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/shutdown.sh -immediate</pre><p>
- If, when you started the Web Server instance, you used the <code class="literal">-jmxport</code> option to specify a non-default JMX port number,
- then you must pass this port number to the <code class="literal">-jmxport</code> of the <code class="literal">shutdown.sh</code> script
- to gracefully shut it down.
- For example, if you specified <code class="literal">9090</code> as the JMX port, use the following to shut down the Web Server instance:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/shutdown.sh -jmxport 9090</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e817"></a>Microsoft Windows</h3></div></div></div><p>
- To stop a running instance of Virgo Web Server, start a new console window and run the <code class="literal">shutdown.bat</code> script:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\shutdown.bat</pre><p>
- To stop a running instance of Virgo Web Server immediately, bypassing normal shutdown
- processing, run <code class="literal">shutdown.bat</code> with the <code class="literal">-immediate</code> option:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\shutdown.bat -immediate</pre><p>
- If, when you started the Web Server instance, you used the <code class="literal">-jmxport</code> option to specify a non-default JMX port number,
- then you must pass this port number to the <code class="literal">-jmxport</code> of the <code class="literal">shutdown.bat</code> script to gracefully shut it down.
- For example, if you specified <code class="literal">9090</code> as the JMX port, use the following to shut down the Web Server instance:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\shutdown.bat -jmxport 9090</pre></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch04.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.5 Starting with a Custom Configuration Directory </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 5. Overview of the Virgo Kernel and User Region</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch05.html
deleted file mode 100644
index a9b0b81..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch05.html
+++ /dev/null
@@ -1,35 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>5. Overview of the Virgo Kernel and User Region</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch04s06.html" title="4.6 Stopping Virgo Web Server"><link rel="next" href="ch05s02.html" title="5.2 The User Region"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5. Overview of the Virgo Kernel and User Region</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch04s06.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch05s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="kernel-regions-overview"></a>5. Overview of the Virgo Kernel and User Region</h2></div></div></div><p>Conceptually, VWS can be divided into two separate subsystems, one of which actually encompases the other:</p><div class="itemizedlist"><ul type="disc"><li>The <span class="emphasis"><em>kernel</em></span>, which is the heart of VWS. It makes up most of the VWS, except for the part that supports Web applications. In other words, the kernel provides full OSGi modular support for your applications, as long as they are not Web-based.
- <p>See <a class="link" href="ch05.html#kernel-overview" title="5.1 The Virgo Kernel">The Virgo Kernel</a> for additional information.</p></li><li>The <span class="emphasis"><em>user region</em></span> is the subsystem that manages user applications. It deliberately isolates the kernel from both your applications and those of the VWS itself, such as the Admin Console, making it much easier for you to administer VWS.
- <p>See <a class="link" href="ch05s02.html" title="5.2 The User Region">The User Region</a> for additional information.</p></li></ul></div><p>When you download and install Virgo Web Server you get both the kernel and web server support (configured in the user region). You can also <a class="ulink" href="http://www.eclipse.org/virgo/download/" target="_top">download and use the kernel</a> on its own if you do not plan on deploying Web applications. </p><p>The following graphic shows how the kernel and user region make up VWS:</p><table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0" width="885"><tr style="height: 805px"><td><img src="images/kernel-user-region.png" width="885"></td></tr></table><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-overview"></a>5.1 The Virgo Kernel</h2></div></div></div><p>
- The Virgo Kernel encapsulates almost all of VWS except for the deployment of Web applications. In sum, the kernel provides the following VWS features:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- Deployment of non-Web artifacts, such as OSGi bundles, PARs, plans,
- and configuration artifacts.
- </p></li><li><p>
- Local and hosted repositories
- </p></li><li><p>
- Scoping
- </p></li><li><p>
- Hot deployment
- </p></li><li><p>
- User region
- </p></li><li><p>
- Auto-provisioning
- </p></li><li><p>
- System and application tracing and dump support
- </p></li><li><p>
- Spring beans and Spring DM support
- </p></li></ul></div><p>See <a class="link" href="ch11.html" title="11. Configuration">Configuring VWS</a> for details about configuring the kernel to better suit your environment. </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch04s06.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch05s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">4.6 Stopping Virgo Web Server </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 5.2 The User Region</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch05s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch05s02.html
deleted file mode 100644
index 9da9e4c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch05s02.html
+++ /dev/null
@@ -1,33 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>5.2 The User Region</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch05.html" title="5. Overview of the Virgo Kernel and User Region"><link rel="prev" href="ch05.html" title="5. Overview of the Virgo Kernel and User Region"><link rel="next" href="ch06.html" title="6. Equinox Console Extension (vsh)"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">5.2 The User Region</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05.html">Prev</a> </td><th width="60%" align="center">5. Overview of the Virgo Kernel and User Region</th><td width="20%" align="right"> <a accesskey="n" href="ch06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="user-region-overview"></a>5.2 The User Region</h2></div></div></div><p>
- The user region isolates the kernel from deployed applications,
- including both your own user applications and the user-oriented
- VWS applications such as the Admin Console. This means
- that the kernel is mostly invisible to applications and to application
- management. This is because most of the kernel bundles are not
- installed in the user region (apart from a few needed for region
- management). The necessary function to support the kernel runs in the
- OSGi framework, but the user region applications cannot see it, except
- for the services that are normally offered.
- </p><p>
- This way of implementing VWS greatly simplifies
- the administration tasks you perform. In particular, when you use the
- Admin Console to manage Web Server, you do not see
- the many bundles that are internal to the kernel. The only exceptions
- are the kernel bundles that VWS uses for region
- management, which are required to be installed in the user region.
- </p><p>This isolation has many other benefits. For example, it is no longer necessary for the kernel and user applications to use the same version of the Spring Framework. In fact the kernel installs only those parts of the Spring Framework that it needs. If you update the kernel, it is far less likely that you will also need to upgrade or adjust the applications to accomodate a new version of the kernel. The kernel implementation is therefore much more stable and resilient and applications are much more likely to survive kernel upgrades between releases. </p><p>When you install VWS, the kernel creates a single user region.
- The kernel and the user region are configured independently of each other; see <a class="link" href="ch11.html" title="11. Configuration">Configuring VWS</a> for details.
- </p><p>Finally, the isolation provided by the user region together with scoped applications and plans solve common dependency problems that occur when using OSGi. </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch05.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5. Overview of the Virgo Kernel and User Region </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6. Equinox Console Extension (vsh)</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch06.html
deleted file mode 100644
index 95ced3b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch06.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6. Equinox Console Extension (vsh)</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch05s02.html" title="5.2 The User Region"><link rel="next" href="ch06s02.html" title="6.2 Equinox Console Extension Subcommand Reference"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6. Equinox Console Extension (vsh)</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch05s02.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch06s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="admin-shell"></a>6. Equinox Console Extension (<code class="literal">vsh</code>)</h2></div></div></div><p>Virgo provides an extension to the Equinox console in the form of the <code class="literal">vsh</code> command that allows you to examine artifacts
- currently installed to a particular Web Server instance, manage the lifecycle of the installed artifacts, install new artifacts, and shut down
- the server. You can install, examine, and manage the lifecycle of the following artifacts:
- </p><div class="itemizedlist"><ul type="disc"><li><p>Bundles</p></li><li><p>Configuration Artifacts</p></li><li><p>PARs</p></li><li><p>Plans</p></li></ul></div><p>
- and can examine:
- </p><div class="itemizedlist"><ul type="disc"><li><p>Exported packages</p></li><li><p>Services in the OSGi service registry</p></li></ul></div><p>
- </p><p>
- The Equinox console is not enabled by default. To enable it place the setting
-</p><pre class="programlisting">osgi.console=2401</pre><p>
- in the <code class="literal">org.eclipse.virgo.kernel.userregion.properties</code> file in the <code class="literal">config</code> directory.
- Any free port can be used, but 2401 is the usual default.
- </p><p>
- You can run the Equinox console via telnet to the configured port, for example:
- </p><pre class="programlisting">prompt$ telnet localhost 2401
-Trying ::1...
-Connected to localhost.
-Escape character is '^]'.
-
-osgi> </pre><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="admin-shell-using"></a>6.1 Using the Equinox Console Extension</h2></div></div></div><p>You invoke the Equinox Console Extension using the <code class="literal">vsh</code> command. For example:</p><pre class="programlisting">
-osgi> vsh help
-
-
- bundle - Management and examination of bundle artifacts
- config - Management and examination of configuration artifacts
- exit - Exit the kernel shell environment
- help - Get help on commands
- install - Install (deploy) an artifact to the server
- package - Examination of exported packages
- par - Management and examination of PAR artifacts
- plan - Management and examination of plan artifacts
- service - Examination of services
- shutdown - Shutdown Virgo Kernel
-
-
-osgi> </pre><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-using-command-list"></a>Equinox Console Extension (<code class="literal">vsh</code>) Subcommands</h3></div></div></div><p>The following table lists the Equinox Console Extension subcommands; each subcommand in turn has a variety of options that you can specify, depending on what you want to do, such as start a bundle or refresh a plan. The reference documentation about each subcommand provides the full list of available options. </p><div class="table"><a name="admin-shell-commands-table"></a><p class="title"><b>Table 6.1. Equinox Console Extension Subcommands</b></p><div class="table-contents"><table summary="Equinox Console Extension Subcommands" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Subcommand </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-bundle-command" title="bundle Subcommand">bundle</a></td><td style="border-bottom: 1.0pt solid ; ">Manages and displays information about bundle artifacts.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-config-command" title="config Subcommand">config</a></td><td style="border-bottom: 1.0pt solid ; ">Manages and displays information about configuration artifacts.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-package-command" title="package Subcommand">package</a></td><td style="border-bottom: 1.0pt solid ; ">Displays information about exported packages.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-par-command" title="par Subcommand">par</a></td><td style="border-bottom: 1.0pt solid ; ">Manages and displays information about PAR artifacts.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-plan-command" title="plan Subcommand">plan</a></td><td style="border-bottom: 1.0pt solid ; ">Manages and displays information about plan artifacts.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-service-command" title="service Subcommand">service</a></td><td style="border-bottom: 1.0pt solid ; ">Displays information about services in the OSGi service registry.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-install-command" title="install Subcommand">install</a></td><td style="border-bottom: 1.0pt solid ; ">Installs an artifact to Web Server. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-shutdown-command" title="shutdown Subcommand">shutdown</a></td><td style="border-bottom: 1.0pt solid ; ">Shuts down the Web Server instance to which the Equinox Console is connected.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-help-command" title="help Subcommand">help</a></td><td style="border-bottom: 1.0pt solid ; ">Displays help about the list of available subcommands, as well as more detailed help about individual subcommands.</td></tr><tr><td style="border-right: 1.0pt solid ; "><a class="link" href="ch06s02.html#admin-shell-exit-command" title="exit Subcommand">exit</a></td><td style="">Returns to the Equinox console with no effect.</td></tr></tbody></table></div></div><br class="table-break"></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch05s02.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch06s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">5.2 The User Region </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 6.2 Equinox Console Extension Subcommand Reference</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch06s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch06s02.html
deleted file mode 100644
index 283477e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch06s02.html
+++ /dev/null
@@ -1,343 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>6.2 Equinox Console Extension Subcommand Reference</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch06.html" title="6. Equinox Console Extension (vsh)"><link rel="prev" href="ch06.html" title="6. Equinox Console Extension (vsh)"><link rel="next" href="ch07.html" title="7. The Web Admin Console"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">6.2 Equinox Console Extension Subcommand Reference</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06.html">Prev</a> </td><th width="60%" align="center">6. Equinox Console Extension (vsh)</th><td width="20%" align="right"> <a accesskey="n" href="ch07.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="admin-shell-command-reference"></a>6.2 Equinox Console Extension Subcommand Reference</h2></div></div></div><p>
- This section contains reference information about the Equinox Console Extension subcommands
- <a class="link" href="ch06s02.html#admin-shell-bundle-command" title="bundle Subcommand">bundle</a>,
- <a class="link" href="ch06s02.html#admin-shell-config-command" title="config Subcommand">config</a>,
- <a class="link" href="ch06s02.html#admin-shell-package-command" title="package Subcommand">package</a>,
- <a class="link" href="ch06s02.html#admin-shell-par-command" title="par Subcommand">par</a>,
- <a class="link" href="ch06s02.html#admin-shell-plan-command" title="plan Subcommand">plan</a>,
- <a class="link" href="ch06s02.html#admin-shell-service-command" title="service Subcommand">service</a>,
- <a class="link" href="ch06s02.html#admin-shell-install-command" title="install Subcommand">install</a>,
- <a class="link" href="ch06s02.html#admin-shell-shutdown-command" title="shutdown Subcommand">shutdown</a>,
- <a class="link" href="ch06s02.html#admin-shell-help-command" title="help Subcommand">help</a>, and
- <a class="link" href="ch06s02.html#admin-shell-exit-command" title="exit Subcommand">exit</a>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-bundle-command"></a>bundle Subcommand</h3></div></div></div><p>Use the <code class="literal">bundle</code> subcommand to manage the lifecycle of bundles deployed to VWS and to gather information about deployed bundles, such as diagnostic information, header information, and so on. </p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-bundle-command-table"></a><p class="title"><b>Table 6.2. Options of the bundle Subcommand</b></p><div class="table-contents"><table summary="Options of the bundle Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays the list of bundles that are currently installed to the current Web Server instance. With the exception of a few kernel bundles and their services, which Web Server uses to administer the user region, none of the kernel is visible to user installed artifacts; rather, only the bundles installed in the user region are visible.
- <p>Each bundle is identified by an internal <code class="literal">ID</code> which you can then use with the other <code class="literal">bundle</code> subcommands that manage a particular bundle, such as <code class="literal">start </code><span class="emphasis"><em><code class="literal">id</code></em></span>. The <code class="literal">list</code> subcommand also displays the version of the bundle, along with its state, which is one of the following standard OSGi lifecycle states:</p>
- <div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>Installed</strong></span>: The bundle is installed but its dependencies have not yet been resolved.</p></li><li><p><span class="bold"><strong>Resolved</strong></span>: The bundle is resolved and you can now start it.</p></li><li><p><span class="bold"><strong>Uninstalled</strong></span>: The bundle is uninstalled and you can not use it.</p></li><li><p><span class="bold"><strong>Starting</strong></span>: The bundle is in the process of starting.</p></li><li><p><span class="bold"><strong>Active</strong></span>: The bundle is running and you can now use it.</p></li><li><p><span class="bold"><strong>Stopping</strong></span>: The bundle is in the process of stopping.</p></li></ul></div>
- <p>Use one of the other <code class="literal">bundle</code> subcommands to change the state of a bundle. For example, use the <code class="literal">bundle start </code><span class="emphasis"><em><code class="literal">id</code></em></span> subcommand to change the state of a bundle from <code class="literal">Installed</code> to <code class="literal">Active</code>.</p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">examine <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Displays detailed information about the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>In addition to the information provided by the <code class="literal">bundle list</code> subcommand (id, full name, version, and state), the <code class="literal">examine</code> subcommand specifies whether the bundle includes a Spring application context (or is <span class="emphasis"><em>Spring Powered</em></span>) and the exact physical location of the bundle JAR file. </p>
- <p>The <code class="literal">examine</code> also provides the full list of packages that the bundle imports, as well as the bundles that in turn export these imported packages. Finally, the subcommand displays the packages that the current bundle exports, and then in turn the list of other installed bundles that are currently importing these exported packages. </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">start <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Starts the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>After Web Server successfully starts the bundle, it is listed in the <code class="literal">Active</code> state. </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">stop <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Stops the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>When you stop a bundle, it goes from the <code class="literal">Active</code> state to the <code class="literal">Resolved</code> state, and you must re-start it if you want to use the application that the bundle contains.</p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">refresh <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Updates the contents of the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle. Use this subcommand if you have changed the contents of the bundle JAR file and you want to refresh the artifact as installed in the OSGi framework.
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">uninstall <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Uninstalls the specified bundle from Web Server. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>When the uninstall process is complete, the bundle does not show up in the list of bundles displayed by the <code class="literal">bundle list</code> subcommand. If you want to use the application in the bundle, you must re-install it using the <code class="literal">install</code> subcommand.</p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">diag <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Provides diagnostic information about the specified bundle. In particular, this subcommand displays information about the imported packages that Web Server could not resolve. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- </td></tr><tr><td style="border-right: 1.0pt solid ; ">headers <span class="emphasis"><em>id</em></span></td><td style="">Displays the complete list of manifest headers of the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>The manifest headers include: <code class="literal">Import-Package</code>, <code class="literal">Export-Package</code>, <code class="literal">Bundle-SymbolicName</code>, and so on. </p>
- </td></tr></tbody></table></div></div><br class="table-break"><p>The following examples show how to use this subcommand.</p><p>First, use the <code class="literal">bundle list</code> subcommand to view all the installed bundles:</p><pre class="programlisting">osgi> vsh bundle list
-
-Id Name Version State
-0 org.eclipse.osgi 3.6.1.R36x_v20100806 ACTIVE
-1 org.eclipse.virgo.region.user 0.0.0 ACTIVE
-2 org.eclipse.virgo.kernel.userregion 2.1.0.RELEASE ACTIVE
-3 org.eclipse.virgo.kernel.osgicommand 2.1.0.RELEASE ACTIVE
-4 org.springframework.osgi.core 1.2.1 ACTIVE
-5 S org.springframework.osgi.extender 1.2.1 ACTIVE
-6 org.springframework.osgi.io 1.2.1 ACTIVE
-7 org.eclipse.virgo.kernel.agent.dm 2.1.0.RELEASE ACTIVE
-8 S org.eclipse.virgo.kernel.deployer.dm 2.1.0.RELEASE ACTIVE
-9 com.springsource.org.aopalliance 1.0.0 ACTIVE
-10 org.eclipse.virgo.kernel.dmfragment 2.1.0.RELEASE RESOLVED
-11 org.springframework.aop 3.0.0.RELEASE ACTIVE
-12 org.springframework.asm 3.0.0.RELEASE ACTIVE
-13 org.springframework.beans 3.0.0.RELEASE ACTIVE
-14 org.springframework.context 3.0.0.RELEASE ACTIVE
-15 org.springframework.core 3.0.0.RELEASE ACTIVE
-16 org.springframework.expression 3.0.0.RELEASE ACTIVE
-
-osgi> </pre><p>The following example shows how to view the headers of the <code class="literal">org.springframework.osgi.extender</code> bundle (only the first few lines are shown):</p><pre class="programlisting">osgi> vsh bundle examine 5
-
-Id: 5
-Name: org.springframework.osgi.extender
-Version 1.2.1
-State: ACTIVE
-Spring Powered: true
-Bundle Location: file:<... omitted ...>/org.springframework.osgi.extender-1.2.1.jar/
-
-Imported Packages:
- org.springframework.osgi.context [1.2.1, 1.2.1]
- exported by org.springframework.osgi.core 1.2.1 [4]
- <... remainder omitted ...>
-
-Exported Packages:
- org.springframework.osgi.extender 1.2.1
- <... remainder omitted ...>
-
-Published services:
- 58 org.springframework.beans.factory.xml.NamespaceHandlerResolver
- consumed by org.springframework.osgi.extender 1.2.1 [5]
- consumed by org.eclipse.virgo.kernel.deployer.dm 2.1.0.RELEASE [8]
- <... remainder omitted ...>
-
-Consumed services:
- 34 org.eclipse.virgo.kernel.shim.serviceability.TracingService
- published by org.eclipse.virgo.region.user 0.0.0 [1]
- <... remainder omitted ...>
-
-Fragments:
- org.eclipse.virgo.kernel.dmfragment 2.1.0.RELEASE [10]
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-config-command"></a>config Subcommand</h3></div></div></div><p>Use the <code class="literal">config</code> subcommand to view and manage the configuration artifacts that have been installed to Web Server. A <span class="emphasis"><em>configuration artifact</em></span> is simply a properties file that is associated with a user application that is contained in a bundle. Using configuration artifacts, you can manage the configuration of a user application completely separately from the bundle that contains the application. </p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-config-command-table"></a><p class="title"><b>Table 6.3. Options of the config Subcommand</b></p><div class="table-contents"><table summary="Options of the config Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Lists the configuration artifacts that are currently installed in Web Server.
- <p>The <code class="literal">list</code> option displays the full name of each installed configuration artifact, its version, and its current state. Configuration artifacts have similar lifecycles to other artifacts, such as bundles, and so the list of states in which a configuration can be in is the same as those of bundles; see <a class="link" href="ch06s02.html#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the list of possible states. </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">examine <span class="emphasis"><em>name [version]</em></span></td><td style="border-bottom: 1.0pt solid ; ">Displays information about the specified configuration artifact. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
- <p>A configuration artifact must be active for you to examine it; if it is not currently active, use <code class="literal">config start</code> to start it and thus change its state to <code class="literal">Active</code>.</p>
- <p>The subcommand first displays the factory pid of the configuration artifact as well as the complete location of the bundle to which the configuration artifact is associated. The subcommand then lists all the properties that make up the configuration, as well as their current value. </p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">start <span class="emphasis"><em>name [version]</em></span></td><td style="border-bottom: 1.0pt solid ; ">Starts the specified configuration artifact and makes it visible to the internal configuration sub-system of Web Server. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
-
- <p>Starting the configuration sets its state to <code class="literal">Active</code>.</p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">stop <span class="emphasis"><em>name [version]</em></span></td><td style="border-bottom: 1.0pt solid ; ">Stops the specified configuration artifact and makes it invisible to the internal configuration sub-system of Web Server. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
-
- <p>Stopping the configuration sets its state to <code class="literal">Resolved</code>.</p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">refresh <span class="emphasis"><em>name [version]</em></span></td><td style="border-bottom: 1.0pt solid ; ">Updates the contents of the specified configuration artifact to the internal configuration sub-system of Web Server. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
-
- <p>Use this subcommand if you have changed the contents of the configuration artifact, and you want to make this information known to Web Server and the associated bundle. </p></td></tr><tr><td style="border-right: 1.0pt solid ; ">uninstall <span class="emphasis"><em>name [version]</em></span></td><td style="">Uninstalls the specified configuration artifact and make it completely unavailable to Web Server. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
-
- <p>Stopping the configuration removes it from Web Server's list of deployed artifacts and it will not show up when you perform a <code class="literal">config list</code>.</p></td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to use this subcommand to list the installed configuration artifacts.</p><pre class="programlisting">osgi> vsh config list
-
-Name Version State
-org.eclipse.virgo.kernel 0.0.0 ACTIVE
-org.eclipse.virgo.kernel.jmxremote.access 0.0.0 ACTIVE
-org.eclipse.virgo.kernel.userregion 0.0.0 ACTIVE
-org.eclipse.virgo.kernel.users 0.0.0 ACTIVE
-org.eclipse.virgo.medic 0.0.0 ACTIVE
-org.eclipse.virgo.repository 0.0.0 ACTIVE
-
-osgi> </pre><p>To view the properties of a configuration artifact, and their current values, use <code class="literal">config examine</code>:</p><pre class="programlisting">osgi> vsh config examine org.eclipse.virgo.kernel
-
-Factory pid:
-Bundle Location: file:lib/kernel/org.eclipse.virgo.kernel.osgi-2.1.0.RELEASE.jar
-
-Properties:
- deployer.pickupDirectory:
- pickup
- deployer.timeout:
- 300
- domain:
- org.eclipse.virgo.kernel
- home.directory:
- /Users/glynnormington/virgo-web-server-2.1.0.RELEASE
- service.pid:
- org.eclipse.virgo.kernel
- work.directory:
- /Users/glynnormington/virgo-web-server-2.1.0.RELEASE/work
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-package-command"></a>package Subcommand</h3></div></div></div><p>Use the <code class="literal">package</code> subcommand to view the complete list of packages exported by all bundles installed to Web Server, as well as examine a particular exported package in more detail.</p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-package-command-table"></a><p class="title"><b>Table 6.4. Options of the package Subcommand</b></p><div class="table-contents"><table summary="Options of the package Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays all the exported packages for all bundles in the uer region of Web Server. In addition to the package name, the subcommand displays the version of the exported package and the <code class="literal">id</code> of the bundle that contains the exported package. You can examine the bundle by using the subcommand <code class="literal">bundle examine </code><span class="emphasis"><em><code class="literal">id</code></em></span>.</td></tr><tr><td style="border-right: 1.0pt solid ; ">examine <span class="emphasis"><em>name version</em></span></td><td style="">Displays details about the exported package. You must specify both the name of the exported package and its version; use <code class="literal">package list</code> to view the exact names and version.
- <p>This subcommand provides the following additional information about the exported package:</p>
-
- <div class="itemizedlist"><ul type="disc"><li><p>The name and version of the bundle that exports the package. This means that the package name is explicitly listed in the bundle's <code class="literal">MANIFEST.MF</code> file as part of the <code class="literal">Export-Package</code> header.</p></li><li><p>Any attributes that are part of the <code class="literal">Export-Package</code>, in addition to <code class="literal">version</code>.</p></li><li><p>The directives that are part of the <code class="literal">Export-Package</code> header. A typical directive is <code class="literal">uses</code>, which declares up-front constraints on a number of other packages.</p></li><li><p>The list of all bundles that import the package.</p></li></ul></div>
- </td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to list all the exported packages for all bundles installed:</p><pre class="programlisting">osgi> vsh package list
-
-Name Version Providing Bundle
-javax.accessibility 0.0.0 0
-javax.activation 0.0.0 0
-javax.activation 1.1.1 0
-<... remainder omitted ...>
-
-osgi> </pre><p>The following example shows how to examine a particular exported package:</p><pre class="programlisting">osgi> vsh package examine org.slf4j 1.6.1
-
-Exporter: org.eclipse.virgo.region.user 0.0.0 [1]
-
-Attributes:
- None
-
-Directives:
- uses:
- org.slf4j.spi
- x-equinox-ee:
- -1
- x-internal:
- false
-
-Importer(s):
- org.eclipse.virgo.kernel.agent.dm 2.1.0.RELEASE [7]
- Import-Package attributes:
- bundle-version:
- 0.0.0
- version:
- [1.6.1,2.0.0)
- Import-Package directives:
- resolution:
- static
- <... remainder omitted ...>
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-par-command"></a>par Subcommand</h3></div></div></div><p>Use the <code class="literal">par</code> subcommand to view all the PARs currently installed in Web Server, view details about a particular PAR and manage its lifecycle, such as starting, stopping, refreshing, and uninstalling it.</p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-par-command-table"></a><p class="title"><b>Table 6.5. Options of the par Subcommand</b></p><div class="table-contents"><table summary="Options of the par Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays all the PARs that are currently installed in Web Server.
- <p>The <code class="literal">list</code> option displays the full name of each installed PAR, its version, and its current state. PARs have similar lifecycles to other artifacts, such as bundles, and so the list of states in which a PAR can be in is the same as those of bundles; see <a class="link" href="ch06s02.html#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the list of possible states. </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">examine <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Displays information about the specified PAR; you are required to identify the PAR with both its name and its version. Use the <code class="literal">par list</code> subcommand to view all installed PAR files and their versions. The subcommand displays the following information:
- <div class="itemizedlist"><ul type="disc"><li><p>The current state of the PAR (see <a class="link" href="ch06s02.html#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the full list of possible states).</p></li><li><p>Whether the PAR is <span class="emphasis"><em>scoped</em></span>. Scoping specifies whether Web Server should deploy the members of the PAR in their own scope; when scoping is disabled, Web Server deploys the artifacts into the global scope and they are accessible for access by all other artifacts.</p></li><li><p>Whether the PAR is <span class="emphasis"><em>atomic</em></span>. When a PAR is atomic, Web Server manages the lifecycle of all its member artifacts as a single entity, which means if one artifact member is started, then Web Server starts <span class="emphasis"><em>all</em></span> the PAR artifacts. If one artifact fails to start, then Web Server stops all other artifacts in the PAR.</p></li><li><p>The individual members, or children, of the PAR. These could be other PARs, plans, bundles, configuration artifacts, and so on.</p></li></ul></div>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">start <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Starts the specified PAR. You must specify both the full name of the PAR as well as the version you want to start. Use the <code class="literal">par list</code> subcommand to get the list of PARs currently installed in Web Server.
- <p>To start a PAR, it must have already been resolved by Web Server, or in other words, be in the <code class="literal">Resolved</code> state. After Web Server successfully starts the PAR, it is listed in the <code class="literal">Active</code> state. </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">stop <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Stops the specified PAR. You must specify both the full name of the PAR as well as the version you want to stop. Use the <code class="literal">par list</code> subcommand to get the list of PARs currently installed in Web Server.
- <p>When you stop a PAR, it goes from the <code class="literal">Active</code> state to the <code class="literal">Resolved</code> state, and you must re-start it if you want to use the application that the PAR contains.</p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">refresh <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Updates the contents of the specified PAR. You must specify both the name and version of the PAR you want to refresh. Use the <code class="literal">par list</code> subcommand to this information.
- <p>Use this subcommand if you have changed the contents of the PAR file and you want to refresh the artifact as installed in the OSGi framework.</p></td></tr><tr><td style="border-right: 1.0pt solid ; ">uninstall <span class="emphasis"><em>name version</em></span></td><td style="">Uninstalls the specified PAR. You must specify both the name and version of the PAR you want to refresh. Use the <code class="literal">par list</code> subcommand to this information.
- <p>When the uninstall process is complete, the PAR will not show up in the list of PARs displayed by the <code class="literal">par list</code> subcommand. If you want to use the application in the PAR, you must re-install it using the <code class="literal">install</code> subcommand.</p></td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to list the PARs that have been installed in Web Server:</p><pre class="programlisting">osgi> vsh par list
-
-Name Version State
-
-org.eclipse.virgo.server.repository.hosted 2.1.0.RELEASE ACTIVE
-
-osgi> </pre><p>The following example shows how to examine a particular PAR file:</p><pre class="programlisting">osgi> vsh par examine org.eclipse.virgo.server.repository.hosted 2.1.0.RELEASE
-
-State: ACTIVE
-Scoped: true
-Atomic: true
-
-Children:
- bundle org.eclipse.virgo.server.repository.hosted.core 2.1.0.RELEASE
- bundle org.eclipse.virgo.server.repository.hosted.web 2.1.0.RELEASE
- bundle org.eclipse.virgo.server.repository.hosted-synthetic.context 2.1.0.RELEASE
-
-osgi> </pre><p>Finally, the following example shows how to refresh an installed PAR file:</p><pre class="programlisting">osgi> vsh par refresh my.exciting.par 1.2.0
-
-par my.exciting.par 1.2.0 refreshed successfully
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-plan-command"></a>plan Subcommand</h3></div></div></div><p>Use the <code class="literal">plan</code> subcommand to view all the plans currently installed in Web Server, view details about a particular plan and manage its lifecycle, such as starting, stopping, refreshing, and uninstalling it.</p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-plan-command-table"></a><p class="title"><b>Table 6.6. Options of the plan Subcommand</b></p><div class="table-contents"><table summary="Options of the plan Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays all the plans that are currently installed in Web Server.
- <p>The <code class="literal">list</code> option displays the full name of each installed plan, its version, and its current state. Plans have similar lifecycles to other artifacts, such as bundles, and so the list of states in which a plan can be in is the same as those of bundles; see <a class="link" href="ch06s02.html#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the list of possible states. </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">examine <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Displays information about the specified plan; you are required to identify the plan with both its name and its version. Use the <code class="literal">plan list</code> subcommand to view all installed plans and their versions. The subcommand displays the following information:
- <div class="itemizedlist"><ul type="disc"><li><p>The current state of the plan (see <a class="link" href="ch06s02.html#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the full list of possible states).</p></li><li><p>Whether the plan is <span class="emphasis"><em>scoped</em></span>. Scoping specifies whether Web Server should deploy the members of the plan in their own scope; when scoping is disabled, Web Server deploys the artifacts into the global scope and they are accessible for access by all other artifacts.</p></li><li><p>Whether the plan is <span class="emphasis"><em>atomic</em></span>. When a plan is atomic, Web Server manages the lifecycle of all its member artifacts as a single entity, which means if one artifact member is started, then Web Server starts <span class="emphasis"><em>all</em></span> the plan artifacts. If one artifact fails to start, then Web Server stops all other artifacts in the plan.</p></li><li><p>The individual members, or children, of the plan. These could be other plans, PARs, bundles, configuration artifacts, and so on.</p></li></ul></div>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">start <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Starts the specified plan. You must specify both the full name of the plan as well as the version you want to start. Use the <code class="literal">plan list</code> subcommand to get the list of plans currently installed in Web Server.
- <p>To start a plan, it must have already been resolved by Web Server, or in other words, be in the <code class="literal">Resolved</code> state. After Web Server successfully starts the plan, it is listed in the <code class="literal">Active</code> state. </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">stop <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Stops the specified plan. You must specify both the full name of the plan as well as the version you want to stop. Use the <code class="literal">plan list</code> subcommand to get the list of plans currently installed in Web Server.
- <p>When you stop a plan, it goes from the <code class="literal">Active</code> state to the <code class="literal">Resolved</code> state, and you must re-start it if you want to use the application that the plan contains.</p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">refresh <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Updates the contents of the specified plan. You must specify both the name and version of the plan you want to refresh. Use the <code class="literal">plan list</code> subcommand to this information.
- <p>Use this subcommand if you have changed the contents of the plan file and you want to refresh the artifact as installed in the OSGi framework.</p></td></tr><tr><td style="border-right: 1.0pt solid ; ">uninstall <span class="emphasis"><em>name version</em></span></td><td style="">Uninstalls the specified plan. You must specify both the name and version of the plan you want to refresh. Use the <code class="literal">plan list</code> subcommand to this information.
- <p>When the uninstall process is complete, the plan will not show up in the list of plans displayed by the <code class="literal">plan list</code> subcommand. If you want to use the application in the plan, you must re-install it using the <code class="literal">install</code> subcommand.</p></td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to list the plans that have been installed in Web Server:</p><pre class="programlisting">osgi> vsh plan list
-
-Name Version State
-org.eclipse.virgo.apps.admin.plan 2.1.0 ACTIVE
-org.eclipse.virgo.kernel.userregion.springdm 2.1.0 ACTIVE
-org.eclipse.virgo.web 2.1.0 ACTIVE
-
-osgi> </pre><p>The following example shows how to examine a particular plan:</p><pre class="programlisting">osgi> vsh plan examine org.eclipse.virgo.kernel.userregion.springdm 2.1.0
-
-State: ACTIVE
-Scoped: false
-Atomic: false
-
-Children:
- bundle org.eclipse.virgo.kernel.agent.dm 2.1.0.RELEASE
- bundle org.springframework.osgi.io 1.2.1
- bundle org.springframework.osgi.extender 1.2.1
- bundle org.springframework.osgi.core 1.2.1
- bundle org.eclipse.virgo.kernel.deployer.dm 2.1.0.RELEASE
-
-osgi> </pre><p>The following example shows how to stop a currently Active plan:</p><pre class="programlisting">osgi> vsh plan stop org.eclipse.virgo.web 2.1.0
-
-plan org.eclipse.virgo.web:2.1.0 stopped successfully
-
-osgi> </pre><p>The following example shows how to start a plan:</p><pre class="programlisting">osgi> vsh plan start org.eclipse.virgo.web 2.1.0
-
-plan org.eclipse.virgo.web:2.1.0 started successfully
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-service-command"></a>service Subcommand</h3></div></div></div><p>Use the <code class="literal">service</code> subcommand to view all the services that have been registered in the OSGi service registry of Web Server. You can also examine a specific service to discover its properties, the bundle that publishes the service, and any bundles that consume the service.</p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-service-command-table"></a><p class="title"><b>Table 6.7. Options of the service Subcommand</b></p><div class="table-contents"><table summary="Options of the service Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays the list of services that are currently registered in the OSGi service registry of Web Server.
- <p>Each service is identified by an internal <code class="literal">ID</code> which you can then use with the <code class="literal">service examine</code> subcommand to view the details about a particular service. The <code class="literal">list</code> option also displays the object class that implements the service and the internal <code class="literal">id</code> of the bundle that provides the service. </p></td></tr><tr><td style="border-right: 1.0pt solid ; ">examine <span class="emphasis"><em>id</em></span></td><td style="">Displays detailed information about the specified service. Use the <code class="literal">service list</code> subcommand to get the internal id of a particular service.
- <p>This subcommand displays the properties of the service, such as the object class that implements the service, the name of the bundle that publishes the service and any bundles that consume the service. </p></td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to list the services currently registered in the OSGi service registry:</p><pre class="programlisting">osgi> vsh service list
-
-Id Object Class(es) Providing Bundle
-
-1 org.osgi.service.packageadmin.PackageAdmin 0
-2 org.osgi.service.permissionadmin.PermissionAdmin, ... 0
-3 org.osgi.service.startlevel.StartLevel 0
-4 org.eclipse.osgi.service.debug.DebugOptions 0
-5 java.lang.ClassLoader 0
-6 org.eclipse.osgi.framework.log.FrameworkLog 0
-7 org.eclipse.osgi.framework.log.FrameworkLog 0
-<... remainder omitted ...>
-
-72 org.eclipse.gemini.web.core.spi.ServletContainer 38
-73 org.eclipse.gemini.web.core.WebContainer 37
-74 org.eclipse.virgo.web.core.WebApplicationRegistry 39
-<... remainder omitted ...>
-
-osgi> </pre><p>The following example shows how to examine a particular service:</p><pre class="programlisting">osgi> vsh service examine 73
-
- Properties:
- objectClass:
- org.eclipse.gemini.web.core.WebContainer
- service.id:
- 73
-
- Publisher: org.eclipse.gemini.web.core 1.1.0.RELEASE [37]
-
- Consumer(s):
- org.eclipse.virgo.web.core 2.1.0.RELEASE [39]
-
- osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-install-command"></a>install Subcommand</h3></div></div></div><p>Use the <code class="literal">install</code> subcommand to deploy an artifact to Web Server. The artifact can be a bundle, PAR, plan, or configuration artifact.</p><p>The <code class="literal">install</code> subcommand takes a single parameter: the URI of the artifact you want to deploy. For example, to deploy a bundle on the local computer, use the <code class="literal">file</code> scheme:</p><pre class="programlisting">file://full-pathname-to-artifact</pre><p>After you execute the <code class="literal">install</code> subcommand, Web Server attempts to resolve the artifact's dependencies, and if it is successful, puts it in the <code class="literal">Resolved</code> state. At that point, you must start the artifact to be able to actually use it. </p><p>The following example shows how to install a bundle called <code class="literal">swf-booking-mvc.war</code> located in the <code class="literal">/home/apps</code> directory of the computer on which the Equinox Console Extension is being run:</p><pre class="programlisting">:> install file://home/apps/swf-booking-mvc.war
-
-Artifact bundle swf-booking-mvc.war 0.0.0 installed</pre><p>The following example shows how to use the <code class="literal">bundle list</code> subcommand to ensure that the bundle was indeed installed to Web Server; if you had installed a different kind of artifact, for example a plan, then you would use the appropriate subcommand (such as <code class="literal">plan list</code>):</p><pre class="programlisting">osgi> vsh bundle list
-
-Id Name Version State
-
-0 org.eclipse.osgi 3.6.1.R36x_v20100806 ACTIVE
-1 org.eclipse.virgo.region.user 0.0.0 ACTIVE
-<... remainder omitted ...>
-
-59 org.eclipse.virgo.server.splash 2.1.0.RELEASE ACTIVE
-60 swf-booking-mvc.war 0.0.0 RESOLVED
-
-osgi> </pre><p>Note that the <code class="literal">swf-booking-mvc.war</code> file is in the <code class="literal">Resolved</code> state. The following examples start the bundle, and then examine it to ensure that it is in the <code class="literal">Active</code> state:</p><pre class="programlisting">osgi> vsh bundle start 60
-
-bundle swf-booking-mvc.war:0.0.0 started successfully
-
-
-osgi> vsh bundle examine 60
-
-Id: 60
-Name: swf-booking-mvc.war
-Version 0.0.0
-State: ACTIVE
-Spring Powered: true
-Bundle Location: file:<... omitted ...>/swf-booking-mvc.war/
-
-Imported Packages:
- javax.crypto.interfaces [0.0.0, 0.0.0]
- exported by org.eclipse.osgi 3.6.1.R36x_v20100806 [0]
- org.omg.CosNaming.NamingContextPackage [0.0.0, 0.0.0]
- exported by org.eclipse.osgi 3.6.1.R36x_v20100806 [0]
- org.omg.DynamicAny.DynAnyFactoryPackage [0.0.0, 0.0.0]
- exported by org.eclipse.osgi 3.6.1.R36x_v20100806 [0]
- <... remainder omitted ...>
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-shutdown-command"></a>shutdown Subcommand</h3></div></div></div><p>Use the <code class="literal">shutdown</code> subcommand to shut down the Web Server instance to which you are connected. When Web Server is shutdown, the shell returns you to the operating system prompt. </p><p>The <code class="literal">shutdown</code> subcommand does not have any options.</p><p>The following example shows how to use this subcommand.</p><pre class="programlisting">:> shutdown
-
-Shutdown MBean called
-prompt$</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-help-command"></a>help Subcommand</h3></div></div></div><p>Use the <code class="literal">help</code> subcommand on its own to get a list of all available Equinox Console Extension subcommands. If you specify a particular subcommand to the <code class="literal">help</code> subcommand, then you will get the list of options that you can pass to the subcommand. </p><p>For example:</p><pre class="programlisting">osgi> vsh help
-
-
- bundle - Management and examination of bundle artifacts
- config - Management and examination of configuration artifacts
- exit - Exit the kernel shell environment
- help - Get help on commands
- install - Install (deploy) an artifact to the server
- package - Examination of exported packages
- par - Management and examination of PAR artifacts
- plan - Management and examination of plan artifacts
- service - Examination of services
- shutdown - Shutdown Virgo Kernel
-
-
-osgi> vsh help bundle
-
-bundle list - List all bundle artifacts that are
- currently installed
-bundle examine [ id | name version ] - Examine a bundle artifact
-bundle start [ id | name version ] - Start a bundle artifact. Starting this
- artifact starts it in the OSGi
- framework.
-bundle stop [ id | name version ] - Stop a bundle artifact. Stopping this
- artifact stops it in the OSGi
- framework.
-bundle refresh [ id | name version ] - Refresh a bundle artifact. Refreshing
- this artifact updates its contents in
- the OSGi framework.
-bundle uninstall [ id | name version ] - Uninstall a bundle artifact
-bundle diag [ id | name version ] - Provide diagnostics for a bundle
- artifact
-bundle headers [ id | name version ] - Show the headers for a bundle artifact
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-exit-command"></a>exit Subcommand</h3></div></div></div><p>This returns to the Equinox console and otherwise has no effect.</p><p>The <code class="literal">exit</code> subcommand does not have any options.</p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch06.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch07.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6. Equinox Console Extension (vsh) </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7. The Web Admin Console</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch07.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch07.html
deleted file mode 100644
index 3db6ba7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch07.html
+++ /dev/null
@@ -1,37 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7. The Web Admin Console</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch06s02.html" title="6.2 Equinox Console Extension Subcommand Reference"><link rel="next" href="ch07s02.html" title="7.2 Typical Admin Console Use Cases"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7. The Web Admin Console</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch06s02.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch07s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="admin-console"></a>7. The Web Admin Console</h2></div></div></div><p>The Web Server Admin Console is a Web application for managing a single instance of Web Server. Using the Admin Console, you can:</p><div class="itemizedlist"><ul type="disc"><li><p><a class="link" href="ch07.html#admin-console-login" title="7.1 Invoking the Admin Console">View an overview of the Web Server properties</a>.</p></li><li><p><a class="link" href="ch07s02.html#admin-console-manage-artifacts" title="Viewing and Managing the Lifecycle of Deployed Artifacts">View and manage the lifecycle</a> of artifacts already deployed to the Web Server instance. Artifacts include bundles, configuration files, PARs, and plans. Lifecycle management tasks include starting, stopping, refreshing, and uninstalling the artifacts.</p></li><li><p><a class="link" href="ch07s02.html#admin-console-install-artifacts" title="Installing a New Artifact">Install new artifacts to Web Server</a>.</p></li><li><p><a class="link" href="ch07s02.html#admin-console-view-properties" title="Viewing Properties of Deployed Configuration Artifacts">View the properties of the configuration artifacts</a> deployed to Web Server.</p></li><li><p><a class="link" href="ch07s02.html#admin-console-view-dumps" title="Viewing the Details of Dump Files">View details of dump files</a> that Web Server might have generated after encountering a problem. This feature is particularly valuable if Web Server fails to install a new artifact due to resolution failures; the dump inspector can help you discover the exact artifact causing the resolution failure.</p></li><li><p><a class="link" href="ch07s02.html#admin-console-view-osgi-state" title="Viewing Overview and Details of the OSGi State">View an overview and details of the OSGi State</a> of Web Server, or in other words, a list of all bundles currently installed in Web Server and their state. You can then drill down into the details of each bundle, such as its symbolic name, packages it imports and exports, services it provides and consumes, and so on. You can also view the bundles that were deployed when an exception that generated a dump occurred.</p></li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="admin-console-login"></a>7.1 Invoking the Admin Console</h2></div></div></div><p>
- To use the Admin Console, start the
- Virgo Web Server and then enter the following URL in your
- browser of choice.
- </p><pre class="screen">http://localhost:8080/admin</pre><p>
- Replace <code class="literal">localhost</code> with the hostname of the computer on which the Virgo Web Server is running if it is not the same as the computer on which you are running your browser. </p><p>The Admin Console uses basic authentication, therefore you will need to enter the default administration ID and password.
- </p><pre class="screen">ID: admin
-Password: springsource</pre><p>The following graphic shows the main page of the Admin Console.
- </p><div class="mediaobject" align="right"><table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0"><tr><td align="right" valign="bottom"><img src="images/console-main-page.png" align="right"></td></tr></table></div><p>
-
- </p><p>Use the links at the top of the console to perform various tasks, such as viewing and managing artifacts (<span class="bold"><strong>Artifacts</strong></span>), viewing the properties of deployed configuration artifacts (<span class="bold"><strong>Configuration</strong></span>), viewing details of dumps (<span class="bold"><strong>Dump Inspector</strong></span>), and viewing the OSGi state of the Web Server instance (<span class="bold"><strong>OSGi State</strong></span>).</p><p>You can always return to the main Admin Console page by clicking <span class="bold"><strong>Information</strong></span> in the top right-hand corner.</p><p>The <code class="literal">Server Properties</code> section provides information about Web Server itself, such as details about the Java Virtual Machine (JVM), the operating system on which Web Server is installed, the time zone configured for the computer, and the complete version of Web Server.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-auth"></a>Changing the Admin User</h3></div></div></div><p>
- To change the ID and password for the Admin Console, update the <code class="literal">SERVER_HOME/config/org.eclipse.virgo.kernel.users.properties</code> file. First specify the administration username by changing the value of the <code class="literal">role.admin</code> property. Then set the password of this new user by adding a new property called <code class="literal">user.<span class="emphasis"><em>username</em></span></code>, where <code class="literal"><span class="emphasis"><em>username</em></span></code> refers to the actual name of the user. Finally, restart Web Server for the changes to take effect.</p><p>For example, if you want change the administration username to <code class="literal">juliet</code> with password <code class="literal">capulet</code>, change the file as follows:
- </p><pre class="programlisting">##################
-# User definitions
-##################
-user.juliet=capulet
-
-
-##################
-# Role definitions
-##################
-role.admin=juliet</pre><p>
- The Admin Console always runs against the <code class="literal">admin</code> role.
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch06s02.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch07s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">6.2 Equinox Console Extension Subcommand Reference </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 7.2 Typical Admin Console Use Cases</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch07s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch07s02.html
deleted file mode 100644
index d8515dc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch07s02.html
+++ /dev/null
@@ -1,25 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>7.2 Typical Admin Console Use Cases</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch07.html" title="7. The Web Admin Console"><link rel="prev" href="ch07.html" title="7. The Web Admin Console"><link rel="next" href="ch08.html" title="8. The Provisioning Repository"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">7.2 Typical Admin Console Use Cases</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07.html">Prev</a> </td><th width="60%" align="center">7. The Web Admin Console</th><td width="20%" align="right"> <a accesskey="n" href="ch08.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="admin-console-tasks"></a>7.2 Typical Admin Console Use Cases</h2></div></div></div><p>The following use cases describe the typical tasks that you can perform with the Web Server Admin Console:</p><div class="itemizedlist"><ul type="disc"><li><a class="link" href="ch07s02.html#admin-console-manage-artifacts" title="Viewing and Managing the Lifecycle of Deployed Artifacts">View and Manage the Lifecycle of Deployed Artifacts</a></li><li><a class="link" href="ch07s02.html#admin-console-install-artifacts" title="Installing a New Artifact">Install a New Artifact</a></li><li><a class="link" href="ch07s02.html#admin-console-view-properties" title="Viewing Properties of Deployed Configuration Artifacts">View the Properties of Deployed Configuration Artifacts</a></li><li><a class="link" href="ch07s02.html#admin-console-view-dumps" title="Viewing the Details of Dump Files">View Details of Dump Files</a></li><li><a class="link" href="ch07s02.html#admin-console-view-osgi-state" title="Viewing Overview and Details of the OSGi State">View Overview and Details of the OSGi State</a></li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-manage-artifacts"></a>Viewing and Managing the Lifecycle of Deployed Artifacts</h3></div></div></div><p>The following procedure describes how to view the list of artifacts that are currently deployed in the user region of Web Server. It then describes how to stop, start, refresh, and uninstall the deployed artifacts.</p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>Artifacts</strong></span> link at the top.</p><p>In the lower part of the page, the console displays a tree structure that displays the four kinds of artifacts that you can deploy to the user region of Web Server: bundles, configuration files, PARs, and plans. When you first install Web Server, there will already be a number of artifacts deployed related to the Admin console itself, the main splash screen, the repository, and so on. </p><p>The following graphic shows an expanded tree that displays a few of the deployed artifacts:</p><p><img src="images/console-artifacts.png"></p></li><li><p>To view details of a particular artifact, click the "+" to the left of the artifact to expand the tree. The following graphic shows an expanded <code class="literal">org.eclipse.virgo.apps.admin.web</code> bundle:</p><p><img src="images/console-bundle-details.png"></p><p>The particular details that the Admin Console displays depends on the artifact. For example, for all artifacts you can view their state and how it was installed (such as by a user using the Admin Console or programmatically). The two most common states are Active (running and ready to be used) and Resolved (all dependencies resolved but you must start it before you can use it.) An artifact can also be in one of the transition states, such as Starting and Stopping. </p><p>As shown in the preceding graphic, the Admin Console provides a link for Web modules that you can click on to actually invoke the application (<code class="literal">org.eclipse.virgo.web.contextPath:/admin</code> in the example above.)</p><p>For PARs and plans, the Admin Console also displays whether the artifact is:</p><div class="itemizedlist"><ul type="disc"><li><span class="bold"><strong>Scoped</strong></span>. Scoping specifies whether Web Server should deploy the members of the PAR/plan in their own scope; when scoping is disabled, Web Server deploys the artifacts into the global scope and they are accessible by all other artifacts.</li><li><span class="bold"><strong>Atomic</strong></span>. When a PAR/plan is atomic, Web Server manages the lifecycle of all its member artifacts as a single entity, which means if one artifact member is started, then Web Server starts all the PAR/plan artifacts. If one artifact fails to start, then Web Server stops all other artifacts in the PAR/plan.</li></ul></div><p>The following graphic shows details of a PAR, in particular that it is both scoped and atomic:</p><p><img src="images/console-par-details.png"></p><p>Finally, for bundles, PARs, and plans, you can see the list of bundles that they depend on; this typically means the bundles that export the packages that they import.</p></li><li><p>To manage the lifecycle of an artifact, click on its name in the expanded tree to enable the lifecycle buttons. Then, depending on the current state of the artifact, you can: </p><div class="itemizedlist"><ul type="disc"><li>Start the artifact. All dependencies of the artifact must have been resolved for you to start it. After successfully starting the artifact, it is in the Active state and you can use the application associated with the artifact.</li><li>Stop the artifact. This moves the artifact from an Active to Resolved state, and you cannot use the application associated with the artifact. </li><li>Refresh the artifact. This action updates the physical contents of the artifact; use this button when you have changed the artifact in some way and you want your changes to take effect.</li><li>Uninstall the artifact. This action removes the artifact from Web Server and it does not show up in the Admin Console any more. To use the application associated with this artifact, you must re-install the artifact.</li></ul></div></li></ol></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-install-artifacts"></a>Installing a New Artifact</h3></div></div></div><p>The following procedure describes how to install a new artifact (bundle, PAR, plan, or configuration file.) The procedure is similar for all types of artifacts; the procedure uses a WAR file as an example.</p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>Artifacts</strong></span> link at the top.</p></li><li><p>Click the <span class="bold"><strong>Browse</strong></span> button to invoke the file loader application for your platform. Note that the Browse button searches the computer that is running the browser in which you invoked the Admin Console and <span class="emphasis"><em>not</em></span> the computer on which Web Server is running, in the case where they are different.</p><p>Use the file loader to find the artifact. This can be a WAR file bundle, a configuration artifact that contains properties, an XML file that corresponds to a plan, or a PAR file.</p></li><li><p>Click <span class="bold"><strong>Upload</strong></span> to actually upload the artifact to Web Server. </p><p>Web Server automatically attempts to resolve all dependencies, and then puts the artifact in an Active state if possible. If all is successful, the message <code class="literal">Artifact Deployed</code> appears next to the <span class="bold"><strong>Artifact Console</strong></span> header. If there is an error, a message to that effect is displayed; to get more details about the error, see the terminal window from which you started Web Server.</p></li><li><p>Expand the artifact tree to view your newly deployed artifact. If Web Server installed it without errors, it should show up in the appropriate section and be in an Active state.</p></li></ol></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-view-properties"></a>Viewing Properties of Deployed Configuration Artifacts</h3></div></div></div><p>The following procedure describes how you can view the list of configuration artifacts that are currently deployed to Web Server, and then view the specific properties that are defined for a particular configuration artifact. </p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>Configuration</strong></span> link at the top.</p><p>The Admin Console displays all the configuration artifacts that are currently deployed, as shown in the following graphic:</p><p><img src="images/console-configuration-details.png"></p></li><li><p>To view the properties defined for a particular configuration artifact click the arrow to the left of its name. </p></li></ol></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-view-dumps"></a>Viewing the Details of Dump Files</h3></div></div></div><p>The following procedure describes how to view the details of any service dumps that have occurred in Web Server. Each time a dump is triggered for Web Server, the server creates a directory in <code class="literal">$SERVER_HOME/serviceability/dump</code> with a name corresponding to the time the dump occurred, and then the server populates the directory with detailed information. Using the Admin Console, you can easily view this information.</p><p> A service dump is triggered when there is either a failure in the Web Server code or Web Server detects a thread deadlock in either its own code or a user application. The service dump contains a snapshot of all the important state from the running Web Server instance. <span class="bold"><strong>NOTE:</strong></span> This snapshot is not intended for end user consumption but is useful for service personnel.</p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>Dump Inspector</strong></span> link at the top.</p></li><li><p>In the drop-down box on the left, select the dump you want to inspect based on its timestamp.</p></li><li><p>Click <span class="bold"><strong>Select Dump</strong></span>.</p></li><li><p>In the right drop-down box, select the type of dump information you want to view.</p><p>For example, <code class="literal">summary.txt</code> provides a short summary of why the dump might have occurred. The <code class="literal">thread.txt</code> option provides information about the state of the Web Server threads at the time of the dump, including any that were deadlocked. The <code class="literal">repository</code> options provide information about what was in the external and user repositories at the time of the dump. The <code class="literal">configurationAdmin.properties</code> option provides a snapshot of the complete configuration of Web Server, including the kernel and repositories.</p></li><li><p>Click <span class="bold"><strong>Select Entry</strong></span>.</p><p>The Admin Console displays the information in the Dump Entry Viewer, as shown in the following graphic:</p><p><img src="images/console-dump-details.png"></p></li></ol></div><p>
- Note that the dump entry <code class="literal">osgi.zip</code> is a binary OSGi state dump which should be viewed as described in
- <a class="link" href="ch07s02.html#admin-console-view-osgi-state" title="Viewing Overview and Details of the OSGi State">Viewing Overview and Details of the OSGi State</a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-view-osgi-state"></a>Viewing Overview and Details of the OSGi State</h3></div></div></div><p>
- The following procedure describes how you can view the OSGi state of the Web Server, either currently or at the time that a particular service dump
- occurred.
- </p><p>
- The OSGi state is a list of bundles that are currently installed. When viewing the current state, additional information is available
- such as whether each bundle is Spring powered and a list of services in the OSGi service registry. This additional information is not available
- when viewing a state dump.
- </p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>OSGi State</strong></span> link at the top.</p><p>By default, the Admin Console displays the complete list of bundles that are currently installed in Web Server.</p><p>For each bundle, the console displays its internal ID, its symbolic name, its version, and its current state (usually either Active or Resolved.)</p></li><li><p>To view the bundles that were installed at the time of a service dump, select the service dump based on its timestamp from the drop-down box on the
- right and click <span class="bold"><strong>Go</strong></span>. </p></li><li><p>To view details about a particular bundle, click on its bundle ID. A full description of the bundle is displayed, as shown in the following graphic:</p><p><img src="images/console-osgi-state.png"></p><p>The console displays again the symbolic name, version, and internal ID of the bundle. It then displays whether the bundle is Spring powered and the exact physical location of the bundle JAR file on the computer that hosts Web Server.</p><p>The console then displays the full list of packages that the bundle imports, as well as the bundles that in turn export these imported packages. The console also displays the packages that the current bundle exports, and then in turn the list of other installed bundles that are currently importing these exported packages. For each package, you can drill down and view details of the corresponding bundle.</p><p>Similarly, the console displays the consumed and provided OSGi services. </p><p>Finally, the console also displays information about the Spring context, if the bundle is Spring powered. </p></li><li><p>To view the full list of OSGi services, click the <code class="literal">Services Overview</code> link from the main OSGi state page</p></li><li><p>Typically, the list of bundles and services can be very long, making it difficult to find a particular bundle. Use the <span class="bold"><strong>Search</strong></span> box at the top right corner to narrow down the list of displayed bundles.</p></li></ol></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch07.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch08.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7. The Web Admin Console </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 8. The Provisioning Repository</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch08.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch08.html
deleted file mode 100644
index 07e5aaf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch08.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>8. The Provisioning Repository</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch07s02.html" title="7.2 Typical Admin Console Use Cases"><link rel="next" href="ch08s02.html" title="8.2 Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">8. The Provisioning Repository</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch07s02.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch08s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="repository"></a>8. The Provisioning Repository</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="repository-introduction"></a>8.1 Overview of the Provisioning Repository</h2></div></div></div><p>
- This section describes the provisioning repository feature of Virgo Web Server, the reasons for using it, and how to configure it.
- </p><p>
- In most use cases, your application has a dependency on one or more separate artifacts; these artifacts might include OSGi bundles, configuration artifacts, third-party libraries, PARs or plans. A typical example is a Spring application that depends on a third-party library such as Spring Framework or Hibernate.
- </p><p>
- The way you express this dependency depends on the artifact. For example, a plan is by definition a list of dependent bundles.
- </p><p>
- Libraries are another example. Some third-party dependencies consist of multiple bundles but are logically one unit. To support this, the Virgo Web Server introduces the concept of a library. A library is a collection of related bundles that can be referenced as a whole. You typically express the dependencies between your application and third-party libraries using the <code class="literal">Import-Package</code>, <code class="literal">Import-Bundle</code>, or <code class="literal">Import-Library</code> manifest header in the <code class="literal">MANIFEST.MF</code> file of your application. The <code class="literal">Import-Package</code> header is standard to OSGi; <code class="literal">Import-Bundle</code> and <code class="literal">Import-Library</code>, however, are specific to Virgo Web Server.
- </p><p>
- For additional details about the creation and usage of libraries, as well as general information about dependencies, see <a class="ulink" href="../../programmer-guide/html/index.html" target="_top">Programmer’s Guide</a>.
- </p><p>
- In Virgo Web Server, you store all third-party dependencies required by your applications, such as Spring Framework and Hibernate, as artifacts in the provisioning repository. As mentioned above, you can store the following types of artifacts in the repository:
- </p><div class="itemizedlist"><ul type="disc"><li>OSGi bundles</li><li>Libraries</li><li>PARs</li><li>Plans</li><li>Configuration Artifacts</li></ul></div><p>
- When you deploy your application, Virgo Web Server installs the bundle(s) comprising the application to the VWS runtime; part of this internal installation procedure is to satisfy all the application’s dependencies. If your application has a dependency that cannot be satisfied from the bundles that you have already deployed (and VWS has thus installed), then VWS searches the provisioning repository for an artifact that can satisfy that dependency.
- </p><p>
- The provisioning repository for a particular instance of Virgo Web Server can include artifacts in the following general locations:
- </p><div class="itemizedlist"><ul type="disc"><li>Local: This means that artifacts have been physically installed in the provisioning repository directory structure of the local Virgo Web Server instance. The artifacts in a local repository include installed third-party libraries, bundles supplied by VWS, bundles supplied by an end user, and internal bundles used only by VWS. You can further categorize this location into <code class="literal">external</code> directories that adhere to a specified search pattern and are scanned by VWS just on a clean startup, or <code class="literal">watched</code> directories that point to a single directory location and which VWS scans on a regular basis. </li><li>Remote: This means that a local instance of Virgo Web Server gets the artifact from a remotely-hosted repository that is physically located on a remote Virgo Web Server instance. </li></ul></div><p>
- You configure the provisioning repository using the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.properties</code> file.
- </p><p> As previously described, a particular instance of Virgo Web Server can itself also act as a repository host for remote server instances to use when satisfying the dependencies of the applications deployed to it. In this case, you configure a hosted repository using the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.hosted.properties</code> file. Typically, only remote clients use hosted repositories and their contents; the Virgo Web Server instance that actually hosts the repository does not typically use the artifacts in it. Rather, it uses artifacts in its local repository.
- </p><p>
- Making a third-party dependency available to your application is simply a matter of adding its artifact to the appropriate location in the provisioning repository. This could be either in the local directories or the remote ones if you are getting artifacts from a remotely-hosted repository.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="repository-structure"></a>Local Repository Structure</h3></div></div></div><p>
- When you first install Virgo Web Server, the local provisioning repository is located at <code class="literal">$SERVER_HOME/repository</code> by default and consists of two main directories: <code class="literal">ext</code> and <code class="literal">usr</code>. The <code class="literal">ext</code> directory contains artifacts supplied with the Virgo Web Server and <code class="literal">usr</code> contains artifacts supplied by the user.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="repository-installing-bundles"></a>Installing Artifacts to a Repository</h3></div></div></div><p>
- To install an artifact into the default repository, simply copy it into the <code class="literal">$SERVER_HOME/repository/usr</code> directory.
- </p><p>If you have configured additional watched or external repositories (additional, that is, to the default ones already configured in a freshly-installed VWS instance), you install the artifacts in the same way: simply copy the files to the configured directories. You configure additional watched or external repositories in the same file as the default repositories: <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.properties</code>.
- </p><p>When you install a plan or a library, you must ensure that all referenced artifacts within the plan or library have been installed as well.
- </p><p>Artifacts must have unique names so it is considered best practice to include the version number in the file name,
- allowing for multiple versions of the artifact to be installed at the same time. For example, a bundle file name might be <code class="literal">my-exciting-bundle.2.1.0.jar</code>.
- </p><p>
- For watched repositories, such as <code class="literal">$SERVER_HOME/repository/usr</code>, the Virgo Web Server automatically detects changes
- at runtime, thereby avoiding the need to restart the VWS.
- </p><p>
- Of specific relevance during development is picking up changes to an application’s direct dependencies during deployment of the application. For example, if you deploy an application and receive a message that a dependency is missing, you can simply add the dependency to the repository and then redeploy the application. The redeploy will cause the new dependency to be picked up, allowing progress to be made without restarting the VWS. For other changes such as addition of optional dependencies, the Virgo Web Server must be restarted to pick up any changes to the provisioning repository.
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch07s02.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch08s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">7.2 Typical Admin Console Use Cases </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 8.2 Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch08s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch08s02.html
deleted file mode 100644
index c4c1df3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch08s02.html
+++ /dev/null
@@ -1,24 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>8.2 Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch08.html" title="8. The Provisioning Repository"><link rel="prev" href="ch08.html" title="8. The Provisioning Repository"><link rel="next" href="ch08s03.html" title="8.3 Configuring the repository"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">8.2 Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch08.html">Prev</a> </td><th width="60%" align="center">8. The Provisioning Repository</th><td width="20%" align="right"> <a accesskey="n" href="ch08s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="repository-brits"></a>8.2 Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository</h2></div></div></div><p>
- The SpringSource Enterprise Bundle Repository is a public collection of open source libraries commonly used for developing enterprise Java applications with the Spring Framework and VWS. It contains hundreds of the most popular enterprise Java libraries made available for general use in an OSGi-ready format. You can browse the collection and then download the bundles that you need into your own local repository.
- </p><p>
- The SpringSource Enterprise Bundle Repository is located <a class="ulink" href="http://www.springsource.com/repository" target="_top">here</a>.
- </p><p>
- <img src="images/bundle-repository.png">
- </p><p>
- You can find bundles in the repository using a number of options. You use the ‘Search’ facility by typing in a keyword. The matching criteria returned can be explored by name, symbolic name, class, package or resource.
- </p><p>
- There is also the option of clicking on ‘Browse by Bundle’. This gives an alphabetical list of bundles. You can select the desired bundle to see details and find the download link. Finally, you can also choose to ‘Browse by Library’, which allows you to browse the alphabetical list of libraries in the repository.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch08.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch08.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch08s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">8. The Provisioning Repository </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 8.3 Configuring the repository</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch08s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch08s03.html
deleted file mode 100644
index 20e6a52..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch08s03.html
+++ /dev/null
@@ -1,17 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>8.3 Configuring the repository</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch08.html" title="8. The Provisioning Repository"><link rel="prev" href="ch08s02.html" title="8.2 Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository"><link rel="next" href="ch09.html" title="9. Serviceability"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">8.3 Configuring the repository</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch08s02.html">Prev</a> </td><th width="60%" align="center">8. The Provisioning Repository</th><td width="20%" align="right"> <a accesskey="n" href="ch09.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="repository-configuration"></a>8.3 Configuring the repository</h2></div></div></div><p>Details of how to configure a Virgo Web Server installation’s provisioning repository can be found in <a class="link" href="ch11s04.html" title="11.4 Configuring the Local Provisioning Repository">Configuring the Provisioning Repository</a>. See <a class="link" href="ch11s05.html" title="11.5 Configuring a Hosted Repository">Configuring a Hosted Repository</a> for details on how to configure a repository that remote clients can access, also called a hosted repository.
- </p><p>
- The two configuration chapters describe the format of the repository properties files of Virgo Web Server, how to add new directories to the local repository, how to configure the repository to get artifacts from a remote repository hosted on a remote VWS instance, and how to configure the local VWS instance to itself host a repository that other remote servers access.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch08s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch08.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch09.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">8.2 Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 9. Serviceability</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch09.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch09.html
deleted file mode 100644
index 4620e93..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch09.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>9. Serviceability</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch08s03.html" title="8.3 Configuring the repository"><link rel="next" href="ch09s02.html" title="9.2 (Trace) Logging"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9. Serviceability</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch08s03.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch09s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="serviceability"></a>9. Serviceability</h2></div></div></div><p>
- Virgo Web Server supports two kinds of logging: <span class="emphasis"><em>Event Logging</em></span> and <span class="emphasis"><em>Trace logging</em></span> which is usually referred
- to simply as <span class="emphasis"><em>Logging</em></span>. The difference between Event Logging and Logging is explained below, but both are configured in the <code class="literal">serviceability.xml</code> file in the <code class="literal">config</code> directory.
-This file takes the form of a Logback configuration—VWS
-uses a Logback implementation behind the SLF4J logging interface.
-</p><p>
-For a description of the syntax and facilities provided by <code class="literal">serviceability.xml</code>
-see the <span class="emphasis"><em>Logback</em></span> documentation (referenced in <a class="xref" href="apc.html" title="Appendix C. Further Reading">Appendix C, <i>
- Further Reading
- </i></a>).
-</p><p>
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="serviceability-info-log"></a>9.1 Event logging</h2></div></div></div><p>
- Event logging records important events in Virgo Web Server. Each event is logged to
- an event log file and is accompanied by a code enclosed in angle brackets.
- An example is shown below:
-</p><pre class="screen">
-[2010-10-25 16:20:45.897] system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme http on port 8080.
-</pre><p>
- (For a description of the log code syntax, see <a class="xref" href="apa.html" title="Appendix A. Event log codes">Appendix A, <i>Event log codes</i></a>.)
- The format of event log messages is fully configurable.
- </p><p>
- By default, event log messages are stored in <code class="literal">$SERVER_HOME/serviceability/eventlogs/eventlog.log</code>.
- </p><p>
- The default behaviour is that, once <code class="literal">eventlog.log</code> reaches a 10Mb limit, it rolls into a series of files named
- <code class="literal">eventlog_</code><span class="emphasis"><em>i</em></span><code class="literal">.log</code> where <span class="emphasis"><em>i</em></span> ranges from 1 to 4, and event logging continues in
- a new <code class="literal">eventlog.log</code> file.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch08s03.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch09s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">8.3 Configuring the repository </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 9.2 (Trace) Logging</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch09s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch09s02.html
deleted file mode 100644
index 6fcd7ac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch09s02.html
+++ /dev/null
@@ -1,75 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>9.2 (Trace) Logging</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch09.html" title="9. Serviceability"><link rel="prev" href="ch09.html" title="9. Serviceability"><link rel="next" href="ch09s03.html" title="9.3 Service Dumps"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9.2 (Trace) Logging</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch09.html">Prev</a> </td><th width="60%" align="center">9. Serviceability</th><td width="20%" align="right"> <a accesskey="n" href="ch09s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="serviceability-info-trace"></a>9.2 (Trace) Logging</h2></div></div></div><p>
- The Virgo Web Server’s (trace) logging support serves two main purposes:
- </p><div class="itemizedlist"><ul type="disc"><li>
- It provides global trace files that capture high-volume information regarding the Virgo Web Server’s internal events.
- The files are intended
- for use by support personnel to diagnose runtime problems.
- </li><li>
- It provides application trace files that contain application-generated output.
- This includes output generated using popular logging and
- tracing APIs, as well as output generated by calls to <code class="literal">System.out</code> and <code class="literal">System.err</code>.
- These files are
- intended for use by application developers and system administrators.
- </li></ul></div><p>
- </p><p>
- By default, the VWS trace file is called
- <code class="literal">$SERVER_HOME/serviceability/logs/log.log</code>,
- and, again by default, the application trace files are called
- <code class="literal">$SERVER_HOME/serviceability/logs/</code><span class="emphasis"><em>application_name</em></span><code class="literal">/log.log</code>,
- where <span class="emphasis"><em>application_name</em></span> is automatically set by VWS for each application artifact installed and run
- (it is a combination of the artifact name and the version).
- </p><p>
- The default behaviour of these trace files is that, once <code class="literal">log.log</code> reaches a 10Mb limit, it rolls into a series of files named
- <code class="literal">log_</code><span class="emphasis"><em>i</em></span><code class="literal">.log</code> where <span class="emphasis"><em>i</em></span> ranges from 1 to 4, and logging continues in
- a new <code class="literal">log.log</code> file.
- </p><p>
- Entries in trace files are by default of the form <timestamp> <thread-name> <source> <level> <entry-text>. For example:
- </p><pre class="screen">
-[2008-05-15 09:09:46.940] server-dm-2 org.apache.coyote.http11.Http11Protocol I Initializing Coyote HTTP/1.1 on http-48080
- </pre><p>
- although this format is completely determined by the Logback configuration file <code class="literal">serviceability.xml</code>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="serviceability-info-trace-app"></a>Application Output</h3></div></div></div><p>
- Virgo Web Server provides advanced support for capturing and tracing application-generated output by automatically separating trace output on a
- per-application basis and will also capture any <code class="literal">System.out</code> and <code class="literal">System.err</code> output.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="per-application-trace"></a>Per-application trace</h4></div></div></div><p>
- Virgo Web Server uses SLF4J interfaces to Logback, and the root logger (by default) captures all logging output
- and appends it to the application-specific trace files as described above.
- To modify this, define application-specific loggers in the <code class="literal">serviceability.xml</code> file in the normal way.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="sysout-and-syserr"></a>System.out and System.err</h4></div></div></div><p>
- <code class="literal">System.out</code> and <code class="literal">System.err</code> output from applications is, by default, captured in the
- application’s trace file.
- This happens because the output streams are intercepted and written to the loggers named
- <code class="literal">System.out</code> and <code class="literal">System.err</code> respectively.
- Since there are no explicit loggers defined with these names in the <code class="literal">serviceability.xml</code> file,
- this output is logged by the root logger (which captures <code class="literal">INFO</code> level and above).
- </p><p>
- The capture of <code class="literal">System.out</code> and <code class="literal">System.err</code> output is configured in the
- <code class="literal">config/org.eclipse.virgo.medic.properties</code> file by the <code class="literal">log.wrapSysOut</code> and
- <code class="literal">log.wrapSysErr</code> properties. By default the properties have a value of <code class="literal">true</code>
- and capture is enabled. Capture can be disabled by configuring the properties with a value of <code class="literal">false</code>.
- </p><p>
- The trace entries for <code class="literal">System.out</code> and <code class="literal">System.err</code>
- output are of the form:
- </p><pre class="screen">
-[2008-05-16 09:28:45.874] server-tomcat-thread-1 System.out Hello world!
-[2008-05-16 09:28:45.874] server-tomcat-thread-1 System.err Hello world!
- </pre><p>
- The third column indicates where the output came from (<code class="literal">System.out</code> or <code class="literal">System.err</code>).
- </p><p>
- To over-ride this behaviour, simply define explicit loggers named <code class="literal">System.out</code>
- and/or <code class="literal">System.err</code> in the configuration file to send this output to an appender of your choice.
- Be aware that all applications’ output streams will be caught by these loggers, and that a sifting appender might be useful to separate them.
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch09.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch09.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch09s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">9. Serviceability </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 9.3 Service Dumps</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch09s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch09s03.html
deleted file mode 100644
index a787c4b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch09s03.html
+++ /dev/null
@@ -1,28 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>9.3 Service Dumps</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch09.html" title="9. Serviceability"><link rel="prev" href="ch09s02.html" title="9.2 (Trace) Logging"><link rel="next" href="ch10.html" title="10. Working with Applications"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">9.3 Service Dumps</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch09s02.html">Prev</a> </td><th width="60%" align="center">9. Serviceability</th><td width="20%" align="right"> <a accesskey="n" href="ch10.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="serviceability-info-dump"></a>9.3 Service Dumps</h2></div></div></div><p>
- A service dump is triggered when one of the following events
- occurs:
- </p><div class="orderedlist"><ol type="1"><li><p>
- A failure is detected in the Virgo Web Server code, or
- </p></li><li><p>
- a thread deadlock is detected.
- </p></li></ol></div><p>
- A service dump contains a snapshot of all the important state from
- the running Virgo Web Server instance. This snapshot is not intended
- for end user consumption but is useful for service personnel.
- </p><p>
- By default, service dumps are created in
- <code class="literal">$SERVER_HOME/serviceability/dump</code>.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch09s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch09.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch10.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">9.2 (Trace) Logging </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 10. Working with Applications</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch10.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch10.html
deleted file mode 100644
index 360cdcf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch10.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>10. Working with Applications</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch09s03.html" title="9.3 Service Dumps"><link rel="next" href="ch10s02.html" title="10.2 Undeploying Artifacts"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">10. Working with Applications</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch09s03.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch10s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="deployment"></a>10. Working with Applications</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="deployment-deploying"></a>10.1 Deploying Artifacts</h2></div></div></div><p>
- In the context of Virgo Web Server, <span class="emphasis"><em>deploying</em></span> refers to installing an artifact to the server and then starting it to make it available to users. Typically, when you install an artifact, VWS automatically starts it as long as the server is able to successfully resolve all its dependencies. For this reason, the terms <span class="emphasis"><em>deploying</em></span> and <span class="emphasis"><em>installing</em></span> are often used interchangeably.
- </p><p>You deploy artifacts to Virgo Web Server using either the hot-deploy directory on the file system or by using the Admin Console. The artifacts that you can deploy to VWS are:
- </p><div class="itemizedlist"><ul type="disc"><li>Bundles, including Web applications</li><li>PARs</li><li>Plans</li><li>Configuration Files</li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-hot"></a>Hot Deploy</h3></div></div></div><p>
- To hot deploy an artifact, copy it into the pickup directory (by default <code class="literal">$SERVER_HOME/pickup</code>):
- </p><pre class="programlisting">prompt$ cd /home/applications
-prompt$ cp helloWorld.war $SERVER_HOME/pickup</pre><p>
- When the artifact is hot deployed, messages similar to the following appear in the log file:
- </p><pre class="screen">[2009-12-10 06:41:01.021] fs-watcher <HD0001I> Hot deployer processing 'CREATED' event for file 'helloWorld.war'.
-[2009-12-10 06:41:01.087] fs-watcher <DE0000I> Installing bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:41:01.274] fs-watcher <DE0001I> Installed bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:41:01.397] fs-watcher <DE0004I> Starting bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:41:01.414] Thread-3 <WE0000I> Starting web bundle 'helloWorld' version '0.0.0' with context path '/helloWorld'.
-[2009-12-10 06:41:01.537] Thread-3 <WE0001I> Started web bundle 'helloWorld' version '0.0.0' with context path '/helloWorld'.
-[2009-12-10 06:41:01.550] start-signalling-1 <DE0005I> Started bundle 'helloWorld' version '0.0.0'.</pre><p>
- If there is a problem with the deployment, such as the server being unable to resolve all dependencies, the console and log both show an error message to help you with troubleshooting.
- </p><p>If there are no problems, VWS automatically starts the artifact so that it is immediately available to users.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-manual"></a>Deploying Using the Admin Console</h3></div></div></div><p>
- The Admin Console allows you to upload a file, which will be deployed automatically, from your local file system to the Virgo Web Server. As soon as Virgo Web Server deploys the artifact, it appears in the list of artifacts in the Admin Console. Note that the GUI for uploading varies according to the browser and operating system you use.
- </p><p>See <a class="link" href="ch07s02.html#admin-console-install-artifacts" title="Installing a New Artifact">Installing a New Artifact</a> for details about using the Admin Console to install (deploy) an artifact. See <a class="link" href="ch07.html" title="7. The Web Admin Console">The Web Admin Console</a> for general information about the Admin Console.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-happens"></a>What Happens When You Deploy</h3></div></div></div><p>
- When you deploy an artifact, either using hot-deployment or the Admin Console, Web Server copies the file to its work directory (<code class="literal">SERVER_HOME/work</code>) and registers it in its internal registry.
- The server then checks any dependencies the artifact might have to see if
- deployment can go ahead, and if all dependencies are resolved, Virgo Web Server starts the artifact.
- Because of all these additional internal activities, you should NOT simply copy the artifact into the <code class="literal">work</code> directory and assume it will be deployed, because Virgo Web Server will not do so.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-ordering"></a>Deployment Ordering</h3></div></div></div><p>
- When deploying bundles that have dependencies, it is important
- that you deploy them in the correct order. Virgo Web Server
- honors this ordering when it redeploys the artifacts on startup.
- </p><p>
- If you use hot deployment to deploy your artifacts, be sure to copy the corresponding files into the pickup
- directory one-by-one. Copying the files in one group, for example by using a single <code class="literal">cp</code> command. provides no guarantees of ordering.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-restrictions"></a>Restrictions</h3></div></div></div><p>
- Virgo Web Server does not support deploying fragment bundles. Typically, fragment bundles should be placed in <code class="literal">$SERVER_HOME/repository/ext</code>
- or <code class="literal">$SERVER_HOME/repository/usr</code> so that they will be installed automatically with their host bundles.
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch09s03.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch10s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">9.3 Service Dumps </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 10.2 Undeploying Artifacts</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch10s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch10s02.html
deleted file mode 100644
index 7027b10..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch10s02.html
+++ /dev/null
@@ -1,31 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>10.2 Undeploying Artifacts</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch10.html" title="10. Working with Applications"><link rel="prev" href="ch10.html" title="10. Working with Applications"><link rel="next" href="ch11.html" title="11. Configuration"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">10.2 Undeploying Artifacts</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch10.html">Prev</a> </td><th width="60%" align="center">10. Working with Applications</th><td width="20%" align="right"> <a accesskey="n" href="ch11.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="deployment-undeploy"></a>10.2 Undeploying Artifacts</h2></div></div></div><p>
- You undeploy artifacts from Virgo Web Server by using either the hot-deploy directory on the file system, or the Admin Console.
- </p><p><span class="bold"><strong>Note:</strong></span> As with deploying, in this guide the terms <span class="emphasis"><em>undeploying</em></span> and <span class="emphasis"><em>uninstalling</em></span> are used interchangeably.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-undeploy-hot"></a>Hot Undeploy</h3></div></div></div><p>
- To hot-undeploy an artifact, remove the corresponding file from the pickup directory (by default <code class="literal">$SERVER_HOME/pickup</code>):
- </p><pre class="programlisting">prompt$ cd $SERVER_HOME/pickup
-prompt$ rm helloWorld.war</pre><p>
- When Virgo Web Server completes the undeployment of the artifact, messages similar to the following appear in the log:
- </p><pre class="screen">[2009-12-10 06:46:33.254] fs-watcher <HD0001I> Hot deployer processing 'DELETED' event for file 'helloWorld.war'.
-[2009-12-10 06:46:33.259] Thread-3 <WE0002I> Stopping web bundle 'helloWorld' version '0.0.0' with context path '/helloWorld'.
-[2009-12-10 06:46:33.285] Thread-3 <WE0003I> Stopped web bundle 'helloWorld' version '0.0.0' with context path '/helloWorld'.
-[2009-12-10 06:46:33.290] fs-watcher <DE0010I> Stopping bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:46:33.295] fs-watcher <DE0011I> Stopped bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:46:33.302] fs-watcher <DE0013I> Uninstalling bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:46:33.319] fs-watcher <DE0014I> Uninstalled bundle 'helloWorld' version '0.0.0'.</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-undeploy-manual"></a>Undeploying Using the Admin Console</h3></div></div></div><p>
- You can undeploy only whole artifacts from the Admin Console, or in other words, you cannot undeploy the separate modules or bundles that make up an artifact.</p><p>
- The only artifact that you cannot undeploy from the Admin Console is the Admin Console itself. If you need to undeploy this application, you must remove it from the pickup directory (by default <code class="literal">SERVER_HOME/pickup</code>); the name of the artifact is
- <code class="literal">org.eclipse.virgo.server.admin-2.1.0.RELEASE.plan</code>.
- </p><p>See <a class="link" href="ch07s02.html#admin-console-manage-artifacts" title="Viewing and Managing the Lifecycle of Deployed Artifacts">Viewing and Managing the Lifecycle of Deployed Artifacts</a> for details about uninstalling (undeploying) an artifact using the Admin Console. The high-level steps are to highlight the artifact in the artifact tree then click <code class="literal">Uninstall</code>. </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch10.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch10.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch11.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">10. Working with Applications </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 11. Configuration</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11.html
deleted file mode 100644
index 2618318..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>11. Configuration</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="index.html" title="Virgo User Guide"><link rel="prev" href="ch10s02.html" title="10.2 Undeploying Artifacts"><link rel="next" href="ch11s02.html" title="11.2 Configuring Serviceability"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">11. Configuration</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch10s02.html">Prev</a> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch11s02.html">Next</a></td></tr></table><hr></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="configuring"></a>11. Configuration</h2></div></div></div><p>You use configuration files in the <code class="literal">$SERVER_HOME/config</code> directory to configure VWS. You can also configure the OSGi framework using files in <code class="literal">$SERVER_HOME/lib</code>. This section divides the configuration of the server into the following high-level tasks:</p><div class="itemizedlist"><ul type="disc"><li><p><a class="link" href="ch11.html#configuring-kernel" title="11.1 Configuring the Virgo Kernel and User Region">Configuring the kernel and the user region.</a></p></li><li><p><a class="link" href="ch11s03.html" title="11.3 Configuring the Embedded Tomcat Servlet Container">Configuring embedded Tomcat servlet container.</a></p></li><li><p><a class="link" href="ch11s02.html" title="11.2 Configuring Serviceability">Configuring serviceability.</a></p></li><li><p><a class="link" href="ch11s04.html" title="11.4 Configuring the Local Provisioning Repository">Configuring the local provisioning repository.</a></p></li><li><p><a class="link" href="ch11s05.html" title="11.5 Configuring a Hosted Repository">Configuring the hosted repository.</a></p></li><li><p><a class="link" href="ch11s06.html" title="11.6 Configuring the OSGi Framework">Configuring the OSGi framework.</a></p></li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-kernel"></a>11.1 Configuring the Virgo Kernel and User Region</h2></div></div></div><p>This section provides information about configuring the VWS kernel and the user region by updating the following files in the <code class="literal">$SERVER_HOME/config</code> directory:</p><div class="table"><a name="configuring-kernel-table"></a><p class="title"><b>Table 11.1. Kernel Configuration Files </b></p><div class="table-contents"><table summary="Kernel Configuration Files " style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property File (prefixed by <code class="literal">org.eclipse.virgo</code>)</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">.kernel.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures <a class="link" href="ch11.html#configuring-deployment" title="Configuring Deployment">deployment</a>. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">.kernel.userregion.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures the <a class="link" href="ch11.html#configuring-user-region" title="Configuring the User Region">user region</a> of VWS and enables the OSGi console.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">.kernel.users.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures the <a class="link" href="ch11.html#configuring-authentication" title="Configuring Authentication">users that are allowed to access</a> the Admin Console, and roles to which they map. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">.kernel.jmxremote.access.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures the <a class="link" href="ch11.html#configuring-authentication" title="Configuring Authentication">permissions for users</a> that are allowed to access the Admin Console. </td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">.kernel.authentication.config</code></td><td style="">Configures the <a class="link" href="ch11.html#configuring-authentication" title="Configuring Authentication">Java Authentication and Authorization Service (JAAS)</a> for the Tomcat server users.</td></tr></tbody></table></div></div><br class="table-break"><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-deployment"></a>Configuring Deployment</h3></div></div></div><p>You can configure two properties of deployment: the pickup directory into which you copy applications for hot-deployment and the deployment timeout. </p><p>To change any of these properties, edit the <code class="literal">deployer.XXX</code> properties of the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.properties</code> file. The following table describes these properties. </p><div class="table"><a name="configuring-deployment-table"></a><p class="title"><b>Table 11.2. Deployment Configuration Properties</b></p><div class="table-contents"><table summary="Deployment Configuration Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">deployer.pickupDirectory</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the absolute or relative path to the pickup directory to which you copy applications for hot-deployment. Relative paths are relative to <code class="literal">$SERVER_HOME</code>. The default value is <code class="literal">./pickup</code>.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">deployer.timeout</code></td><td style="">Specifies the amount of time, in seconds, after which VWS times out while trying to deploy a bundle, library, or plan. The default value is <code class="literal">300</code>. If you want to disable deployment timeout, specify <code class="literal">0</code>.</td></tr></tbody></table></div></div><br class="table-break"><p>The following listing displays the default configuration distributed with the VWS; only relevant sections of the <code class="literal">org.eclipse.virgo.kernel.properties</code> file are shown. </p><pre class="programlisting">deployer.timeout=300
-deployer.pickupDirectory=pickup</pre><p>As the default configuration shows, the default pickup directory is <code class="literal">$SERVER_HOME/pickup</code> and the deployment timeout is 300 seconds.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-user-region"></a>Configuring the User Region</h3></div></div></div><p>
- The user region is the subsystem of VWS that
- supports deployed applications, both your own user applications and
- those of the server itself, such as the Admin Console. The user region
- is deliberately isolated from the kernel, which makes it much simpler
- for you to manage your applications with the Admin Console
- because the internal kernel bundles are not visible.
- </p><p>
- You configure the user region by updating properties in the
- <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.userregion.properties</code>
- file; these properties are described in the following table.
- </p><p>
- <span class="bold"><strong>WARNING:</strong></span>
- We strongly recommend that you update only the
- <code class="literal">initialArtifacts</code> and the <code class="literal">osgi.console</code>
- properties; updating other properties could cause
- VWS to fail. These properties are documented for your
- information.
- </p><div class="table"><a name="configuring-user-region-table"></a><p class="title"><b>Table 11.3. User Region Configuration Properties</b></p><div class="table-contents"><table summary="User Region Configuration Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">baseBundles</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the hard-coded list of bundles that VWS installs directly into the user region. Virgo Web Server does not perform any automatic dependency satisfaction for these bundles; in other words, you only get the bundles in the list and nothing more. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">packageImports</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the packages that exist in the kernel that VWS imports into the user region so that they are in turn available to be imported by bundles in the user region. This property supports a <code class="literal">.*</code> wildcard. For example, <code class="literal">org.eclipse.virgo.util.*</code> will import all packages that start with <code class="literal">org.eclipse.virgo.util</code>.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">serviceImports</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the services in the kernel that are imported into the user region so that they're available to bundles in the user region. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">serviceExports</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the services in the user region that are exported to the kernel so that they're available to bundles in the kernel. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">inheritedFrameworkProperties</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the framework properties, configured in the <code class="literal">$SERVER_HOME/lib/org.eclipse.virgo.kernel.launch.properties</code> file, that will also be set on the user region's nested framework.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">osgi.console</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the port number which the Equinox console will use.
- The usual port number is 2401.
- If specified, the Equinox console is enabled (with the Equinox Console Extension) during user region start.
- If not specified, the Equinox console is not available.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">initialArtifacts</code></td><td style="">Specifies the artifacts that VWS deploys into the user region when the server starts. Virgo Web Server performs dependency satisfaction when it deploys these artifacts. This means that you only need to list the top-level artifacts that you care about; VWS automatically installs any other artifacts upon which they depend from the repository.
- </td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-authentication"></a>Configuring Authentication</h3></div></div></div><p>
- Virgo Web Server uses the
- <a class="ulink" href="http://java.sun.com/javase/6/docs/technotes/guides/security/jaas/JAASRefGuide.html" target="_top">Java Authentication and Authorization Service (JAAS)</a>
- framework to authenticate the administration user that connects to Web
- Servers using the Admin Console. This section describes
- how the authentication mechanism is configured by default, and the
- files that you need to update if you want to change the administration
- user, change their password, and so on.
- </p><p>The <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.authentication.config</code> file configures the underlying authentication technology for VWS. The short file consists of the following entry:</p><pre class="programlisting">virgo-kernel {
- org.eclipse.virgo.kernel.authentication.KernelLoginModule REQUIRED;
-};</pre><p>The entry is named <code class="literal">virgo-kernel</code>. This name corresponds to the <code class="literal"><Realm></code> element in the <code class="literal">$SERVER_HOME/config/tomcat-server.xml</code> file that configures the JAAS authentication mechanism for the <code class="literal">Catalina</code> service of the <a class="link" href="ch11s03.html" title="11.3 Configuring the Embedded Tomcat Servlet Container">Tomcat servlet container</a>. The <code class="literal">virgo-kernel</code> entry specifies that the JAAS LoginModule that VWS uses to authenticate users is <code class="literal">org.eclipse.virgo.kernel.authentication.KernelLoginModule</code> and that this <code class="literal">KernelLoginModule</code> is required to "succeed" in order for authentication to be considered successful. The <code class="literal">KernelLoginModule</code> succeeds only if the name and password supplied by the user are the ones it expects. The default administration username/password pair for Web Server is <code class="literal">admin/springsource</code>. </p><p>You configure the administration user in the <code class="literal">org.eclipse.virgo.kernel.users.properties</code> file. The default file for a freshly installed VWS is as follows:</p><pre class="programlisting">##################
-# User definitions
-##################
-user.admin=springsource
-
-##################
-# Role definitions
-##################
-role.admin=admin</pre><p>
- The administration user that connect to the Admin Console must have the
- <code class="literal">admin</code>
- role. The preceding file shows how, by default, the
- <code class="literal">admin</code>
- role is assigned the
- <code class="literal">admin</code>
- user with password
- <code class="literal">springsource</code>.
- </p><p>If you want to change the administration user, update the <code class="literal">org.eclipse.virgo.kernel.users.properties</code> file. For example, if you want the <code class="literal">juliet</code> user, with password <code class="literal">supersecret</code>, to be the new adminstration user, update the file as shown:</p><pre class="programlisting">##################
-# User definitions
-##################
-user.juliet=supersecret
-
-##################
-# Role definitions
-##################
-role.admin=juliet</pre><p>Be sure to restart VWS after you make this change for it to take effect.</p><p>The final file involved in VWS authentication is <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.jmxremote.access.properties</code>. This file specifies the JMX access privileges that the administration user has; by default they are read and write, as shown in the following listing:</p><pre class="programlisting">admin=readwrite</pre><p>
- The only other value you can enter is
- <code class="literal">readonly</code>, which means that the adminstration user would only be able to <span class="emphasis"><em>view</em></span>
- information using the Admin Console.
- </p></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch10s02.html">Prev</a> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch11s02.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">10.2 Undeploying Artifacts </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 11.2 Configuring Serviceability</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s02.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s02.html
deleted file mode 100644
index 0bb86bd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s02.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>11.2 Configuring Serviceability</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch11.html" title="11. Configuration"><link rel="prev" href="ch11.html" title="11. Configuration"><link rel="next" href="ch11s03.html" title="11.3 Configuring the Embedded Tomcat Servlet Container"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">11.2 Configuring Serviceability</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch11.html">Prev</a> </td><th width="60%" align="center">11. Configuration</th><td width="20%" align="right"> <a accesskey="n" href="ch11s03.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-serviceability"></a>11.2 Configuring Serviceability</h2></div></div></div><p>The serviceability sub-system of VWS allows you to gather and view data and information that you can then use to diagnose problems and failures. Serviceability includes data from:</p><div class="itemizedlist"><ul type="disc"><li><p>
- Service dumps: Contain a snapshot of all the important state from the running VWS instance when an internal failure or thread deadlock is detected.
- </p><p>You configure service dumps for Virgo Web Server using the <a class="link" href="ch11s02.html#configuring-serviceability-medic" title="The org.eclipse.virgo.medic.properties File">org.eclipse.virgo.medic.properties</a> file in the <code class="literal">$SERVER_HOME/config</code> directory. This file also includes some additional logging configuration.</p></li><li><p>
- Event logs and server/application (trace) logging: Logging support in VWS is based on <a class="ulink" href="http://logback.qos.ch/" target="_top">Logback</a>. This means that you now have complete control over the format of log output and have the complete range of Logback's appenders available for your use.
- </p><p>You configure logging for Virgo Web Server using the <a class="link" href="ch11s02.html#configuring-serviceability-logback" title="The serviceability.xml File">serviceability.xml</a> file in the <code class="literal">$SERVER_HOME/config</code> directory. This file is essentially the Logback <code class="literal">logback.xml</code> (or <code class="literal">logback-test.xml</code>) configuration file but renamed for VWS. </p></li></ul></div><p>For additional conceptual information about the serviceability subsystem, see <a class="xref" href="ch09.html" title="9. Serviceability">Chapter 9, <i>Serviceability</i></a>. </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-serviceability-medic"></a>The org.eclipse.virgo.medic.properties File</h3></div></div></div><p>The <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.medic.properties</code> file configures VWS service dumps and whether you want to capture <code class="literal">System.out</code> and <code class="literal">System.err</code> output to your application's trace file. </p><p>The following table describes the properties you can include in the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.medic.properties</code> file. This file configures serviceability properties that VWS includes in addition to those supplied by the Logback, configured in the <code class="literal">serviceability.xml</code> file.</p><div class="table"><a name="medic-properties-table"></a><p class="title"><b>Table 11.4. Serviceability Properties</b></p><div class="table-contents"><table summary="Serviceability Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">dump.root.directory</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the directory to which VWS writes the service dumps. The directory name is relative to <code class="literal">$SERVER_HOME</code>. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">log.wrapSysOut</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies whether you want to capture <code class="literal">System.out</code> output from your applications to the application trace file. The output is logged by VWS's root logger, which captures <code class="literal">INFO</code> level and above.
- <p>Valid values for this property are <code class="literal">true</code> to capture <code class="literal">System.out</code> output, or <code class="literal">false</code> to disable the capture.</p>
- <p>For more information, see <a class="link" href="ch09s02.html#sysout-and-syserr" title="System.out and System.err">System.out and System.err</a>.</p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">log.wrapSysErr</code></td><td style="">Specifies whether you want to capture <code class="literal">System.err</code> output from your applications to the application trace file. The output is logged by VWS's root logger, which captures <code class="literal">INFO</code> level and above.
- <p>Valid values for this property are <code class="literal">true</code> to capture <code class="literal">System.err</code> output, or <code class="literal">false</code> to disable the capture.</p>
- <p>For more information, see <a class="link" href="ch09s02.html#sysout-and-syserr" title="System.out and System.err">System.out and System.err</a>.</p>
- </td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-serviceability-logback"></a>The serviceability.xml File</h3></div></div></div><p>Logging support in VWS is based on <a class="ulink" href="http://logback.qos.ch/" target="_top">Logback</a>, which is a successor of the log4j project. The Logback logging framework is faster, more reliable, and easier to use than log4j and certain other logging systems.</p><p>You configure logging for Virgo Web Server using the <code class="literal">$SERVER_HOME/config/serviceability.xml</code> file. This file is the standard Logback <code class="literal">logback.xml</code> or <code class="literal">logback-test.xml</code> configuration file, but renamed for VWS. </p><p>The following listing shows the default <code class="literal">serviceability.xml</code> file in a freshly-installed VWS; see the text after the listing for a brief overview of the file:</p><pre class="programlisting"><<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"SIFTED_LOG_FILE"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.sift.SiftingAppender"</span>>
- <<span class="hl-tag">discriminator</span>>
- <<span class="hl-tag">Key</span>>applicationName<<span class="hl-tag">/Key</span>>
- <<span class="hl-tag">DefaultValue</span>>virgo-server<<span class="hl-tag">/DefaultValue</span>>
- <<span class="hl-tag">/discriminator</span>>
- <<span class="hl-tag">sift</span>>
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"${applicationName}_LOG_FILE"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.RollingFileAppender"</span>>
- <<span class="hl-tag">file</span>>serviceability/logs/${applicationName}/log.log<<span class="hl-tag">/file</span>>
- <<span class="hl-tag">rollingPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.FixedWindowRollingPolicy"</span>>
- <<span class="hl-tag">FileNamePattern</span>>serviceability/logs/${applicationName}/log_%i.log<<span class="hl-tag">/FileNamePattern</span>>
- <<span class="hl-tag">MinIndex</span>>1<<span class="hl-tag">/MinIndex</span>>
- <<span class="hl-tag">MaxIndex</span>>4<<span class="hl-tag">/MaxIndex</span>>
- <<span class="hl-tag">/rollingPolicy</span>>
- <<span class="hl-tag">triggeringPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"</span>>
- <<span class="hl-tag">MaxFileSize</span>>10MB<<span class="hl-tag">/MaxFileSize</span>>
- <<span class="hl-tag">/triggeringPolicy</span>>
- <<span class="hl-tag">encoder</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.encoder.PatternLayoutEncoder"</span>>
- <<span class="hl-tag">Pattern</span>>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-28.28thread %-64.64logger{64} %X{medic.eventCode} %msg %ex%n<<span class="hl-tag">/Pattern</span>>
- <<span class="hl-tag">/encoder</span>>
- <<span class="hl-tag">/appender</span>>
- <<span class="hl-tag">/sift</span>>
- <<span class="hl-tag">/appender</span>>
-
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"LOG_FILE"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.RollingFileAppender"</span>>
- <<span class="hl-tag">file</span>>serviceability/logs/log.log<<span class="hl-tag">/file</span>>
- <<span class="hl-tag">rollingPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.FixedWindowRollingPolicy"</span>>
- <<span class="hl-tag">FileNamePattern</span>>serviceability/logs/log_%i.log<<span class="hl-tag">/FileNamePattern</span>>
- <<span class="hl-tag">MinIndex</span>>1<<span class="hl-tag">/MinIndex</span>>
- <<span class="hl-tag">MaxIndex</span>>4<<span class="hl-tag">/MaxIndex</span>>
- <<span class="hl-tag">/rollingPolicy</span>>
- <<span class="hl-tag">triggeringPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"</span>>
- <<span class="hl-tag">MaxFileSize</span>>10MB<<span class="hl-tag">/MaxFileSize</span>>
- <<span class="hl-tag">/triggeringPolicy</span>>
- <<span class="hl-tag">encoder</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.encoder.PatternLayoutEncoder"</span>>
- <<span class="hl-tag">Pattern</span>>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-28.28thread %-64.64logger{64} %X{medic.eventCode} %msg %ex%n<<span class="hl-tag">/Pattern</span>>
- <<span class="hl-tag">/encoder</span>>
- <<span class="hl-tag">/appender</span>>
-
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"EVENT_LOG_STDOUT"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.eclipse.virgo.medic.log.logback.ReroutingAwareConsoleAppender"</span>>
- <<span class="hl-tag">encoder</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.encoder.PatternLayoutEncoder"</span>>
- <<span class="hl-tag">Pattern</span>>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-28.28thread &lt;%X{medic.eventCode}&gt; %msg %ex%n<<span class="hl-tag">/Pattern</span>>
- <<span class="hl-tag">/encoder</span>>
- <<span class="hl-tag">/appender</span>>
-
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"EVENT_LOG_FILE"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.RollingFileAppender"</span>>
- <<span class="hl-tag">file</span>>serviceability/eventlogs/eventlog.log<<span class="hl-tag">/file</span>>
- <<span class="hl-tag">rollingPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.FixedWindowRollingPolicy"</span>>
- <<span class="hl-tag">FileNamePattern</span>>serviceability/eventlogs/eventlog_%i.log<<span class="hl-tag">/FileNamePattern</span>>
- <<span class="hl-tag">MinIndex</span>>1<<span class="hl-tag">/MinIndex</span>>
- <<span class="hl-tag">MaxIndex</span>>4<<span class="hl-tag">/MaxIndex</span>>
- <<span class="hl-tag">/rollingPolicy</span>>
- <<span class="hl-tag">triggeringPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"</span>>
- <<span class="hl-tag">MaxFileSize</span>>10MB<<span class="hl-tag">/MaxFileSize</span>>
- <<span class="hl-tag">/triggeringPolicy</span>>
- <<span class="hl-tag">encoder</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.encoder.PatternLayoutEncoder"</span>>
- <<span class="hl-tag">Pattern</span>>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-28.28thread &lt;%X{medic.eventCode}&gt; %msg %ex%n<<span class="hl-tag">/Pattern</span>>
- <<span class="hl-tag">/encoder</span>>
- <<span class="hl-tag">/appender</span>>
-
- <<span class="hl-tag">logger</span> <span class="hl-attribute">level</span>=<span class="hl-value">"INFO"</span> <span class="hl-attribute">additivity</span>=<span class="hl-value">"false"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.eclipse.virgo.medic.eventlog.localized"</span>>
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"EVENT_LOG_STDOUT"</span> />
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"EVENT_LOG_FILE"</span> />
- <<span class="hl-tag">/logger</span>>
-
- <<span class="hl-tag">logger</span> <span class="hl-attribute">level</span>=<span class="hl-value">"INFO"</span> <span class="hl-attribute">additivity</span>=<span class="hl-value">"false"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.eclipse.virgo.medic.eventlog.default"</span>>
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"SIFTED_LOG_FILE"</span> />
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"LOG_FILE"</span> />
- <<span class="hl-tag">/logger</span>>
-
- <<span class="hl-tag">root</span> <span class="hl-attribute">level</span>=<span class="hl-value">"INFO"</span>>
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"SIFTED_LOG_FILE"</span> />
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"LOG_FILE"</span> />
- <<span class="hl-tag">/root</span>>
-
-<<span class="hl-tag">/configuration</span>></pre><p>Logback allows VWS to use logger, appender, and encoder (layout) objects to log messages according to message type and level and to format these messages and define where they are written. The default <code class="literal">serviceability.xml</code> file shown above includes four appenders and three loggers (two user and one root.)</p><p>The main information to get from this file is that VWS writes log messages to four different locations that map to the four appenders:</p><div class="itemizedlist"><ul type="disc"><li><p>The <code class="literal">SIFTED_LOG_FILE</code> appender logs both global and application-specific messages to the <code class="literal">$SERVER_HOME/serviceability/logs/</code><span class="emphasis"><em><code class="literal">applicationName</code></em></span><code class="literal">/log.log</code> file, where <span class="emphasis"><em><code class="literal">applicationName</code></em></span> refers to the name of the application. The log messages for the VWS itself are logged to the <code class="literal">$SERVER_HOME/serviceability/logs/virgo-server/log.log</code> file. Because this appender creates different log files for each application, it is called a <span class="emphasis"><em>sifting appender</em></span>. </p><p>
- The default behaviour of these trace files is that, once <code class="literal">log.log</code> reaches a 10Mb limit, it rolls into a series of files named
- <code class="literal">log_</code><span class="emphasis"><em>i</em></span><code class="literal">.log</code> where <span class="emphasis"><em>i</em></span> ranges from 1 to 4, and logging continues in
- a new <code class="literal">log.log</code> file. This is called its <span class="emphasis"><em>rolling policy</em></span>.
- </p><p>The <code class="literal"><Pattern></code> element defines the format of each log message; messages include the timestamp, the thread that generated the log message, the context-specific event code, and a stack trace of the exception, if any. For example:</p><p><code class="literal">[2008-05-15 09:09:46.940] server-dm-2 org.apache.coyote.http11.Http11Protocol I Initializing Coyote HTTP/1.1 on http-48080</code></p></li><li><p>The <code class="literal">LOG_FILE</code> appender is very similar to the first one, but it logs <span class="emphasis"><em>all</em></span> log messages to the <code class="literal">$SERVER_HOME/serviceability/log/log.log</code> file rather than sifting application-specific messages to their own log file. The rolling policy and message format for this appender is similar to that of the <code class="literal">SIFTED_LOG_FILE</code> appender.</p></li><li><p>The <code class="literal">EVENT_LOG_STDOUT</code> appender does not log messages to a file, but rather to the console window from which you started VWS. For example:</p><p><code class="literal">[2010-10-25 16:20:49.367] Thread-3 <WE0000I> Starting web bundle 'org.eclipse.virgo.apps.admin.web' version '2.1.0.RELEASE' with context path '/admin'.</code></p></li><li><p>The <code class="literal">EVENT_LOG_FILE</code> appender logs only important events to the <code class="literal">$SERVER_HOME/serviceability/eventlogs/eventlog.log</code> file, and thus the volume of information is much lower than with the first two appenders. The rolling policy for the event log is the same as with the first two appenders, but the format of the messages is similar to that of the <code class="literal">EVENT_LOG_STDOUT</code> appender. </p></li></ul></div><p>The loggers and root logger specify the level of log that is written for each of the referenced appenders.</p><p>Typically, the default logging configuration as specified by the <code class="literal">serviceability.xml</code> file is adequate for all VWS environments. However, if you want to customize the logging framework further, you can edit this file as well as the <code class="literal">org.eclipse.virgo.medic.properties</code>. See the <a class="ulink" href="http://logback.qos.ch/manual/index.html" target="_top">logback documentation</a> for detailed information about the architecture and the configuration of Logback.</p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch11.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch11.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch11s03.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">11. Configuration </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 11.3 Configuring the Embedded Tomcat Servlet Container</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s03.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s03.html
deleted file mode 100644
index 18011ff..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s03.html
+++ /dev/null
@@ -1,142 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>11.3 Configuring the Embedded Tomcat Servlet Container</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch11.html" title="11. Configuration"><link rel="prev" href="ch11s02.html" title="11.2 Configuring Serviceability"><link rel="next" href="ch11s04.html" title="11.4 Configuring the Local Provisioning Repository"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">11.3 Configuring the Embedded Tomcat Servlet Container</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch11s02.html">Prev</a> </td><th width="60%" align="center">11. Configuration</th><td width="20%" align="right"> <a accesskey="n" href="ch11s04.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-tomcat"></a>11.3 Configuring the Embedded Tomcat Servlet Container</h2></div></div></div><p>
- Virgo Web Server
- embeds an OSGi-enhanced version of the <a class="ulink" href="http://tomcat.apache.org/" target="_top">Tomcat Servlet Container</a>
- in order to provide support for deploying Java EE WARs and OSGi <span class="emphasis"><em>Web Application Bundles</em></span>.
- You configure the embedded Servlet container using the standard Apache Tomcat configuration. The main difference is that the configuration file is called <code class="filename">tomcat-server.xml</code> rather than <code class="literal">server.xml</code>. As with the other VWS configuration files, the <code class="literal">tomcat-server.xml</code> file is located in the <code class="literal">$SERVER_HOME/config</code> directory.
- </p><p>Here's an extract of the default configuration distributed with the VWS.
- </p><pre class="programlisting"><<span class="hl-tag">?xml version='1.0' encoding='utf-8'?</span>>
-<<span class="hl-tag">Server</span> <span class="hl-attribute">port</span>=<span class="hl-value">"8005"</span> <span class="hl-attribute">shutdown</span>=<span class="hl-value">"SHUTDOWN"</span>>
-
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.core.AprLifecycleListener"</span> <span class="hl-attribute">SSLEngine</span>=<span class="hl-value">"on"</span> />
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.core.JasperListener"</span> />
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.mbeans.ServerLifecycleListener"</span> />
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"</span> />
-
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.eclipse.virgo.web.tomcat.ServerLifecycleLoggingListener"</span>/>
-
- <<span class="hl-tag">Service</span> <span class="hl-attribute">name</span>=<span class="hl-value">"Catalina"</span>>
- <<span class="hl-tag">Connector</span> <span class="hl-attribute">port</span>=<span class="hl-value">"8080"</span> <span class="hl-attribute">protocol</span>=<span class="hl-value">"HTTP/1.1"</span>
- <span class="hl-attribute">connectionTimeout</span>=<span class="hl-value">"20000"</span>
- <span class="hl-attribute">redirectPort</span>=<span class="hl-value">"8443"</span> />
-
- <<span class="hl-tag">Connector</span> <span class="hl-attribute">port</span>=<span class="hl-value">"8443"</span> <span class="hl-attribute">protocol</span>=<span class="hl-value">"HTTP/1.1"</span> <span class="hl-attribute">SSLEnabled</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">maxThreads</span>=<span class="hl-value">"150"</span> <span class="hl-attribute">scheme</span>=<span class="hl-value">"https"</span> <span class="hl-attribute">secure</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">clientAuth</span>=<span class="hl-value">"false"</span> <span class="hl-attribute">sslProtocol</span>=<span class="hl-value">"TLS"</span>
- <span class="hl-attribute">keystoreFile</span>=<span class="hl-value">"config/keystore"</span>
- <span class="hl-attribute">keystorePass</span>=<span class="hl-value">"changeit"</span>/>
-
- <<span class="hl-tag">Connector</span> <span class="hl-attribute">port</span>=<span class="hl-value">"8009"</span> <span class="hl-attribute">protocol</span>=<span class="hl-value">"AJP/1.3"</span> <span class="hl-attribute">redirectPort</span>=<span class="hl-value">"8443"</span> />
-
- <<span class="hl-tag">Engine</span> <span class="hl-attribute">name</span>=<span class="hl-value">"Catalina"</span> <span class="hl-attribute">defaultHost</span>=<span class="hl-value">"localhost"</span>>
- <<span class="hl-tag">Realm</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.realm.JAASRealm"</span> <span class="hl-attribute">appName</span>=<span class="hl-value">"virgo-kernel"</span>
- <span class="hl-attribute">userClassNames</span>=<span class="hl-value">"org.eclipse.virgo.kernel.authentication.User"</span>
- <span class="hl-attribute">roleClassNames</span>=<span class="hl-value">"org.eclipse.virgo.kernel.authentication.Role"</span>/>
-
- <<span class="hl-tag">Host</span> <span class="hl-attribute">name</span>=<span class="hl-value">"localhost"</span> <span class="hl-attribute">appBase</span>=<span class="hl-value">"webapps"</span>
- <span class="hl-attribute">unpackWARs</span>=<span class="hl-value">"true"</span> <span class="hl-attribute">autoDeploy</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">xmlValidation</span>=<span class="hl-value">"false"</span> <span class="hl-attribute">xmlNamespaceAware</span>=<span class="hl-value">"false"</span>>
-
- <<span class="hl-tag">Valve</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.valves.AccessLogValve"</span> <span class="hl-attribute">directory</span>=<span class="hl-value">"serviceability/logs/access"</span>
- <span class="hl-attribute">prefix</span>=<span class="hl-value">"localhost_access_log."</span> <span class="hl-attribute">suffix</span>=<span class="hl-value">".txt"</span> <span class="hl-attribute">pattern</span>=<span class="hl-value">"common"</span> <span class="hl-attribute">resolveHosts</span>=<span class="hl-value">"false"</span>/>
-
- <<span class="hl-tag">Valve</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.eclipse.virgo.web.tomcat.ApplicationNameTrackingValve"</span>/>
- <<span class="hl-tag">/Host</span>>
- <<span class="hl-tag">/Engine</span>>
- <<span class="hl-tag">/Service</span>>
-<<span class="hl-tag">/Server</span>></pre><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="overview-tomcat-servlet-container"></a>Description of the Default Apache Tomcat Configuration</h3></div></div></div><p>
- The following bullets describe the main elements and attributes in the default <code class="literal">tomcat-server.xml</code> file; for details about updating this file to further configure the embedded Apache Tomcat server, see the <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/config/index.html" target="_top">Apache Tomcat Configuration Reference</a>.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip: Relative paths"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Relative paths</th></tr><tr><td align="left" valign="top"><p>If the configured path to a directory or file does not represent an absolute path, VWS typically interprets it as a path relative to the <code class="filename">$SERVER_HOME</code> directory.</p></td></tr></table></div><div class="itemizedlist"><ul type="disc"><li><p>The root element of the <code class="literal">tomcat-server.xml</code> file is <code class="literal"><Server></code>. The attributes of this element represent the characteristics of the entire embedded Tomcat servlet container. The <code class="literal">shutdown</code> attribute specifies the command string that the shutdown port number receives via a TCP/IP connection in order to shut down the servlet container. The <code class="literal">port</code> attribute specifies the TCP/IP port number that listens for a shutdown message.</p></li><li><p>The <code class="literal"><Listener></code> XML elements specify the list of lifecycle listeners that monitor and manage the embedded Tomcat servlet container. Each listener class is a Java Management Extensions (JMX) MBean that listens to a specific component of the servlet container and has been programmed to do something at certain lifecycle events of the component, such as before starting up, after stopping, and so on.</p><p> The first four <code class="literal"><Listener></code> elements configure standard Tomcat lifecycle listeners. The listener implemented by the <code class="literal">org.eclipse.virgo.web.tomcat.ServerLifecycleLoggingListener</code> class is specific to Virgo Web Server and manages server lifecycle logging.
- </p></li><li><p>The <code class="literal"><Service></code> XML element groups together one or more connectors and a single engine. Connectors define a transport mechanism, such as HTTP, that clients use to to send and receive messages to and from the associated service. There are many transports that a client can use, which is why a <code class="literal"><Service></code> element can have many <code class="literal"><Connector></code> elements. The engine then defines how these requests and responses that the connector receives and sends are in turn handled by the servlet container; you can define only a single <code class="literal"><Engine></code> element for any given <code class="literal"><Service></code> element.</p><p> The sample <code class="literal">tomcat-server.xml</code> file above includes three <code class="literal"><Connector></code> elements: one for the HTTP transport, one for the HTTPS transport, and one for the AJP transport. The file also includes a single <code class="literal"><Engine></code> element, as required.
- </p></li><li><p>The first connector listens for HTTP requests at the <code class="literal">8080</code> TCP/IP port. The connector, after accepting a connection from a client, waits for a maximum of 20000 milliseconds for a request URI; if it does not receive one from the client by then, the connector times out. If this connector receives a request from the client that requires the SSL transport, the servlet container automatically redirects the request to port <code class="literal">8443</code>. </p></li><li><p>The second connector is for HTTPS requests. The TCP/IP port that users specify as the secure connection port is <code class="literal">8443</code>. Be sure that you set the value of the <code class="literal">redirectPort</code> attribute of your non-SSL connectors to this value to ensure that users that require a secure connection are redirected to the secure port, even if they initially start at the non-secure port. The <code class="literal">SSLEnabled</code> attribute specifies that SSL is enabled for this connector. The <code class="literal">secure</code> attribute ensures that a call to <code class="literal">request.isSecure()</code> from the connecting client always returns <code class="literal">true</code>. The <code class="literal">scheme</code> attribute ensures that a call to <code class="literal">request.getScheme()</code> from the connecting client always returns <code class="literal">https</code> when clients use this connector. </p><p>The <code class="literal">maxThreads</code> attribute specifies that the servlet container creates a maximum of 150 request processing threads,
- which determines the maximum number of simultaneous requests that can be handled.
- The <code class="literal">clientAuth</code> attribute specifies that the servlet container does not require a certificate chain
- unless the client requests a resource protected by a security constraint that uses CLIENT-CERT authentication.
- </p><p>The <code class="literal">keystoreFile</code> attribute specifies the name of the file that contains the servlet container’s
- private key and public certificate used in the SSL handshake, encryption, and decryption.
- You use an alias and password to access this information.
- In the example, this file is <code class="literal">$SERVER_HOME/config/keystore</code>.
- The <code class="literal">keystorePass</code> attributes specify the password used to access the keystore.
- </p></li><li><p>The third AJP Connector element represents a Connector component that communicates with a web connector via the AJP protocol.
- </p></li><li><p>The engine has a logical name of <code class="literal">Catalina</code>;
- this is the name used in all log and error messages so you can easily identify problems.
- The value of the <code class="literal">defaultHost</code> attribute refers to the name of a <code class="literal"><Host></code>
- child element of <code class="literal"><Engine></code>;
- this host processes requests directed to host names on this servlet container.
- </p></li><li><p>The <code class="literal"><Realm></code> child element of <code class="literal"><Engine></code> represents a database of
- users, passwords, and mapped roles used for authentication in this service. Virgo Web Server uses an implementation of the Tomcat 6 Realm interface that authenticates users through the Java Authentication and Authorization Service (JAAS) framework which is provided as part of the standard J2SE API.</p><p>With the JAASRealm, you can combine practically any conceivable security realm with Tomcat's container managed authentication. For details, see <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/realm-howto.html" target="_top">Realm Configuration</a>.</p></li><li><p>The <code class="literal"><Host></code> child element represents a virtual host,
- which is an association of a network name for a server (such as <code class="literal">www.mycompany.com</code>) with the particular
- server on which Catalina is running.
- The servlet container unpacks Web applications into a directory hierarchy if they are deployed as WAR files.
- The <code class="literal">xmlValidation</code> attribute specifies that the servlet container does not validate XML files when parsing them,
- or in other words, it accepts invalid XML.
- The <code class="literal">xmlNamespaceAware</code> attribute specifies that the servlet container does not take namespaces into account
- when reading XML files.
- </p></li><li><p>Finally, the <code class="literal">org.apache.catalina.valves.AccessLogValve</code> valve creates log files
- in the same format as those created by standard web servers.
- The servlet container creates the log files in the <code class="literal">$SERVER_HOME/serviceability/logs/access</code> directory.
- The log files are prefixed with the string <code class="literal">localhost_access_log.</code>, have a suffix of <code class="literal">.txt</code>,
- use a standard format for identifying what should be logged, and do not include DNS lookups of the IP address of the remote host.
- </p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-tomcat-connectors"></a>Connector Configuration</h3></div></div></div><p> The Virgo Web Server supports the configuration of any connector supported by Apache Tomcat.
- See the default configuration above for syntax examples, and for further details of the configuration properties
- supported for various <code class="literal"><Connector></code> implementations,
- consult the official <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/config/http.html" target="_top">Tomcat HTTP Connector</a> documentation.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip: Configuring SSL for Tomcat"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Configuring SSL for Tomcat</th></tr><tr><td align="left" valign="top"><p> The Virgo Web Server distribution includes a preconfigured <code class="filename">$SERVER_HOME/config/keystore</code>
- file that contains a single self-signed SSL Certificate.
- The password for this <code class="filename">keystore</code> file is <code class="literal">changeit</code>.
- This <code class="filename">keystore</code> file is intended for testing purposes only.
- For detailed instructions on how to configure Tomcat’s SSL support,
- consult the official <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html" target="_top">Tomcat SSL Configuration HOW-TO</a>.
- </p></td></tr></table></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-tomcat-clustering"></a>Cluster Configuration</h3></div></div></div><p>
- Virgo Web Server supports standard Apache Tomcat cluster configuration.
- By default, clustering of the embedded servlet container is disabled,
- and the default configuration does not include any clustering information.
- See <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/cluster-howto.html" target="_top">Tomcat Clustering/Session Replication HOW-TO</a>
- for detailed information about enabling and configuring clustering.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-tomcat-contexts"></a>Context Configuration</h3></div></div></div><p>
- Virgo Web Server supports standard Apache Tomcat web application context configuration.
- The <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/config/index.html" target="_top">Apache Tomcat Configuration Reference</a> has a section on
- <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/config/context.html" target="_top">The Context Container</a> which describes the mechanism that
- is used in VWS for searching context configuration files and details the context configuration properties.
- </p><p>
- Context configuration files may be placed in the following locations,
- where <code class="literal">[enginename]</code> is the name of Tomcat's engine ('Catalina' by default) and <code class="literal">[hostname]</code> names
- a virtual host ('localhost' by default), both of which are configured in <code class="literal">tomcat-server.xml</code>:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <code class="literal">$SERVER_HOME/config/context.xml</code> provides the default context configuration file for all web applications.
- </p></li><li><p>
- The <code class="literal">$SERVER_HOME/config/[enginename]/[hostname]</code> directory may contain:
- </p><div class="itemizedlist"><ul type="circle"><li><p>
- The default context configuration for all web applications of a given virtual host in the file <code class="literal">context.xml.default</code>.
- </p></li><li><p>
- Individual web applications' context configuration files as described in the Apache Tomcat Configuration Reference.
- For example, the context for a web application with
- context path <code class="literal">foo</code> may be configured in <code class="literal">foo.xml</code>.
- </p></li></ul></div><p>
- </p></li></ul></div><p>
- </p><p>
- Note that the following context configuration features are not supported in Virgo Web Server:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- Custom class loaders.
- </p></li><li><p>
- Specifying the context path. This is specified using the <code class="literal">Web-ContextPath</code> header in the web application's
- <code class="literal">MANIFEST.MF</code> file.
- </p></li><li><p>
- Specifying the document base directory.
- </p></li></ul></div><p>
- </p><p>
- See <a class="link" href="apbs04.html" title="B.4 Web Application Context Configuration File Copying">Web Application Context Configuration File Copying</a> for a known issue related to
- providing a context configuration file inside a web application archive.
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch11s02.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch11.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch11s04.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">11.2 Configuring Serviceability </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 11.4 Configuring the Local Provisioning Repository</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s04.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s04.html
deleted file mode 100644
index 0387d77..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s04.html
+++ /dev/null
@@ -1,205 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>11.4 Configuring the Local Provisioning Repository</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch11.html" title="11. Configuration"><link rel="prev" href="ch11s03.html" title="11.3 Configuring the Embedded Tomcat Servlet Container"><link rel="next" href="ch11s05.html" title="11.5 Configuring a Hosted Repository"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">11.4 Configuring the Local Provisioning Repository</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch11s03.html">Prev</a> </td><th width="60%" align="center">11. Configuration</th><td width="20%" align="right"> <a accesskey="n" href="ch11s05.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-provisioning-repository"></a>11.4 Configuring the Local Provisioning Repository</h2></div></div></div><p>
- You configure the locations that Virgo Web Server includes in its provisioning repository
- by editing the <code class="literal">org.eclipse.virgo.repository.properties</code> file in the <code class="literal">$SERVER_HOME/config</code> directory.
- </p><p>When you specify a property in the file, use the format <code class="literal">repository-name.property=value</code>, where:
- </p><div class="itemizedlist"><ul type="disc"><li><p><code class="literal">repository-name</code> refers to the name of the local repository.</p></li><li><p><code class="literal">property</code> refers to the name of a particular property.</p></li><li><p><code class="literal">value</code> refers to the value of the property.</p></li></ul></div><p>
- </p><p>For example, <code class="literal">ext.type=external</code> specifies that the <code class="literal">type</code> property of the repository
- with name <code class="literal">ext</code> is <code class="literal">external</code>.
- </p><p>
- The <code class="literal">chain</code> property specifies the order in which Virgo Web Server searches the individual repositories
- when it looks for dependencies.
- The <code class="literal">chain</code> property uses the names of the individual repositories as specified in the individual repository properties;
- for example, in the property <code class="literal">ext.type=external</code>, the name of the repository is <code class="literal">ext</code>.
- </p><p>
- The default repository configuration for a newly installed Virgo Web Server is as follows:
- </p><pre class="programlisting">ext.type=external
-ext.searchPattern=repository/ext/{artifact}
-
-usr.type=watched
-usr.watchDirectory=repository/usr
-
-chain=ext,usr</pre><p>
- </p><p>
- The default configuration shown above has two searchpaths corresponding to the two default sub-directories of the <code class="literal">$SERVER_HOME/repository</code> directory created when you first install VWS: <code class="literal">ext</code> and <code class="literal">usr</code>. Virgo Web Server searches each of these individual repositories when locating entries for inclusion in the repository. </p><p>
- The <code class="literal">chain</code> property shows the order in which Virgo Web Server searches the individual repositories: first <code class="literal">ext</code> and then <code class="literal">usr</code>.
- </p><p>
- The following table lists all the available properties that you can use to configure an individual repository.
- Individual repositories as well as the repository search chain are configured in the file
- <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.properties</code>.
- </p><div class="table"><a name="repository-options-table"></a><p class="title"><b>Table 11.5. Repository Properties</b></p><div class="table-contents"><table summary="Repository Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type</code></td><td style="border-bottom: 1.0pt solid ; ">
- <p>
- Specifies the type of path. You can set this property to one of the following three valid values:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <code class="literal">external</code>: Specifies that this path points to a number of directories that satisfy a given search pattern
- and are local to the current Virgo Web Server instance.
- Use the <code class="literal">searchPattern</code> property to specify the directory search pattern.
- </p></li><li><p>
- <code class="literal">watched</code>: Specifies that this path points to a single directory, local to the current Virgo Web Server instance.
- Virgo Web Server regularly scans watched repositories so it automatically picks up any changes to the artifacts in the directory at runtime.
- Use the <code class="literal">watchDirectory</code> property to specify the watched directory
- and the <code class="literal">watchInterval</code> property
- to specify how often VWS checks the directory.
- </p></li><li><p>
- <code class="literal">remote</code>: Specifies that the path points to a remotely-hosted repository,
- hosted by a remote instance of Virgo Web Server.
- Use the <code class="literal">uri</code> property to specify the full URI of the remote repository.
- You can also specify the optional <code class="literal">indexRefreshInterval</code> property.
- </p></li></ul></div><p>
- </p>
-
- <p>See <a class="link" href="ch11s04.html#configuring-repository-watched-versus-external" title="Should I Configure a Watched or External Repository?">Watched or External Repository?</a>
- for additional information about when to configure watched or external repositories for your particular environment.
- </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the pattern that an external repository uses when deciding which local directories it should search
- when identifying artifacts. Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=external</code>.
- See <a class="link" href="ch11s04.html#configuring-provisioning-repository-search-paths" title="Search Paths: Additional Information">Search Paths: Additional Information</a>
- for detailed information about specifying a search pattern.
- </p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchDirectory</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the single directory of a watched repository.
- You can specify either an absolute or relative pathname for the directory.
- If you specify a relative pathname, it is relative to the root of the VWS installation (<code class="literal">$SERVER_HOME</code>).
- Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=watched</code>.
- </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchInterval</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the interval in seconds between checks of a watched directory by a watched repository.
- This property is optional, if it is not specified the default interval of 5 seconds is used.
- Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=watched</code>.
- </p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.uri</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the URI of the hosted repository to which a remote repository connects.
- The value of this property takes the following format:
- </p>
- <p><code class="literal">http://</code><span class="emphasis"><em><code class="literal">host</code></em></span><code class="literal">:</code><span class="emphasis"><em><code class="literal">port</code></em></span><code class="literal">/org.eclipse.virgo.apps.repository/</code><span class="emphasis"><em><code class="literal">remote-repository-name</code></em></span></p>
- <p>where:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <span class="emphasis"><em><code class="literal">host</code></em></span> refers to the computer on which the remote VWS instance hosts the remote repository.
- </p></li><li><p>
- <span class="emphasis"><em><code class="literal">port</code></em></span> refers to Tomcat listen port of the remote VWS instance which hosts the remote repository.
- </p></li><li><p>
- <span class="emphasis"><em><code class="literal">remote-repository-name</code></em></span> refers to the name of the remote repository,
- as specified in the <code class="literal">hostedRepository.properties</code> file of the remote VWS instance.
- </p></li></ul></div><p>
- </p>
- <p>Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=remote</code>.
- </p> </td></tr><tr><td style="border-right: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.indexRefreshInterval</code></td><td style="">
- <p>
- Specifies the interval in seconds between checks by a remote repository that
- its local copy of the hosted repository index is up-to-date
- (a remote repository acts as a proxy for a hosted repository and thus it holds a local copy of the hosted repository’s index).
- This property is optional,
- if it is not specified the default interval of 5 seconds is used.
- </p>
- <p>Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=remote</code>.</p> </td></tr></tbody></table></div></div><p><br class="table-break">
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-repository-watched-versus-external"></a>Should I Configure a Watched or External Repository?</h3></div></div></div><p>The main difference between a watched and an external repository is that Virgo Web Server regularly scans watched directories
- and automatically picks up any changed artifacts,
- while VWS scans external directories only at startup, and then only if there is no cached index available.
- This means that VWS always performs a scan of an external repository when you start the server
- with the <code class="literal">-clean</code> (as this deletes the index) and only scans during a normal startup if the index isn’t there because,
- for example, this is the first time you start the server.
- </p><p>There is a performance cost associated with using a watched repository due to VWS using resources
- to scan the directory at the configured interval.
- The cost is small if the watched repository contains just a few artifacts; however,
- the performance cost increases as the number of artifacts increases.
- </p><p> For this reason, we recommend that you put most of your dependencies in external repositories,
- even when in development mode.
- If you make any changes to the artifacts in the external repositories,
- remember to restart VWS with the <code class="literal">-clean</code> option so that the server picks up any changes.
- Use watched directories for artifacts that you are prototyping, actively updating, or when adding new dependencies
- so that VWS quickly and easily picks them up.
- To increase performance even during development, however, you can use an external repository for most of your dependencies,
- in particular the ones that are fairly static.
- </p><p>In production environments, where dependencies should not change,
- we recommend that you use <span class="emphasis"><em>only</em></span> external repositories.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-provisioning-repository-search-paths"></a>Search Paths: Additional Information</h3></div></div></div><p>
- The <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code> and
- <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchDirectory</code> properties specify search paths
- for external and watched repositories, respectively,
- that define a physical location that Virgo Web Server searches when looking for a library or bundle dependency.
- If a search path is relative, its location is relative to the root of the installation,
- in other words, the <code class="literal">$SERVER_HOME</code> directory.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="configuring-provisioning-repository-search-paths-wildcards"></a>Using Wildcards</h4></div></div></div><p>
- Search paths specified with the <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code> property
- provide support for wildcards.
- In the entries above, the path segments surrounded by curly braces,
- for example <code class="literal">{bundle}</code> and <code class="literal">{library}</code>,
- are wildcards entries for a directory with any name.
- Allowing wildcards to be named in this way is intended to improve the readability of search path configuration.
- </p><p>
- In addition to supporting the above-described form of wildcards, Virgo Web Server also supports Ant-style paths,
- that is <code class="literal">*</code> and <code class="literal">**</code> can be used to represent any directory and
- any series of directories, respectively.
- For example, <code class="literal">repository/usr/{bundle}</code> and <code class="literal">repository/usr/*</code>
- are equivalent.
- </p><p>
- A common usage of the <code class="literal">**</code> wildcard is to allow dependencies stored in a directory structure of varying depth,
- such as a local Maven repository, to be provisioned by the Virgo Web Server.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-provisioning-repository-using-system-properties"></a>Using System Properties</h3></div></div></div><p>
- You can use system properties when specifying the values of the <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code>,
- <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchDirectory</code>,
- <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchInterval</code>,
- <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.uri</code>,
- and <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.indexRefreshInterval</code>
- properties.
- You reference system properties as <code class="literal">${system.property.name}</code>;
- for example, a search path of <code class="literal">${user.home}/repository/bundles</code> references the
- <code class="literal">repository/bundles</code> directory in the user’s home directory.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-provisioning-repository-examples"></a>Example Repository Configurations</h3></div></div></div><p>
- The following examples provide sample configuration that could be used for some common use cases.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="configuring-provisioning-repository-examples-ivy"></a>Add an Ivy cache repository</h4></div></div></div><p>The following example shows how to add an external repository whose location is actually an Ivy cache.</p><p><span class="emphasis"><em>Note that Ivy repositories can contain bundles which will conflict with the normal operation of Virgo, so care should
- be exercised when adding such an external repository.</em></span></p><pre class="programlisting">ext.type=external
-ext.searchPattern=repository/ext/{artifact}
-
-usr.type=watched
-usr.watchDirectory=repository/usr
-
-ivy-repo.type=external
-ivy-repo.searchPattern=${user.home}/.ivy2/cache/{org}/{name}/{version}/{bundle}.jar
-
-chain=ext,usr,ivy-repo</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="configuring-provisioning-repository-examples-maven"></a>Add a Maven local repository</h4></div></div></div><p>The following example shows how to add an external repository whose location is actually a Maven repository.</p><p><span class="emphasis"><em>Note that Maven repositories can contain bundles which will conflict with the normal operation of Virgo, so care should
- be exercised when adding such an external repository.</em></span></p><pre class="programlisting">ext.type=external
-ext.searchPattern=repository/ext/{artifact}
-
-usr.type=watched
-usr.watchDirectory=repository/usr
-
-maven-repo.type=external
-maven-repo.searchPattern=${user.home}/.m2/repository/**/{bundle}.jar
-
-chain=ext,usr,maven-repo</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="configuring-repository-examples-remote-watched"></a>Add remote and watched repositories</h4></div></div></div><p>The following example shows the default <code class="literal">org.eclipse.virgo.repository.properties</code> file
- from a freshly-installed VWS, but then updated to include new remote and watched repositories.
- Both of these repositories are part of the repository chain.
- </p><p>The remote repository is called <code class="literal">remote-repo</code>.
- The URI of the hosted repository from which <code class="literal">remote-repo</code> gets its artifacts is
- <code class="literal">http://my-host:8080/org.eclipse.virgo.apps.repository/my-hosted-repo</code>;
- this means that there is a VWS instance running on host <code class="literal">my-host</code>
- whose Tomcat server listens at the default port, <code class="literal">8080</code>,
- and this server instance hosts a repository called <code class="literal">my-hosted-repo</code>,
- configured in the <code class="literal">hostedRepository.properties</code> file of the remote server instance.
- The remote repository checks for changes in the hosted repository every 30 seconds.
- </p><p>The watched repository is called <code class="literal">watched-repo</code> and the directory that holds the artifacts
- is <code class="literal">repository/watched</code>,
- relative to the installation directory of the VWS instance.
- The server checks for changes in this watched repository every 5 seconds.
- </p><pre class="programlisting">ext.type=external
-ext.searchPattern=repository/ext/{artifact}
-
-usr.type=watched
-usr.watchDirectory=repository/usr
-
-remote-repo.type=remote
-remote-repo.uri=http://my-host:8080/org.eclipse.virgo.apps.repository/my-hosted-repo
-remote-repo.indexRefreshInterval=30
-
-watched-repo.type=watched
-watched-repo.watchedDirectory=repository/watched
-watched-repo.watchedInterval=5
-
-chain=ext,usr,remote-repo,watched-repo</pre></div></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch11s03.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch11.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch11s05.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">11.3 Configuring the Embedded Tomcat Servlet Container </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 11.5 Configuring a Hosted Repository</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s05.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s05.html
deleted file mode 100644
index 9ece3b1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s05.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>11.5 Configuring a Hosted Repository</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch11.html" title="11. Configuration"><link rel="prev" href="ch11s04.html" title="11.4 Configuring the Local Provisioning Repository"><link rel="next" href="ch11s06.html" title="11.6 Configuring the OSGi Framework"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">11.5 Configuring a Hosted Repository</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch11s04.html">Prev</a> </td><th width="60%" align="center">11. Configuration</th><td width="20%" align="right"> <a accesskey="n" href="ch11s06.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-hosted-repo"></a>11.5 Configuring a Hosted Repository</h2></div></div></div><p>You configure a VWS instance to host a repository
- by editing the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.hosted.properties</code> file;
- remote clients can then access the artifacts in this hosted repository and use them locally.
- </p><p>When you specify a property in the file, use the format <code class="literal">repository-name.property=value</code>, where:
- </p><div class="itemizedlist"><ul type="disc"><li><p><code class="literal">repository-name</code> refers to the name of the hosted repository.</p></li><li><p><code class="literal">property</code> refers to the name of a particular property.</p></li><li><p><code class="literal">value</code> refers to the value of the property.</p></li></ul></div><p>
- </p><p>For example, <code class="literal">my-hosted-repo.type=external</code> specifies that the <code class="literal">type</code> property
- of the <code class="literal">my-hosted-repository</code> repository is <code class="literal">external</code>.
- </p><p>The following table lists the properties that you can include in the <code class="literal">hostedRepository.properties</code> file.
- </p><div class="table"><a name="hosted-repository-properties-table"></a><p class="title"><b>Table 11.6. Hosted Repository Properties</b></p><div class="table-contents"><table summary="Hosted Repository Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the type of path of the hosted repository.
- All paths are local to the current VWS instance.
- You can set this property to one of the following valid values:
- <div class="itemizedlist"><ul type="disc"><li><p>
- <code class="literal">external</code>: Specifies that this path points to a number of directories that satisfy a given search pattern.
- Use the <code class="literal">searchPattern</code> property to specify the directory search pattern.
- </p></li><li><p>
- <code class="literal">watched</code>: Specifies that this path points to a single directory.
- Virgo Web Server regularly scans watched repositories so it automatically picks up any changes to the artifacts in the directory at runtime.
- Use the <code class="literal">watchDirectory</code> property to specify the actual watched directory and the <code class="literal">watchInterval</code> property
- to specify how often VWS checks the directory.
- </p></li></ul></div>
- <p>See <a class="link" href="ch11s04.html#configuring-repository-watched-versus-external" title="Should I Configure a Watched or External Repository?">Watched or External Repository?</a>
- for additional information about when to configure watched or external repositories for your particular environment.
- </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the pattern that an external hosted repository uses when deciding which
- local directories it should search when identifying artifacts.
- Use this property when <code class="literal">repository-name.type=external</code>.
- See <a class="link" href="ch11s04.html#configuring-provisioning-repository-search-paths" title="Search Paths: Additional Information">Search Paths: Additional Information</a>
- for detailed information about specifying a search pattern.
- </p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchDirectory</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the single directory of a watched hosted repository.
- You can specify either an absolute or relative pathname for the directory.
- If you specify a relative pathname, it is relative to the root of the VWS installation (<code class="literal">$SERVER_HOME</code>).
- Use this property when <code class="literal">repository-name.type=watched</code>.
- </p></td></tr><tr><td style="border-right: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchInterval</code></td><td style=""> <p>Specifies the interval in seconds between checks of a watched directory by a watched hosted repository.
- This property is optional. Use this property when <code class="literal">repository-name.type=watched</code>.
- </p> </td></tr></tbody></table></div></div><br class="table-break"><p>The following sample shows a <code class="literal">org.eclipse.virgo.repository.hosted.properties</code> file with a single external repository
- called <code class="literal">my-hosted-repo</code> with search pattern <code class="literal">$SERVER_HOME/repository/hosted/*</code>.
- </p><pre class="programlisting">my-hosted-repo.type=external
-my-hosted-repo.searchPattern=repository/hosted/*</pre><p>
- </p><p>See <a class="link" href="ch11s04.html#configuring-repository-examples-remote-watched" title="Add remote and watched repositories">Example of watched and remote repositories</a>
- for details on how a local repository can remotely access the artifacts in this hosted repository.
- </p></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch11s04.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch11.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="ch11s06.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">11.4 Configuring the Local Provisioning Repository </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> 11.6 Configuring the OSGi Framework</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s06.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s06.html
deleted file mode 100644
index ac0224d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/ch11s06.html
+++ /dev/null
@@ -1,68 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>11.6 Configuring the OSGi Framework</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="up" href="ch11.html" title="11. Configuration"><link rel="prev" href="ch11s05.html" title="11.5 Configuring a Hosted Repository"><link rel="next" href="apa.html" title="Appendix A. Event log codes"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">11.6 Configuring the OSGi Framework</th></tr><tr><td width="20%" align="left"><a accesskey="p" href="ch11s05.html">Prev</a> </td><th width="60%" align="center">11. Configuration</th><td width="20%" align="right"> <a accesskey="n" href="apa.html">Next</a></td></tr></table><hr></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-osgi-framework"></a>11.6 Configuring the OSGi Framework</h2></div></div></div><p>
- This section provides information about configuring the OSGi framework by updating the following files in the
- <code class="literal">$SERVER_HOME/lib</code> directory:
- </p><div class="table"><a name="configuring-osgi-framework-table"></a><p class="title"><b>Table 11.7. OSGi Framework Configuration Files </b></p><div class="table-contents"><table summary="OSGi Framework Configuration Files " style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property File</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">org.eclipse.virgo.kernel.launch.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures <a class="link" href="ch11s06.html#configuring-framework-properties" title="Configuring OSGi Framework Properties">OSGi framework properties</a>.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">java6-server.profile</code></td><td style="">Configures the <a class="link" href="ch11s06.html#configuring-framework-profile" title="Configuring OSGi Framework Profile">OSGi framework profile</a>.</td></tr></tbody></table></div></div><br class="table-break"><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-framework-properties"></a>Configuring OSGi Framework Properties</h3></div></div></div><p>
- You specify the framework properties in the <code class="literal">$SERVER_HOME/lib/org.eclipse.virgo.kernel.launch.properties</code> file. The
- properties most relevant to users are described in the following table.
- </p><p>
- <span class="bold"><strong>WARNING:</strong></span> We strongly recommend that you update only the
- <code class="literal">org.eclipse.virgo.suppress.heap.dumps</code> property; updating the other properties could cause VWS
- to fail. These properties are documented for your information only.
- </p><div class="table"><a name="configuring-framework-properties-table"></a><p class="title"><b>Table 11.8. Framework Properties</b></p><div class="table-contents"><table summary="Framework Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">launcher.bundles</code></td><td style="border-bottom: 1.0pt solid ; ">
- This property lists the bundles that comprise the kernel using <code class="literal">file:</code> URIs.
- Bundles to be started are tagged with a trailing <code class="literal">@start</code>.
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">org.eclipse.virgo.suppress.heap.dumps</code></td><td style="border-bottom: 1.0pt solid ; ">
- Set to 'false' by default this property will prevent heap dumps being contributed to dumps taken during a
- First Failure Data Capture (FFDC) event. When the heap dumps are produced they will be located along with
- the other dump artifacts in the <code class="literal">$SERVER_HOME/serviceability/dump/</code> folder.
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">osgi.console</code></td><td style="border-bottom: 1.0pt solid ; ">
- Specifies the port number which will be used by an Equinox console <span class="bold"><strong>attached to the kernel</strong></span>.
- The usual port number is 2402, to avoid clashing with any console attached to the user region.
- If specified, the Equinox console is enabled (without the Equinox Console Extension) during kernel start.
- If not specified, the Equinox console is not available for the kernel.
- </td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">osgi.java.profile</code></td><td style="">
- Specifies the profile to use using a <code class="literal">file:</code> URI with default value
- <code class="literal">file:lib/java6-server.profile</code>.
- </td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-framework-profile"></a>Configuring OSGi Framework Profile</h3></div></div></div><p>
- You specify the framework profile in the <code class="literal">$SERVER_HOME/lib/java6-server.profile</code> file. The
- properties most relevant to users are described in the following table.
- </p><p>
- <span class="bold"><strong>WARNING:</strong></span> We advise you not to change the framework profile unless you are sure you know exactly what
- you are doing; updating the profile could cause VWS to fail.
- </p><div class="table"><a name="configuring-framework-profile-table"></a><p class="title"><b>Table 11.9. Framework Profile Properties</b></p><div class="table-contents"><table summary="Framework Profile Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">org.osgi.framework.bootdelegation</code></td><td style="border-bottom: 1.0pt solid ; ">
- <p>
- This property specifies the packages which are loaded by delegation to the application class loader.
- Bundles can load classes belonging to these packages without importing the packages.
- The <code class="literal">.*</code> wildcard matches any package suffix. <code class="literal">java.*</code> is always
- boot delegated and must not be specified in this property.
- </p>
- <p>
- A common reason for adding packages to this property is to run VWS under a performance profiler.
- </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">org.osgi.framework.system.packages</code></td><td style="">
- <p>
- This property specifies the packages which are exported by the system bundle.
- </p>
- <p>
- It is very occasionally necessary to extend the set, for example when configuring email logging appenders since the
- implementation of <code class="literal">javax.mail</code> is intimately related to the implementation of
- <code class="literal">javax.activation</code>.
- </p>
- <p>
- To make the corresponding classes available for loading, the relevant JAR file(s) should be placed in
- <code class="literal">$SERVER_HOME/lib</code> so that they will be added to the application class path.
- </p>
- </td></tr></tbody></table></div></div><br class="table-break"></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"><a accesskey="p" href="ch11s05.html">Prev</a> </td><td width="20%" align="center"><a accesskey="u" href="ch11.html">Up</a></td><td width="40%" align="right"> <a accesskey="n" href="apa.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top">11.5 Configuring a Hosted Repository </td><td width="20%" align="center"><a accesskey="h" href="index.html">Home</a></td><td width="40%" align="right" valign="top"> Appendix A. Event log codes</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/css/highlight.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/css/highlight.css
deleted file mode 100644
index 2cb42fd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/css/highlight.css
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- code highlight CSS resembling the Eclipse IDE default color schema and the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-.hl-keyword {
- color: #7F0055;
- font-weight: bold;
-}
-
-.hl-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-multiline-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-tag {
- color: #646571;
-}
-
-.hl-attribute {
- color: #7F0055;
-}
-
-.hl-value {
- color: #0093CF;
-}
-
-.hl-string {
- color: #0093CF;
-}
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/css/stylesheet.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/css/stylesheet.css
deleted file mode 100644
index b02eca7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/css/stylesheet.css
+++ /dev/null
@@ -1,77 +0,0 @@
-@IMPORT url("highlight.css");
-
-/*
- code CSS resembling the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-html {
- padding: 0pt;
- margin: 0pt;
-}
-
-body {
- margin-left: 10%;
- margin-right: 10%;
- color: #111111;
- font-family: Arial, Sans-serif;
-}
-
-div {
- margin: 0pt;
-}
-
-p {
- text-align: justify;
-}
-
-hr {
- border: 1px solid gray;
- background: gray;
-}
-
-a {
- color: #002E62; /* Dark Blue */
-}
-
-a:visited {
- color: #646571; /* Gray */
-}
-
-a:hover, a:active {
- color: #0093CF; /* Light Blue */
-}
-
-h1,h2,h3,h4 {
- color: #002E62;
- font-family: Arial, Sans-serif;
-}
-
-pre {
- line-height: 1.0;
- color: black;
-}
-
-pre.programlisting {
- font-size: 10pt;
- padding: 7pt 3pt;
- border: 1pt solid black;
- background: #eeeeee;
- clear: both;
-}
-
-div.table {
- margin: 1em;
- padding: 0.5em;
- text-align: center;
-}
-
-div.table table {
- display: table;
- width: 100%;
-}
-
-div.table td {
- padding-left: 7px;
- padding-right: 7px;
-}
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/annot-close.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/annot-close.png
deleted file mode 100644
index b9e1a0d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/annot-close.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/annot-open.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/annot-open.png
deleted file mode 100644
index 71040ec..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/annot-open.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/blank.png
deleted file mode 100644
index 764bf4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/bundle-repository.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/bundle-repository.png
deleted file mode 100644
index c6ac771..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/bundle-repository.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/1.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/1.gif
deleted file mode 100644
index 9e7a87f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/1.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/1.png
deleted file mode 100644
index 7d47343..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/1.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/1.svg
deleted file mode 100644
index e2e87dc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/1.svg
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M10.428,10.411h0.56c3.78,0,4.788-1.96,4.872-3.444h3.22v19.88h-3.92V13.154h-4.732V10.411z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/10.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/10.gif
deleted file mode 100644
index e80f7f8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/10.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/10.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/10.png
deleted file mode 100644
index 997bbc8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/10.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/10.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/10.svg
deleted file mode 100644
index 4740f58..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/10.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.815,10.758h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.11H3.815V10.758z"/>
- <path style="fill:#FFFFFF;" d="M22.175,7.806c4.009,0,5.904,2.76,5.904,8.736c0,5.975-1.896,8.76-5.904,8.76
- c-4.008,0-5.904-2.785-5.904-8.76C16.271,10.566,18.167,7.806,22.175,7.806z M22.175,22.613c1.921,0,2.448-1.68,2.448-6.071
- c0-4.393-0.527-6.049-2.448-6.049c-1.92,0-2.448,1.656-2.448,6.049C19.727,20.934,20.255,22.613,22.175,22.613z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/11.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/11.gif
deleted file mode 100644
index 67f91a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/11.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/11.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/11.png
deleted file mode 100644
index ce47dac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/11.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/11.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/11.svg
deleted file mode 100644
index 09a0b2c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/11.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.209,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H5.209V10.412z"/>
- <path style="fill:#FFFFFF;" d="M18.553,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.359V12.764h-4.056V10.412z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/12.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/12.gif
deleted file mode 100644
index 54c4b42..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/12.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/12.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/12.png
deleted file mode 100644
index 31daf4e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/12.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/12.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/12.svg
deleted file mode 100644
index 9794044..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/12.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/13.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/13.gif
deleted file mode 100644
index dd5d7d9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/13.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/13.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/13.png
deleted file mode 100644
index 14021a8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/13.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/13.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/13.svg
deleted file mode 100644
index 64268bb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/13.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M20.611,14.636h0.529c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.288-2.185-2.137-2.185
- c-2.303,0-2.303,2.185-2.303,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.279,0,5.279,1.152,5.279,4.752
- c0,1.728-1.08,2.808-2.039,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/14.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/14.gif
deleted file mode 100644
index 3d7a952..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/14.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/14.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/14.png
deleted file mode 100644
index 64014b7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/14.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/14.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/14.svg
deleted file mode 100644
index 469aa97..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/14.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.146V10.412z"/>
- <path style="fill:#FFFFFF;" d="M28.457,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L22.746,7.46h3.815v10.656h1.896V20.732z
- M23.201,18.116c0-4.128,0.072-6.792,0.072-7.32h-0.048l-4.272,7.32H23.201z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/15.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/15.gif
deleted file mode 100644
index 1c9183d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/15.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/15.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/15.png
deleted file mode 100644
index 0d65765..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/15.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/15.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/15.svg
deleted file mode 100644
index 8202233..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/15.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M19.342,14.943c0.625-0.433,1.392-0.937,3.048-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.176,6.121-6.192,6.121c-2.664,0-5.376-1.584-5.544-5.016h3.36c0.144,1.391,0.888,2.326,2.376,2.326
- c1.607,0,2.544-1.367,2.544-3.191c0-1.512-0.72-3.047-2.496-3.047c-0.456,0-1.608,0.023-2.256,1.223l-3-0.143l1.176-9.361h9.36
- v2.832h-6.937L19.342,14.943z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/16.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/16.svg
deleted file mode 100644
index 01d6bf8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/16.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M24.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L19.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H24.309z M22.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C24.62,16.868,23.229,16.172,22.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/17.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/17.svg
deleted file mode 100644
index 0a04c55..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/17.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M27.838,11.006c-1.631,1.776-5.807,6.816-6.215,14.16h-3.457c0.36-6.816,4.632-12.24,6.072-13.776
- h-8.472l0.072-2.976h12V11.006z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/18.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/18.svg
deleted file mode 100644
index 1cb891b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/18.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/19.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/19.svg
deleted file mode 100644
index e6fbb17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/19.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.746h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.041h-3.36V13.097H4.146V10.746z"/>
- <path style="fill:#FFFFFF;" d="M20.225,20.898v0.023c0.192,1.176,0.936,1.68,1.968,1.68c1.392,0,2.783-1.176,2.808-4.752
- l-0.048-0.049c-0.768,1.152-2.088,1.441-3.24,1.441c-3.264,0-5.16-2.473-5.16-5.329c0-4.176,2.472-6.12,5.808-6.12
- c5.904,0,6,6.36,6,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.391H20.225z M22.434,16.553
- c1.176,0,2.472-0.84,2.472-2.855c0-1.944-0.841-3.145-2.568-3.145c-0.864,0-2.424,0.433-2.424,2.88
- C19.913,16.001,21.161,16.553,22.434,16.553z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/2.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/2.gif
deleted file mode 100644
index 94d42a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/2.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/2.png
deleted file mode 100644
index 5d09341..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/2.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/2.svg
deleted file mode 100644
index 07d0339..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/2.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M9.668,12.328c0-6.469,4.732-7.028,6.496-7.028c3.808,0,6.833,2.24,6.833,6.271
- c0,3.416-2.213,5.152-4.145,6.469c-2.632,1.848-4.004,2.744-4.452,3.668h8.624v3.472H9.444c0.14-2.324,0.308-4.76,4.62-7.896
- c3.584-2.604,5.012-3.612,5.012-5.853c0-1.315-0.84-2.828-2.744-2.828c-2.744,0-2.828,2.269-2.856,3.725H9.668z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/20.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/20.svg
deleted file mode 100644
index ccbfd40..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/20.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/21.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/21.svg
deleted file mode 100644
index 93ec53f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/21.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.306,13.151c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392v2.976H5.114c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H5.306z"/>
- <path style="fill:#FFFFFF;" d="M19.49,10.079h0.48c3.239,0,4.104-1.681,4.176-2.952h2.761v17.04h-3.361V12.431H19.49V10.079z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/22.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/22.svg
deleted file mode 100644
index f48c5f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/22.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/23.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/23.svg
deleted file mode 100644
index 6624212..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/23.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M21.612,14.636h0.528c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.287-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.521-0.911,2.521-2.808
- c0-2.328-2.257-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/24.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/24.svg
deleted file mode 100644
index a3d5525..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/24.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H4.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H4.972z"/>
- <path style="fill:#FFFFFF;" d="M30.124,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L24.412,7.46h3.816v10.656h1.896V20.732z
- M24.868,18.116c0-4.128,0.071-6.792,0.071-7.32h-0.047l-4.272,7.32H24.868z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/25.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/25.svg
deleted file mode 100644
index 56614a9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/25.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.676,14.276c0.624-0.433,1.393-0.937,3.049-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.177,6.12-6.193,6.12c-2.664,0-5.375-1.584-5.543-5.016h3.36c0.144,1.392,0.889,2.327,2.376,2.327
- c1.608,0,2.544-1.367,2.544-3.191c0-1.513-0.72-3.048-2.496-3.048c-0.455,0-1.607,0.023-2.256,1.224l-3-0.144l1.176-9.36h9.36
- v2.832h-6.937L20.676,14.276z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/26.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/26.svg
deleted file mode 100644
index 56faeac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/26.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M25.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L20.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H25.309z M23.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C25.62,16.868,24.229,16.172,23.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/27.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/27.svg
deleted file mode 100644
index a75c812..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/27.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M29.172,10.34c-1.632,1.776-5.808,6.816-6.216,14.16H19.5c0.36-6.816,4.632-12.24,6.072-13.776
- H17.1l0.072-2.976h12V10.34z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/28.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/28.svg
deleted file mode 100644
index 7f8cf1a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/28.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/29.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/29.svg
deleted file mode 100644
index cb63adf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/29.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.893,20.564v0.023c0.191,1.176,0.936,1.68,1.967,1.68c1.393,0,2.785-1.176,2.809-4.752
- l-0.048-0.048c-0.769,1.152-2.088,1.44-3.24,1.44c-3.264,0-5.16-2.473-5.16-5.328c0-4.176,2.472-6.12,5.807-6.12
- c5.904,0,6.001,6.36,6.001,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.392H20.893z M23.1,16.22
- c1.176,0,2.473-0.84,2.473-2.855c0-1.944-0.84-3.145-2.568-3.145c-0.863,0-2.424,0.433-2.424,2.88
- C20.58,15.668,21.828,16.22,23.1,16.22z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/3.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/3.gif
deleted file mode 100644
index dd3541a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/3.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/3.png
deleted file mode 100644
index ef7b700..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/3.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/3.svg
deleted file mode 100644
index 918be80..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/3.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M15.127,14.005h0.616c1.176,0,3.332-0.112,3.332-2.688c0-0.728-0.336-2.548-2.492-2.548
- c-2.688,0-2.688,2.548-2.688,3.248h-3.64c0-3.724,2.1-6.384,6.58-6.384c2.66,0,6.16,1.344,6.16,5.544
- c0,2.016-1.261,3.276-2.38,3.78v0.056c0.699,0.196,2.996,1.232,2.996,4.62c0,3.752-2.772,6.412-6.776,6.412
- c-1.876,0-6.916-0.42-6.916-6.636h3.836l-0.028,0.027c0,1.064,0.28,3.473,2.912,3.473c1.568,0,2.94-1.064,2.94-3.276
- c0-2.716-2.632-2.828-4.452-2.828V14.005z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/30.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/30.svg
deleted file mode 100644
index dc43ba1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/30.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M8.268,14.636h0.528c1.008,0,2.856-0.096,2.856-2.304c0-0.624-0.288-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.376,5.496-5.808,5.496
- c-1.608,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/4.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/4.gif
deleted file mode 100644
index 4bcbf7e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/4.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/4.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/4.png
deleted file mode 100644
index adb8364..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/4.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/4.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/4.svg
deleted file mode 100644
index 8eb6a53..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/4.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M21.891,20.784h-2.212v4.396h-3.92v-4.396h-7.84v-3.389L15.227,5.3h4.452v12.432h2.212V20.784z
- M15.759,17.731c0-4.815,0.084-7.924,0.084-8.54h-0.056l-4.984,8.54H15.759z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/5.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/5.gif
deleted file mode 100644
index 1c62b4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/5.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/5.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/5.png
deleted file mode 100644
index 4d7eb46..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/5.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/5.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/5.svg
deleted file mode 100644
index ca7a9f2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/5.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M14.035,14.252c0.728-0.504,1.624-1.092,3.556-1.092c2.66,0,6.02,1.848,6.02,6.411
- c0,2.717-1.372,7.141-7.224,7.141c-3.108,0-6.272-1.849-6.468-5.853h3.92c0.168,1.624,1.036,2.717,2.772,2.717
- c1.876,0,2.968-1.597,2.968-3.725c0-1.764-0.839-3.556-2.912-3.556c-0.532,0-1.876,0.028-2.632,1.428l-3.5-0.168l1.372-10.92
- h10.919v3.304h-8.092L14.035,14.252z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/6.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/6.gif
deleted file mode 100644
index 23bc555..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/6.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/6.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/6.png
deleted file mode 100644
index 0ba694a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/6.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/6.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/6.svg
deleted file mode 100644
index 783a0b9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/6.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M19.106,10.673c-0.112-1.12-0.84-1.904-2.296-1.904c-2.548,0-3.136,2.912-3.276,5.488l0.056,0.056
- c0.532-0.728,1.512-1.651,3.724-1.651c4.116,0,6.077,3.164,6.077,6.131c0,4.34-2.66,7.252-6.497,7.252
- c-6.02,0-7.196-5.039-7.196-9.996c0-3.78,0.504-10.416,7.392-10.416c0.812,0,3.08,0.308,4.061,1.288
- c1.092,1.063,1.483,1.652,1.848,3.752H19.106z M16.614,15.797c-1.484,0-2.996,0.924-2.996,3.416c0,2.156,1.232,3.697,3.108,3.697
- c1.428,0,2.745-1.094,2.745-3.781C19.471,16.609,17.846,15.797,16.614,15.797z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/7.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/7.gif
deleted file mode 100644
index e55ce89..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/7.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/7.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/7.png
deleted file mode 100644
index 472e96f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/7.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/7.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/7.svg
deleted file mode 100644
index 59b3714..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/7.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M24.28,9.66c-1.904,2.071-6.776,7.951-7.252,16.52h-4.032c0.42-7.952,5.404-14.28,7.084-16.072
- h-9.884l0.084-3.472h14V9.66z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/8.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/8.gif
deleted file mode 100644
index 49375e0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/8.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/8.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/8.png
deleted file mode 100644
index 5e60973..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/8.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/8.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/8.svg
deleted file mode 100644
index c1803a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/8.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M16.28,26.712c-5.124,0-6.888-3.332-6.888-6.048c0-1.009,0-3.641,3.024-5.04
- c-1.568-0.784-2.408-2.044-2.408-3.893c0-3.388,2.716-5.432,6.188-5.432c4.116,0,6.3,2.436,6.3,5.18
- c0,1.708-0.7,3.164-2.296,4.004c1.903,0.952,2.968,2.212,2.968,4.788C23.168,22.792,21.544,26.712,16.28,26.712z M16.224,17.332
- c-1.428,0-2.8,0.924-2.8,3.08c0,1.903,1.092,3.164,2.884,3.164c2.043,0,2.829-1.765,2.829-3.137
- C19.137,19.04,18.408,17.332,16.224,17.332z M18.744,11.899c0-1.512-1.036-2.464-2.296-2.464c-1.764,0-2.688,1.008-2.688,2.464
- c0,1.177,0.868,2.464,2.548,2.464C17.848,14.363,18.744,13.328,18.744,11.899z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/9.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/9.gif
deleted file mode 100644
index da12a4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/9.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/9.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/9.png
deleted file mode 100644
index a0676d2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/9.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/9.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/9.svg
deleted file mode 100644
index bc149d3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/callouts/9.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M13.953,21.921v0.027c0.224,1.372,1.092,1.961,2.296,1.961c1.624,0,3.248-1.372,3.276-5.545
- l-0.057-0.056c-0.896,1.344-2.436,1.68-3.78,1.68c-3.808,0-6.02-2.884-6.02-6.216c0-4.872,2.884-7.14,6.776-7.14
- c6.888,0,7,7.42,7,10.22c0,7.7-3.641,10.192-7.224,10.192c-3.388,0-5.824-1.96-6.16-5.124H13.953z M16.529,16.853
- c1.372,0,2.884-0.979,2.884-3.332c0-2.268-0.98-3.668-2.996-3.668c-1.008,0-2.828,0.504-2.828,3.36
- C13.589,16.209,15.045,16.853,16.529,16.853z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.gif
deleted file mode 100644
index d9f5e5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.png
deleted file mode 100644
index 5b7809c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.tif
deleted file mode 100644
index 4a28294..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/caution.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-artifact-deployed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-artifact-deployed.png
deleted file mode 100644
index 732495c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-artifact-deployed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-artifact-undeployed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-artifact-undeployed.png
deleted file mode 100644
index 52800c4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-artifact-undeployed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-artifacts.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-artifacts.png
deleted file mode 100644
index bc7263c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-artifacts.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-bundle-details.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-bundle-details.png
deleted file mode 100644
index 44c3ec0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-bundle-details.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-configuration-details.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-configuration-details.png
deleted file mode 100644
index cc5eae3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-configuration-details.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-default-artifacts.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-default-artifacts.png
deleted file mode 100644
index 82c57e5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-default-artifacts.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-deployment-error.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-deployment-error.png
deleted file mode 100644
index 5e278ba..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-deployment-error.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-dump-details.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-dump-details.png
deleted file mode 100644
index 8abfb99..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-dump-details.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-file-upload.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-file-upload.png
deleted file mode 100644
index b9fe12b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-file-upload.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-main-page.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-main-page.png
deleted file mode 100644
index 26ae5f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-main-page.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-osgi-state.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-osgi-state.png
deleted file mode 100644
index ac2a5ca..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-osgi-state.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-par-details.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-par-details.png
deleted file mode 100644
index 3b3e32a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-par-details.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-server-props.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-server-props.png
deleted file mode 100644
index 9b89c19..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/console-server-props.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/draft.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/draft.png
deleted file mode 100644
index 59673fe..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/draft.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/env-variables.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/env-variables.png
deleted file mode 100644
index 9cd0c30..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/env-variables.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/home.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/home.gif
deleted file mode 100644
index 6784f5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/home.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/home.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/home.png
deleted file mode 100644
index cbb711d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/home.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/home.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/home.svg
deleted file mode 100644
index e803a31..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/home.svg
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st1 "fill:none;stroke:none;">
- <!ENTITY st2 "fill:#000000;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:6.3469;stroke-linejoin:round;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st0;">
- <g style="&st4;">
- <path style="&st3;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M41.8,22.8l-5.1-4.2v-0.1L31,13.7v0l-6.5-5.5C24.2,8,24,8,23.8,8.2L6.2,22.9c-0.1,0.1-0.1,0.3,0.1,0.3h1.6H10h28.1h1.2h2.3c0.2,0,0.4-0.2,0.2-0.4z"/>
- <path d="M35.8,16.8l0-5.1c0-0.2-0.1-0.4-0.3-0.4h-3.2c-0.2,0-0.3,0.1-0.3,0.3v2.2l3.9,2.9z"/>
- <path d="M11.9,24.7V37c0,0.3,0.1,0.4,0.3,0.4h23.6c0.3,0,0.4-0.2,0.4-0.4V24.7H11.9z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st1;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.gif
deleted file mode 100644
index 6795d9a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.png
deleted file mode 100644
index 12c90f6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.tif
deleted file mode 100644
index 184de63..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/important.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-1-FileListing.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-1-FileListing.png
deleted file mode 100644
index 976cfb3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-1-FileListing.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-2-SecuritySettings.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-2-SecuritySettings.png
deleted file mode 100644
index e0ce4ad..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-2-SecuritySettings.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-3-AdvanceSettingsOwner.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-3-AdvanceSettingsOwner.png
deleted file mode 100644
index df56705..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-3-AdvanceSettingsOwner.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-4-AllSetReadAndExecute.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-4-AllSetReadAndExecute.png
deleted file mode 100644
index 82e029e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/install-windows-4-AllSetReadAndExecute.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-local-attach.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-local-attach.png
deleted file mode 100644
index 839fea5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-local-attach.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-remote-attach-default.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-remote-attach-default.png
deleted file mode 100644
index 3bdbc0a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-remote-attach-default.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-remote-attach-jmxport.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-remote-attach-jmxport.png
deleted file mode 100644
index f85017f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-remote-attach-jmxport.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-remote-attach-jmxusers.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-remote-attach-jmxusers.png
deleted file mode 100644
index 957c4f5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/jmx-remote-attach-jmxusers.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/kernel-user-region.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/kernel-user-region.graffle
deleted file mode 100644
index 33a882f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/kernel-user-region.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/kernel-user-region.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/kernel-user-region.png
deleted file mode 100644
index 2dc7d13..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/kernel-user-region.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-control-summary.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-control-summary.png
deleted file mode 100644
index 3250820..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-control-summary.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-resource-discovery.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-resource-discovery.png
deleted file mode 100644
index 4ff1c98..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-resource-discovery.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-controls.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-controls.png
deleted file mode 100644
index 69fec36..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-controls.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-main-page.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-main-page.png
deleted file mode 100644
index 22db09b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-main-page.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-started.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-started.png
deleted file mode 100644
index 6de6ec3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-started.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-stopped.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-stopped.png
deleted file mode 100644
index 7667801..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-server-stopped.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-servers-list.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-servers-list.png
deleted file mode 100644
index c1735f1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/management-servers-list.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/next.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/next.gif
deleted file mode 100644
index aa1516e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/next.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/next.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/next.png
deleted file mode 100644
index 45835bf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/next.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/next.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/next.svg
deleted file mode 100644
index 75fa83e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/next.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- <path style="&st3;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.gif
deleted file mode 100644
index f329d35..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.png
deleted file mode 100644
index d0c3c64..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.svg
deleted file mode 100644
index 648299d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.svg
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#FFFFFF;stroke-width:12.1438;stroke-linejoin:round;">
- <!ENTITY st1 "fill:none;stroke-width:1.2429;">
- <!ENTITY st2 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st4 "fill:#FFFFFF;stroke-width:6.3824;stroke-linejoin:round;">
- <!ENTITY st5 "fill:none;stroke:none;">
- <!ENTITY st6 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st7 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st8 "stroke:none;">
- <!ENTITY st9 "fill:none;stroke-width:4.9715;stroke-linejoin:round;">
-]>
-<svg xmlns="http://www.w3.org/2000/svg" width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve">
- <g id="Layer_x0020_1" style="&st6;">
- <path style="&st0;" d="M35.7,19.8v18.9H11V8.8h13.9l10.8,11z"/>
- <path style="&st3;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st7;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st4;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st2;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- </g>
- <g id="Layer_x0020_4" style="&st6;">
- <path style="&st9;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M20.6,14.7l-2.5,2.5L17,13.4l3.6,1.3z"/>
- <path style="&st1;" d="M19.6,22.2l3-0.3l2.4-2.4l0.4-2.8"/>
- <path style="&st2;" d="M20.4,14.9L18.3,17l1.6,5.2l2.7-0.3l2.4-2.4l0.3-2.4l-5-2.2z"/>
- </g>
- <g id="crop" style="&st6;">
- <path style="&st5;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.tif
deleted file mode 100644
index 08644d6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/note.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/prev.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/prev.gif
deleted file mode 100644
index 64ca8f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/prev.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/prev.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/prev.png
deleted file mode 100644
index cf24654..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/prev.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/prev.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/prev.svg
deleted file mode 100644
index 6d88ffd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/prev.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- <path style="&st3;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/repo-structure.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/repo-structure.png
deleted file mode 100644
index 9fab430..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/repo-structure.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/s2-logo.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/s2-logo.png
deleted file mode 100644
index 7f41814..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/s2-logo.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/system-props.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/system-props.png
deleted file mode 100644
index 0c047a0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/system-props.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/system-variable.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/system-variable.png
deleted file mode 100644
index 725ad3e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/system-variable.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.gif
deleted file mode 100644
index 823f2b4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.png
deleted file mode 100644
index 5c4aab3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.svg
deleted file mode 100644
index 4a64a15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.svg
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#000000;stroke-width:1.0944;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#FFFFFF;stroke-width:5.6139;stroke-miterlimit:4;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path d="M9.5,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.8,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path d="M28.1,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,34.8l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8s0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8s-0.9-1.5-1.8-1.4z"/>
- <path d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6c0.9,0,1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st1;" d="M35.9,18.7c0,6.6-5.4,12-12,12c-6.6,0-12-5.4-12-12s5.4-12,12-12c6.6,0,12,5.4,12,12z"/>
- <path style="&st5;" d="M9.6,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.9,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path style="&st5;" d="M28.2,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,34.7l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6s1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st0;" d="M22.3,28.3l-3.5-10.7c0,0,6.6,3.9,10.5,0"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.tif
deleted file mode 100644
index 4a3d8c7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/tip.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/toc-blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/toc-blank.png
deleted file mode 100644
index 6ffad17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/toc-blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/toc-minus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/toc-minus.png
deleted file mode 100644
index abbb020..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/toc-minus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/toc-plus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/toc-plus.png
deleted file mode 100644
index 941312c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/toc-plus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/up.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/up.gif
deleted file mode 100644
index aabc2d0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/up.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/up.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/up.png
deleted file mode 100644
index 07634de..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/up.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/up.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/up.svg
deleted file mode 100644
index d31aa9c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/up.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- <path style="&st3;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/virgo-logo-large.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/virgo-logo-large.png
deleted file mode 100644
index f8fe1f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/virgo-logo-large.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/virgo-logo-small.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/virgo-logo-small.png
deleted file mode 100644
index 45e9224..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/virgo-logo-small.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.gif
deleted file mode 100644
index 3adf191..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.png
deleted file mode 100644
index 1c33db8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.svg
deleted file mode 100644
index fc8d748..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#000000;stroke:#FFFFFF;stroke-width:7.9139;stroke-linejoin:round;">
- <!ENTITY st1 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st2 "fill:none;stroke:none;">
- <!ENTITY st3 "fill:#000000;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_4" style="&st1;">
- <g style="&st4;">
- <path style="&st0;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path style="&st3;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path d="M11.7,17.7l18.7,18.7l5.9-5.9L17.6,11.7l-5.9,5.9z"/>
- <path d="M11.7,30.5l5.9,5.9l18.7-18.7l-5.9-5.9L11.7,30.5z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st2;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.tif
deleted file mode 100644
index 7b6611e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/warning.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/welcome.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/welcome.png
deleted file mode 100644
index 87a3926..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/images/welcome.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/index.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/index.html
deleted file mode 100644
index a32c581..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/html/index.html
+++ /dev/null
@@ -1,27 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Virgo User Guide</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><link rel="home" href="index.html" title="Virgo User Guide"><link rel="next" href="ch01.html" title="1. Introduction"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="navheader"><table width="100%" summary="Navigation header"><tr><th colspan="3" align="center">Virgo User Guide</th></tr><tr><td width="20%" align="left"> </td><th width="60%" align="center"> </th><td width="20%" align="right"> <a accesskey="n" href="ch01.html">Next</a></td></tr></table><hr></div><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="d0e1"></a>Virgo User Guide</h1></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Rob</span> <span class="surname">Harrop</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Paul</span> <span class="surname">Kuzan</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Sam</span> <span class="surname">Brannen</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Paul</span> <span class="surname">Harris</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Christopher</span> <span class="surname">Frost</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Ben</span> <span class="surname">Hale</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Glyn</span> <span class="surname">Normington</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Juliet</span> <span class="surname">Shackell</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Steve</span> <span class="surname">Powell</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Violeta</span> <span class="surname">Georgieva</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Hristo</span> <span class="surname">Iliev</span></h3></div></div></div><div><div class="mediaobject" align="right"><img src="images/virgo-logo-small.png" align="right"></div></div><div><span class="productname">Virgo<br></span></div><div><p class="releaseinfo">2.1.1.RELEASE</p></div></div><div><div><div class="legalnotice"><a name="d0e72"></a><p>
- Copyright © 2009, 2010 VMware Inc. and others
- </p><p>
- Contributors:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- VMware Inc. - initial contribution
- </p></li><li><p>
- Violeta Georgieva, SAP AG - Tomcat context configuration
- </p></li><li><p>
- Hristo Iliev, SAP AG - Setting jmx.properties permissions
- </p></li></ul></div><p>
- </p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="ch01.html">1. Introduction</a></span></dt><dd><dl><dt><span class="section"><a href="ch01.html#d0e94">1.1. A Note for Virgo Kernel Users</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch02.html">2. Installing Virgo Web Server</a></span></dt><dd><dl><dt><span class="section"><a href="ch02.html#installation-prereqs">2.1. Prerequisites</a></span></dt><dt><span class="section"><a href="ch02s02.html">2.2. Installing from the ZIP Download</a></span></dt><dt><span class="section"><a href="ch02s03.html">2.3. Post-installation steps</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch03.html">3. Installing Virgo Kernel</a></span></dt><dd><dl><dt><span class="section"><a href="ch03.html#kernel-installation-prereqs">3.1. Prerequisites</a></span></dt><dt><span class="section"><a href="ch03s02.html">3.2. Installing from the ZIP Download</a></span></dt><dt><span class="section"><a href="ch03s03.html">3.3. Post-installation steps</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch04.html">4. Starting and Stopping VWS</a></span></dt><dd><dl><dt><span class="section"><a href="ch04.html#d0e328">4.1. Starting Virgo Web Server</a></span></dt><dt><span class="section"><a href="ch04s02.html">4.2. Starting in Clean Mode</a></span></dt><dt><span class="section"><a href="ch04s03.html">4.3. Starting in Debug Mode</a></span></dt><dt><span class="section"><a href="ch04s04.html">4.4. Starting with JMX Access Modifications</a></span></dt><dt><span class="section"><a href="ch04s05.html">4.5. Starting with a Custom Configuration Directory</a></span></dt><dt><span class="section"><a href="ch04s06.html">4.6. Stopping Virgo Web Server</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch05.html">5. Overview of the Virgo Kernel and User Region</a></span></dt><dd><dl><dt><span class="section"><a href="ch05.html#kernel-overview">5.1. The Virgo Kernel</a></span></dt><dt><span class="section"><a href="ch05s02.html">5.2. The User Region</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch06.html">6. Equinox Console Extension (vsh)</a></span></dt><dd><dl><dt><span class="section"><a href="ch06.html#admin-shell-using">6.1. Using the Equinox Console Extension</a></span></dt><dt><span class="section"><a href="ch06s02.html">6.2. Equinox Console Extension Subcommand Reference</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch07.html">7. The Admin Console</a></span></dt><dd><dl><dt><span class="section"><a href="ch07.html#admin-console-login">7.1. Invoking the Admin Console</a></span></dt><dt><span class="section"><a href="ch07s02.html">7.2. Typical Admin Console Use Cases</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch08.html">8. The Provisioning Repository</a></span></dt><dd><dl><dt><span class="section"><a href="ch08.html#repository-introduction">8.1. Overview of the Provisioning Repository</a></span></dt><dt><span class="section"><a href="ch08s02.html">8.2. Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository</a></span></dt><dt><span class="section"><a href="ch08s03.html">8.3. Configuring the repository</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch09.html">9. Serviceability</a></span></dt><dd><dl><dt><span class="section"><a href="ch09.html#serviceability-info-log">9.1. Event logging</a></span></dt><dt><span class="section"><a href="ch09s02.html">9.2. (Trace) Logging</a></span></dt><dt><span class="section"><a href="ch09s03.html">9.3. Service Dumps</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch10.html">10. Working with Applications</a></span></dt><dd><dl><dt><span class="section"><a href="ch10.html#deployment-deploying">10.1. Deploying Artifacts</a></span></dt><dt><span class="section"><a href="ch10s02.html">10.2. Undeploying Artifacts</a></span></dt></dl></dd><dt><span class="chapter"><a href="ch11.html">11. Configuration</a></span></dt><dd><dl><dt><span class="section"><a href="ch11.html#configuring-kernel">11.1. Configuring the Virgo Kernel and User Region</a></span></dt><dt><span class="section"><a href="ch11s02.html">11.2. Configuring Serviceability</a></span></dt><dt><span class="section"><a href="ch11s03.html">11.3. Configuring the Embedded Tomcat Servlet Container</a></span></dt><dt><span class="section"><a href="ch11s04.html">11.4. Configuring the Local Provisioning Repository</a></span></dt><dt><span class="section"><a href="ch11s05.html">11.5. Configuring a Hosted Repository</a></span></dt><dt><span class="section"><a href="ch11s06.html">11.6. Configuring the OSGi Framework</a></span></dt></dl></dd><dt><span class="appendix"><a href="apa.html">A. Event log codes</a></span></dt><dd><dl><dt><span class="section"><a href="apa.html#event-log-codes-format">A.1. Format of the event log codes</a></span></dt></dl></dd><dt><span class="appendix"><a href="apb.html">B. Known Issues</a></span></dt><dd><dl><dt><span class="section"><a href="apb.html#known-issues-firewall-timeout">B.1. Timeout During Startup Due to Firewall Settings</a></span></dt><dt><span class="section"><a href="apbs02.html">B.2. OutOfMemoryError: PermGen space running on Sun VM</a></span></dt><dt><span class="section"><a href="apbs03.html">B.3. Alternate serviceability and work Directories</a></span></dt><dt><span class="section"><a href="apbs04.html">B.4. Web Application Context Configuration File Copying</a></span></dt></dl></dd><dt><span class="appendix"><a href="apc.html">C.
- Further Reading
- </a></span></dt></dl></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--><div class="navfooter"><hr><table width="100%" summary="Navigation footer"><tr><td width="40%" align="left"> </td><td width="20%" align="center"> </td><td width="40%" align="right"> <a accesskey="n" href="ch01.html">Next</a></td></tr><tr><td width="40%" align="left" valign="top"> </td><td width="20%" align="center"> </td><td width="40%" align="right" valign="top"> 1. Introduction</td></tr></table></div></body></html>
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/css/highlight.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/css/highlight.css
deleted file mode 100644
index 2cb42fd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/css/highlight.css
+++ /dev/null
@@ -1,35 +0,0 @@
-/*
- code highlight CSS resembling the Eclipse IDE default color schema and the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-.hl-keyword {
- color: #7F0055;
- font-weight: bold;
-}
-
-.hl-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-multiline-comment {
- color: #646571;
- font-style: italic;
-}
-
-.hl-tag {
- color: #646571;
-}
-
-.hl-attribute {
- color: #7F0055;
-}
-
-.hl-value {
- color: #0093CF;
-}
-
-.hl-string {
- color: #0093CF;
-}
\ No newline at end of file
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/css/stylesheet.css b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/css/stylesheet.css
deleted file mode 100644
index b02eca7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/css/stylesheet.css
+++ /dev/null
@@ -1,77 +0,0 @@
-@IMPORT url("highlight.css");
-
-/*
- code CSS resembling the EclipseRT Virgo Website
- @author Christopher Frost
-*/
-
-html {
- padding: 0pt;
- margin: 0pt;
-}
-
-body {
- margin-left: 10%;
- margin-right: 10%;
- color: #111111;
- font-family: Arial, Sans-serif;
-}
-
-div {
- margin: 0pt;
-}
-
-p {
- text-align: justify;
-}
-
-hr {
- border: 1px solid gray;
- background: gray;
-}
-
-a {
- color: #002E62; /* Dark Blue */
-}
-
-a:visited {
- color: #646571; /* Gray */
-}
-
-a:hover, a:active {
- color: #0093CF; /* Light Blue */
-}
-
-h1,h2,h3,h4 {
- color: #002E62;
- font-family: Arial, Sans-serif;
-}
-
-pre {
- line-height: 1.0;
- color: black;
-}
-
-pre.programlisting {
- font-size: 10pt;
- padding: 7pt 3pt;
- border: 1pt solid black;
- background: #eeeeee;
- clear: both;
-}
-
-div.table {
- margin: 1em;
- padding: 0.5em;
- text-align: center;
-}
-
-div.table table {
- display: table;
- width: 100%;
-}
-
-div.table td {
- padding-left: 7px;
- padding-right: 7px;
-}
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/annot-close.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/annot-close.png
deleted file mode 100644
index b9e1a0d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/annot-close.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/annot-open.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/annot-open.png
deleted file mode 100644
index 71040ec..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/annot-open.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/blank.png
deleted file mode 100644
index 764bf4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/bundle-repository.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/bundle-repository.png
deleted file mode 100644
index c6ac771..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/bundle-repository.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/1.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/1.gif
deleted file mode 100644
index 9e7a87f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/1.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/1.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/1.png
deleted file mode 100644
index 7d47343..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/1.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/1.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/1.svg
deleted file mode 100644
index e2e87dc..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/1.svg
+++ /dev/null
@@ -1,15 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M10.428,10.411h0.56c3.78,0,4.788-1.96,4.872-3.444h3.22v19.88h-3.92V13.154h-4.732V10.411z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/10.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/10.gif
deleted file mode 100644
index e80f7f8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/10.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/10.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/10.png
deleted file mode 100644
index 997bbc8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/10.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/10.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/10.svg
deleted file mode 100644
index 4740f58..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/10.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.815,10.758h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.11H3.815V10.758z"/>
- <path style="fill:#FFFFFF;" d="M22.175,7.806c4.009,0,5.904,2.76,5.904,8.736c0,5.975-1.896,8.76-5.904,8.76
- c-4.008,0-5.904-2.785-5.904-8.76C16.271,10.566,18.167,7.806,22.175,7.806z M22.175,22.613c1.921,0,2.448-1.68,2.448-6.071
- c0-4.393-0.527-6.049-2.448-6.049c-1.92,0-2.448,1.656-2.448,6.049C19.727,20.934,20.255,22.613,22.175,22.613z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/11.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/11.gif
deleted file mode 100644
index 67f91a2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/11.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/11.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/11.png
deleted file mode 100644
index ce47dac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/11.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/11.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/11.svg
deleted file mode 100644
index 09a0b2c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/11.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.209,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H5.209V10.412z"/>
- <path style="fill:#FFFFFF;" d="M18.553,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.359V12.764h-4.056V10.412z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/12.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/12.gif
deleted file mode 100644
index 54c4b42..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/12.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/12.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/12.png
deleted file mode 100644
index 31daf4e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/12.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/12.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/12.svg
deleted file mode 100644
index 9794044..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/12.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/13.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/13.gif
deleted file mode 100644
index dd5d7d9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/13.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/13.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/13.png
deleted file mode 100644
index 14021a8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/13.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/13.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/13.svg
deleted file mode 100644
index 64268bb..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/13.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M20.611,14.636h0.529c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.288-2.185-2.137-2.185
- c-2.303,0-2.303,2.185-2.303,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.279,0,5.279,1.152,5.279,4.752
- c0,1.728-1.08,2.808-2.039,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/14.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/14.gif
deleted file mode 100644
index 3d7a952..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/14.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/14.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/14.png
deleted file mode 100644
index 64014b7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/14.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/14.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/14.svg
deleted file mode 100644
index 469aa97..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/14.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.146V10.412z"/>
- <path style="fill:#FFFFFF;" d="M28.457,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L22.746,7.46h3.815v10.656h1.896V20.732z
- M23.201,18.116c0-4.128,0.072-6.792,0.072-7.32h-0.048l-4.272,7.32H23.201z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/15.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/15.gif
deleted file mode 100644
index 1c9183d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/15.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/15.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/15.png
deleted file mode 100644
index 0d65765..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/15.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/15.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/15.svg
deleted file mode 100644
index 8202233..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/15.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M19.342,14.943c0.625-0.433,1.392-0.937,3.048-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.176,6.121-6.192,6.121c-2.664,0-5.376-1.584-5.544-5.016h3.36c0.144,1.391,0.888,2.326,2.376,2.326
- c1.607,0,2.544-1.367,2.544-3.191c0-1.512-0.72-3.047-2.496-3.047c-0.456,0-1.608,0.023-2.256,1.223l-3-0.143l1.176-9.361h9.36
- v2.832h-6.937L19.342,14.943z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/16.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/16.svg
deleted file mode 100644
index 01d6bf8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/16.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H3.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M24.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L19.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H24.309z M22.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C24.62,16.868,23.229,16.172,22.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/17.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/17.svg
deleted file mode 100644
index 0a04c55..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/17.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.479,11.079h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.04h-3.36V13.43H3.479V11.079z"/>
- <path style="fill:#FFFFFF;" d="M27.838,11.006c-1.631,1.776-5.807,6.816-6.215,14.16h-3.457c0.36-6.816,4.632-12.24,6.072-13.776
- h-8.472l0.072-2.976h12V11.006z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/18.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/18.svg
deleted file mode 100644
index 1cb891b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/18.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.813,10.412h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76V24.5h-3.36V12.764H4.813V10.412z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/19.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/19.svg
deleted file mode 100644
index e6fbb17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/19.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.146,10.746h0.48c3.24,0,4.104-1.681,4.176-2.952h2.76v17.041h-3.36V13.097H4.146V10.746z"/>
- <path style="fill:#FFFFFF;" d="M20.225,20.898v0.023c0.192,1.176,0.936,1.68,1.968,1.68c1.392,0,2.783-1.176,2.808-4.752
- l-0.048-0.049c-0.768,1.152-2.088,1.441-3.24,1.441c-3.264,0-5.16-2.473-5.16-5.329c0-4.176,2.472-6.12,5.808-6.12
- c5.904,0,6,6.36,6,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.391H20.225z M22.434,16.553
- c1.176,0,2.472-0.84,2.472-2.855c0-1.944-0.841-3.145-2.568-3.145c-0.864,0-2.424,0.433-2.424,2.88
- C19.913,16.001,21.161,16.553,22.434,16.553z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/2.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/2.gif
deleted file mode 100644
index 94d42a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/2.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/2.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/2.png
deleted file mode 100644
index 5d09341..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/2.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/2.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/2.svg
deleted file mode 100644
index 07d0339..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/2.svg
+++ /dev/null
@@ -1,17 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M9.668,12.328c0-6.469,4.732-7.028,6.496-7.028c3.808,0,6.833,2.24,6.833,6.271
- c0,3.416-2.213,5.152-4.145,6.469c-2.632,1.848-4.004,2.744-4.452,3.668h8.624v3.472H9.444c0.14-2.324,0.308-4.76,4.62-7.896
- c3.584-2.604,5.012-3.612,5.012-5.853c0-1.315-0.84-2.828-2.744-2.828c-2.744,0-2.828,2.269-2.856,3.725H9.668z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/20.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/20.svg
deleted file mode 100644
index ccbfd40..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/20.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/21.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/21.svg
deleted file mode 100644
index 93ec53f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/21.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M5.306,13.151c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392v2.976H5.114c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H5.306z"/>
- <path style="fill:#FFFFFF;" d="M19.49,10.079h0.48c3.239,0,4.104-1.681,4.176-2.952h2.761v17.04h-3.361V12.431H19.49V10.079z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/22.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/22.svg
deleted file mode 100644
index f48c5f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/22.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M17.316,13.484c0-5.545,4.056-6.024,5.568-6.024c3.265,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.553,5.544c-2.256,1.584-3.432,2.353-3.815,3.145h7.392V24.5h-11.64c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.353-2.424c-2.352,0-2.423,1.944-2.447,3.192H17.316z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/23.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/23.svg
deleted file mode 100644
index 6624212..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/23.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M21.612,14.636h0.528c1.008,0,2.855-0.096,2.855-2.304c0-0.624-0.287-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.377,5.496-5.809,5.496
- c-1.607,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.521-0.911,2.521-2.808
- c0-2.328-2.257-2.424-3.816-2.424V14.636z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/24.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/24.svg
deleted file mode 100644
index a3d5525..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/24.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M4.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H4.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H4.972z"/>
- <path style="fill:#FFFFFF;" d="M30.124,20.732h-1.896V24.5h-3.36v-3.768h-6.72v-2.904L24.412,7.46h3.816v10.656h1.896V20.732z
- M24.868,18.116c0-4.128,0.071-6.792,0.071-7.32h-0.047l-4.272,7.32H24.868z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/25.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/25.svg
deleted file mode 100644
index 56614a9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/25.svg
+++ /dev/null
@@ -1,21 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.676,14.276c0.624-0.433,1.393-0.937,3.049-0.937c2.279,0,5.16,1.584,5.16,5.496
- c0,2.328-1.177,6.12-6.193,6.12c-2.664,0-5.375-1.584-5.543-5.016h3.36c0.144,1.392,0.889,2.327,2.376,2.327
- c1.608,0,2.544-1.367,2.544-3.191c0-1.513-0.72-3.048-2.496-3.048c-0.455,0-1.607,0.023-2.256,1.224l-3-0.144l1.176-9.36h9.36
- v2.832h-6.937L20.676,14.276z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/26.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/26.svg
deleted file mode 100644
index 56faeac..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/26.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M25.309,11.78c-0.097-0.96-0.721-1.633-1.969-1.633c-2.184,0-2.688,2.496-2.808,4.704L20.58,14.9
- c0.456-0.624,1.296-1.416,3.191-1.416c3.529,0,5.209,2.712,5.209,5.256c0,3.72-2.28,6.216-5.568,6.216
- c-5.16,0-6.168-4.32-6.168-8.568c0-3.24,0.432-8.928,6.336-8.928c0.695,0,2.641,0.264,3.48,1.104
- c0.936,0.912,1.271,1.416,1.584,3.217H25.309z M23.172,16.172c-1.271,0-2.568,0.792-2.568,2.928c0,1.849,1.056,3.168,2.664,3.168
- c1.225,0,2.353-0.936,2.353-3.239C25.62,16.868,24.229,16.172,23.172,16.172z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/27.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/27.svg
deleted file mode 100644
index a75c812..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/27.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M29.172,10.34c-1.632,1.776-5.808,6.816-6.216,14.16H19.5c0.36-6.816,4.632-12.24,6.072-13.776
- H17.1l0.072-2.976h12V10.34z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/28.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/28.svg
deleted file mode 100644
index 7f8cf1a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/28.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M23.172,24.956c-4.392,0-5.904-2.856-5.904-5.185c0-0.863,0-3.119,2.592-4.319
- c-1.344-0.672-2.064-1.752-2.064-3.336c0-2.904,2.328-4.656,5.304-4.656c3.528,0,5.4,2.088,5.4,4.44
- c0,1.464-0.6,2.712-1.968,3.432c1.632,0.815,2.544,1.896,2.544,4.104C29.076,21.596,27.684,24.956,23.172,24.956z M23.124,16.916
- c-1.224,0-2.4,0.792-2.4,2.64c0,1.632,0.936,2.712,2.472,2.712c1.752,0,2.424-1.512,2.424-2.688
- C25.62,18.38,24.996,16.916,23.124,16.916z M25.284,12.26c0-1.296-0.888-2.112-1.968-2.112c-1.512,0-2.305,0.864-2.305,2.112
- c0,1.008,0.744,2.112,2.185,2.112C24.516,14.372,25.284,13.484,25.284,12.26z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/29.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/29.svg
deleted file mode 100644
index cb63adf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/29.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M3.972,13.484c0-5.545,4.056-6.024,5.568-6.024c3.264,0,5.856,1.92,5.856,5.376
- c0,2.928-1.896,4.416-3.552,5.544c-2.256,1.584-3.432,2.353-3.816,3.145h7.392V24.5H3.78c0.12-1.992,0.264-4.08,3.96-6.768
- c3.072-2.232,4.296-3.097,4.296-5.017c0-1.128-0.72-2.424-2.352-2.424c-2.352,0-2.424,1.944-2.448,3.192H3.972z"/>
- <path style="fill:#FFFFFF;" d="M20.893,20.564v0.023c0.191,1.176,0.936,1.68,1.967,1.68c1.393,0,2.785-1.176,2.809-4.752
- l-0.048-0.048c-0.769,1.152-2.088,1.44-3.24,1.44c-3.264,0-5.16-2.473-5.16-5.328c0-4.176,2.472-6.12,5.807-6.12
- c5.904,0,6.001,6.36,6.001,8.76c0,6.601-3.12,8.736-6.192,8.736c-2.904,0-4.992-1.68-5.28-4.392H20.893z M23.1,16.22
- c1.176,0,2.473-0.84,2.473-2.855c0-1.944-0.84-3.145-2.568-3.145c-0.863,0-2.424,0.433-2.424,2.88
- C20.58,15.668,21.828,16.22,23.1,16.22z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/3.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/3.gif
deleted file mode 100644
index dd3541a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/3.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/3.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/3.png
deleted file mode 100644
index ef7b700..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/3.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/3.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/3.svg
deleted file mode 100644
index 918be80..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/3.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M15.127,14.005h0.616c1.176,0,3.332-0.112,3.332-2.688c0-0.728-0.336-2.548-2.492-2.548
- c-2.688,0-2.688,2.548-2.688,3.248h-3.64c0-3.724,2.1-6.384,6.58-6.384c2.66,0,6.16,1.344,6.16,5.544
- c0,2.016-1.261,3.276-2.38,3.78v0.056c0.699,0.196,2.996,1.232,2.996,4.62c0,3.752-2.772,6.412-6.776,6.412
- c-1.876,0-6.916-0.42-6.916-6.636h3.836l-0.028,0.027c0,1.064,0.28,3.473,2.912,3.473c1.568,0,2.94-1.064,2.94-3.276
- c0-2.716-2.632-2.828-4.452-2.828V14.005z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/30.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/30.svg
deleted file mode 100644
index dc43ba1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/30.svg
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M8.268,14.636h0.528c1.008,0,2.856-0.096,2.856-2.304c0-0.624-0.288-2.185-2.136-2.185
- c-2.304,0-2.304,2.185-2.304,2.784h-3.12c0-3.191,1.8-5.472,5.64-5.472c2.28,0,5.28,1.152,5.28,4.752
- c0,1.728-1.08,2.808-2.04,3.24V15.5c0.6,0.168,2.568,1.056,2.568,3.96c0,3.216-2.376,5.496-5.808,5.496
- c-1.608,0-5.928-0.36-5.928-5.688h3.288l-0.024,0.024c0,0.912,0.24,2.976,2.496,2.976c1.344,0,2.52-0.911,2.52-2.808
- c0-2.328-2.256-2.424-3.816-2.424V14.636z"/>
- <path style="fill:#FFFFFF;" d="M23.172,7.46c4.008,0,5.904,2.76,5.904,8.736c0,5.976-1.896,8.76-5.904,8.76
- s-5.904-2.784-5.904-8.76C17.268,10.22,19.164,7.46,23.172,7.46z M23.172,22.268c1.92,0,2.448-1.68,2.448-6.071
- c0-4.393-0.528-6.049-2.448-6.049s-2.448,1.656-2.448,6.049C20.724,20.588,21.252,22.268,23.172,22.268z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/4.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/4.gif
deleted file mode 100644
index 4bcbf7e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/4.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/4.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/4.png
deleted file mode 100644
index adb8364..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/4.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/4.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/4.svg
deleted file mode 100644
index 8eb6a53..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/4.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M21.891,20.784h-2.212v4.396h-3.92v-4.396h-7.84v-3.389L15.227,5.3h4.452v12.432h2.212V20.784z
- M15.759,17.731c0-4.815,0.084-7.924,0.084-8.54h-0.056l-4.984,8.54H15.759z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/5.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/5.gif
deleted file mode 100644
index 1c62b4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/5.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/5.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/5.png
deleted file mode 100644
index 4d7eb46..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/5.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/5.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/5.svg
deleted file mode 100644
index ca7a9f2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/5.svg
+++ /dev/null
@@ -1,18 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M14.035,14.252c0.728-0.504,1.624-1.092,3.556-1.092c2.66,0,6.02,1.848,6.02,6.411
- c0,2.717-1.372,7.141-7.224,7.141c-3.108,0-6.272-1.849-6.468-5.853h3.92c0.168,1.624,1.036,2.717,2.772,2.717
- c1.876,0,2.968-1.597,2.968-3.725c0-1.764-0.839-3.556-2.912-3.556c-0.532,0-1.876,0.028-2.632,1.428l-3.5-0.168l1.372-10.92
- h10.919v3.304h-8.092L14.035,14.252z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/6.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/6.gif
deleted file mode 100644
index 23bc555..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/6.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/6.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/6.png
deleted file mode 100644
index 0ba694a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/6.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/6.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/6.svg
deleted file mode 100644
index 783a0b9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/6.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M19.106,10.673c-0.112-1.12-0.84-1.904-2.296-1.904c-2.548,0-3.136,2.912-3.276,5.488l0.056,0.056
- c0.532-0.728,1.512-1.651,3.724-1.651c4.116,0,6.077,3.164,6.077,6.131c0,4.34-2.66,7.252-6.497,7.252
- c-6.02,0-7.196-5.039-7.196-9.996c0-3.78,0.504-10.416,7.392-10.416c0.812,0,3.08,0.308,4.061,1.288
- c1.092,1.063,1.483,1.652,1.848,3.752H19.106z M16.614,15.797c-1.484,0-2.996,0.924-2.996,3.416c0,2.156,1.232,3.697,3.108,3.697
- c1.428,0,2.745-1.094,2.745-3.781C19.471,16.609,17.846,15.797,16.614,15.797z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/7.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/7.gif
deleted file mode 100644
index e55ce89..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/7.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/7.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/7.png
deleted file mode 100644
index 472e96f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/7.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/7.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/7.svg
deleted file mode 100644
index 59b3714..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/7.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M24.28,9.66c-1.904,2.071-6.776,7.951-7.252,16.52h-4.032c0.42-7.952,5.404-14.28,7.084-16.072
- h-9.884l0.084-3.472h14V9.66z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/8.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/8.gif
deleted file mode 100644
index 49375e0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/8.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/8.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/8.png
deleted file mode 100644
index 5e60973..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/8.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/8.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/8.svg
deleted file mode 100644
index c1803a3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/8.svg
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M16.28,26.712c-5.124,0-6.888-3.332-6.888-6.048c0-1.009,0-3.641,3.024-5.04
- c-1.568-0.784-2.408-2.044-2.408-3.893c0-3.388,2.716-5.432,6.188-5.432c4.116,0,6.3,2.436,6.3,5.18
- c0,1.708-0.7,3.164-2.296,4.004c1.903,0.952,2.968,2.212,2.968,4.788C23.168,22.792,21.544,26.712,16.28,26.712z M16.224,17.332
- c-1.428,0-2.8,0.924-2.8,3.08c0,1.903,1.092,3.164,2.884,3.164c2.043,0,2.829-1.765,2.829-3.137
- C19.137,19.04,18.408,17.332,16.224,17.332z M18.744,11.899c0-1.512-1.036-2.464-2.296-2.464c-1.764,0-2.688,1.008-2.688,2.464
- c0,1.177,0.868,2.464,2.548,2.464C17.848,14.363,18.744,13.328,18.744,11.899z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/9.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/9.gif
deleted file mode 100644
index da12a4f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/9.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/9.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/9.png
deleted file mode 100644
index a0676d2..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/9.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/9.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/9.svg
deleted file mode 100644
index bc149d3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/callouts/9.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Generator: Adobe Illustrator 12.0.1, SVG Export Plug-In . SVG Version: 6.00 Build 51448) -->
-<!DOCTYPE svg [
- <!ENTITY ns_svg "http://www.w3.org/2000/svg">
- <!ENTITY ns_xlink "http://www.w3.org/1999/xlink">
-]>
-<svg version="1.0" id="Layer_1" xmlns="&ns_svg;" xmlns:xlink="&ns_xlink;" width="33" height="33" viewBox="0 0 33 33"
- style="overflow:visible;enable-background:new 0 0 33 33;" xml:space="preserve">
-<circle style="stroke:#000000;" cx="16.5" cy="16.5" r="16"/>
-<g>
- <g style="enable-background:new ;">
- <path style="fill:#FFFFFF;" d="M13.953,21.921v0.027c0.224,1.372,1.092,1.961,2.296,1.961c1.624,0,3.248-1.372,3.276-5.545
- l-0.057-0.056c-0.896,1.344-2.436,1.68-3.78,1.68c-3.808,0-6.02-2.884-6.02-6.216c0-4.872,2.884-7.14,6.776-7.14
- c6.888,0,7,7.42,7,10.22c0,7.7-3.641,10.192-7.224,10.192c-3.388,0-5.824-1.96-6.16-5.124H13.953z M16.529,16.853
- c1.372,0,2.884-0.979,2.884-3.332c0-2.268-0.98-3.668-2.996-3.668c-1.008,0-2.828,0.504-2.828,3.36
- C13.589,16.209,15.045,16.853,16.529,16.853z"/>
- </g>
-</g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.gif
deleted file mode 100644
index d9f5e5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.png
deleted file mode 100644
index 5b7809c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.tif
deleted file mode 100644
index 4a28294..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/caution.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-artifact-deployed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-artifact-deployed.png
deleted file mode 100644
index 732495c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-artifact-deployed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-artifact-undeployed.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-artifact-undeployed.png
deleted file mode 100644
index 52800c4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-artifact-undeployed.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-artifacts.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-artifacts.png
deleted file mode 100644
index bc7263c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-artifacts.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-bundle-details.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-bundle-details.png
deleted file mode 100644
index 44c3ec0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-bundle-details.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-configuration-details.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-configuration-details.png
deleted file mode 100644
index cc5eae3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-configuration-details.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-default-artifacts.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-default-artifacts.png
deleted file mode 100644
index 82c57e5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-default-artifacts.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-deployment-error.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-deployment-error.png
deleted file mode 100644
index 5e278ba..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-deployment-error.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-dump-details.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-dump-details.png
deleted file mode 100644
index 8abfb99..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-dump-details.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-file-upload.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-file-upload.png
deleted file mode 100644
index b9fe12b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-file-upload.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-main-page.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-main-page.png
deleted file mode 100644
index 26ae5f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-main-page.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-osgi-state.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-osgi-state.png
deleted file mode 100644
index ac2a5ca..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-osgi-state.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-par-details.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-par-details.png
deleted file mode 100644
index 3b3e32a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-par-details.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-server-props.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-server-props.png
deleted file mode 100644
index 9b89c19..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/console-server-props.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/draft.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/draft.png
deleted file mode 100644
index 59673fe..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/draft.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/env-variables.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/env-variables.png
deleted file mode 100644
index 9cd0c30..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/env-variables.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/home.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/home.gif
deleted file mode 100644
index 6784f5b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/home.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/home.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/home.png
deleted file mode 100644
index cbb711d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/home.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/home.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/home.svg
deleted file mode 100644
index e803a31..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/home.svg
+++ /dev/null
@@ -1,26 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st1 "fill:none;stroke:none;">
- <!ENTITY st2 "fill:#000000;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:6.3469;stroke-linejoin:round;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st0;">
- <g style="&st4;">
- <path style="&st3;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M22.9,7.1L5.1,21.8l0,0c-0.3,0.3-0.5,0.8-0.5,1.2c0,0.2,0,0.4,0.1,0.6c0.3,0.6,0.9,1,1.6,1c0,0,1.1,0,2.2,0c0,2.4,0,14.2,0,14.2c0,1.1,0.8,1.9,1.8,1.9h27.4c1.1,0,1.9-0.9,1.9-2c0,0,0-11.8,0-14.2c1,0,2,0,2,0c0.8,0,1.4-0.5,1.7-1.2
- c0.1-0.2,0.1-0.4,0.1-0.6c0-0.5-0.2-1-0.7-1.4c0,0-3.6-3-4.5-3.7c0-1.2,0-6.9,0-6.9c0-1.2-0.8-2-2-2h-4.8c-1,0-1.7,0.6-1.9,1.5c-1.9-1.6-4.1-3.5-4.1-3.5l0.1,0.1c-0.7-0.7-1.8-0.8-2.7-0.1z"/>
- <path style="&st2;" d="M41.8,22.8l-5.1-4.2v-0.1L31,13.7v0l-6.5-5.5C24.2,8,24,8,23.8,8.2L6.2,22.9c-0.1,0.1-0.1,0.3,0.1,0.3h1.6H10h28.1h1.2h2.3c0.2,0,0.4-0.2,0.2-0.4z"/>
- <path d="M35.8,16.8l0-5.1c0-0.2-0.1-0.4-0.3-0.4h-3.2c-0.2,0-0.3,0.1-0.3,0.3v2.2l3.9,2.9z"/>
- <path d="M11.9,24.7V37c0,0.3,0.1,0.4,0.3,0.4h23.6c0.3,0,0.4-0.2,0.4-0.4V24.7H11.9z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st1;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.gif
deleted file mode 100644
index 6795d9a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.png
deleted file mode 100644
index 12c90f6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.svg
deleted file mode 100644
index dd84f3f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.svg
+++ /dev/null
@@ -1,25 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke-width:6.6112;stroke-linecap:round;stroke-linejoin:round;">
- <!ENTITY st2 "stroke:#FFFFFF;stroke-width:6.6112;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st4;">
- <g>
- <path style="&st2;" d="M41.7,35.3L26.6,9.4c-0.6-1-1.7-1.7-2.9-1.6c-1.2,0-2.3,0.7-2.9,1.7L6.3,35.4c-0.6,1-0.6,2.3,0,3.3c0.6,1,1.7,1.6,2.9,1.6h29.6c1.2,0,2.3-0.6,2.9-1.7c0.6-1,0.6-2.3,0-3.3z"/>
- <path style="&st1;" d="M23.7,11L9.2,37h29.6L23.7,11z"/>
- <path style="&st0;" d="M23.7,11.9L10.3,36.1h27.5l-14-24.1z"/>
- <g>
- <path style="&st5;" d="M24.1,34c-1.1,0-1.8-0.8-1.8-1.8c0-1.1,0.7-1.8,1.8-1.8c1.1,0,1.8,0.7,1.8,1.8c0,1-0.7,1.8-1.8,1.8h0z M22.9,29.3l-0.4-9.1h3.2l-0.4,9.1h-2.3z"/>
- </g>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.tif
deleted file mode 100644
index 184de63..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/important.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-1-FileListing.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-1-FileListing.png
deleted file mode 100644
index 976cfb3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-1-FileListing.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-2-SecuritySettings.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-2-SecuritySettings.png
deleted file mode 100644
index e0ce4ad..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-2-SecuritySettings.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-3-AdvanceSettingsOwner.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-3-AdvanceSettingsOwner.png
deleted file mode 100644
index df56705..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-3-AdvanceSettingsOwner.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-4-AllSetReadAndExecute.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-4-AllSetReadAndExecute.png
deleted file mode 100644
index 82e029e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/install-windows-4-AllSetReadAndExecute.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-local-attach.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-local-attach.png
deleted file mode 100644
index 839fea5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-local-attach.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-remote-attach-default.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-remote-attach-default.png
deleted file mode 100644
index 3bdbc0a..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-remote-attach-default.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-remote-attach-jmxport.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-remote-attach-jmxport.png
deleted file mode 100644
index f85017f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-remote-attach-jmxport.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-remote-attach-jmxusers.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-remote-attach-jmxusers.png
deleted file mode 100644
index 957c4f5..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/jmx-remote-attach-jmxusers.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/kernel-user-region.graffle b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/kernel-user-region.graffle
deleted file mode 100644
index 33a882f..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/kernel-user-region.graffle
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/kernel-user-region.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/kernel-user-region.png
deleted file mode 100644
index 2dc7d13..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/kernel-user-region.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-control-summary.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-control-summary.png
deleted file mode 100644
index 3250820..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-control-summary.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-resource-discovery.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-resource-discovery.png
deleted file mode 100644
index 4ff1c98..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-resource-discovery.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-controls.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-controls.png
deleted file mode 100644
index 69fec36..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-controls.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-main-page.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-main-page.png
deleted file mode 100644
index 22db09b..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-main-page.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-started.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-started.png
deleted file mode 100644
index 6de6ec3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-started.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-stopped.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-stopped.png
deleted file mode 100644
index 7667801..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-server-stopped.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-servers-list.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-servers-list.png
deleted file mode 100644
index c1735f1..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/management-servers-list.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/next.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/next.gif
deleted file mode 100644
index aa1516e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/next.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/next.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/next.png
deleted file mode 100644
index 45835bf..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/next.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/next.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/next.svg
deleted file mode 100644
index 75fa83e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/next.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- <path style="&st3;" d="M22.4,41.1c0,0.3,0.3,0.3,0.5,0.2l16.6-16.9c0.5-0.5,0.4-0.7,0-1L22.9,6.7c-0.1-0.1-0.4-0.1-0.4,0.1v10H8.9c-0.3,0-0.5,0.2-0.5,0.4l0,13.3C8.4,30.9,8.6,31,9,31h13.5l-0.1,10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.gif
deleted file mode 100644
index f329d35..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.png
deleted file mode 100644
index d0c3c64..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.svg
deleted file mode 100644
index 648299d..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.svg
+++ /dev/null
@@ -1,33 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#FFFFFF;stroke-width:12.1438;stroke-linejoin:round;">
- <!ENTITY st1 "fill:none;stroke-width:1.2429;">
- <!ENTITY st2 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st3 "fill:none;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st4 "fill:#FFFFFF;stroke-width:6.3824;stroke-linejoin:round;">
- <!ENTITY st5 "fill:none;stroke:none;">
- <!ENTITY st6 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st7 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:12.7649;stroke-linejoin:round;">
- <!ENTITY st8 "stroke:none;">
- <!ENTITY st9 "fill:none;stroke-width:4.9715;stroke-linejoin:round;">
-]>
-<svg xmlns="http://www.w3.org/2000/svg" width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve">
- <g id="Layer_x0020_1" style="&st6;">
- <path style="&st0;" d="M35.7,19.8v18.9H11V8.8h13.9l10.8,11z"/>
- <path style="&st3;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st7;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st4;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- <path style="&st2;" d="M35.7,8.8H11v29.9h24.7V8.8z"/>
- </g>
- <g id="Layer_x0020_4" style="&st6;">
- <path style="&st9;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M38.7,30.4L25,16.7l-7.7-3l2.7,8.7l13.3,13.4l5.4-5.4z"/>
- <path style="&st8;" d="M20.6,14.7l-2.5,2.5L17,13.4l3.6,1.3z"/>
- <path style="&st1;" d="M19.6,22.2l3-0.3l2.4-2.4l0.4-2.8"/>
- <path style="&st2;" d="M20.4,14.9L18.3,17l1.6,5.2l2.7-0.3l2.4-2.4l0.3-2.4l-5-2.2z"/>
- </g>
- <g id="crop" style="&st6;">
- <path style="&st5;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.tif
deleted file mode 100644
index 08644d6..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/note.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/prev.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/prev.gif
deleted file mode 100644
index 64ca8f3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/prev.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/prev.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/prev.png
deleted file mode 100644
index cf24654..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/prev.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/prev.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/prev.svg
deleted file mode 100644
index 6d88ffd..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/prev.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- <path style="&st3;" d="M25.6,6.9c0-0.3-0.3-0.3-0.5-0.2L8.4,23.6c-0.5,0.5-0.4,0.7,0,1l16.6,16.6c0.1,0.1,0.4,0.1,0.4-0.1v-10h13.6c0.3,0,0.5-0.2,0.5-0.4l0-13.3c0-0.3-0.2-0.5-0.5-0.5H25.5l0.1-10.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/repo-structure.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/repo-structure.png
deleted file mode 100644
index 9fab430..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/repo-structure.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/s2-logo.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/s2-logo.png
deleted file mode 100644
index 7f41814..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/s2-logo.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/system-props.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/system-props.png
deleted file mode 100644
index 0c047a0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/system-props.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/system-variable.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/system-variable.png
deleted file mode 100644
index 725ad3e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/system-variable.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.gif
deleted file mode 100644
index 823f2b4..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.png
deleted file mode 100644
index 5c4aab3..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.svg
deleted file mode 100644
index 4a64a15..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.svg
+++ /dev/null
@@ -1,31 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:#000000;stroke-width:1.0944;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:none;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#FFFFFF;stroke-width:5.6139;stroke-miterlimit:4;">
- <!ENTITY st3 "fill:none;stroke:none;">
- <!ENTITY st4 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st5 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path d="M9.5,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.8,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path d="M28.1,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,34.8l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path d="M28.1,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8s0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8s-0.9-1.5-1.8-1.4z"/>
- <path d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6c0.9,0,1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st1;" d="M35.9,18.7c0,6.6-5.4,12-12,12c-6.6,0-12-5.4-12-12s5.4-12,12-12c6.6,0,12,5.4,12,12z"/>
- <path style="&st5;" d="M9.6,18.6c0,8,6.5,14.4,14.4,14.4c8,0,14.4-6.5,14.4-14.4c0-8-6.5-14.4-14.4-14.4c-8,0-14.4,6.5-14.4,14.4z M12.9,18.6c0-6.2,5-11.2,11.2-11.2c6.2,0,11.2,5,11.2,11.2c0,6.2-5,11.2-11.2,11.2c-6.2,0-11.2-5-11.2-11.2z"/>
- <path style="&st5;" d="M28.2,37.9l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,34.7l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M28.2,31.6l-7.6,0.8c-0.9,0.1-1.5,0.9-1.4,1.8c0.1,0.9,0.9,1.5,1.8,1.4l7.6-0.8c0.9-0.1,1.5-0.9,1.4-1.8c-0.1-0.9-0.9-1.5-1.8-1.4z"/>
- <path style="&st5;" d="M23.1,41.3v0.9c0,0.9,0.7,1.6,1.6,1.6s1.6-0.7,1.6-1.6v-0.9h-3.3z"/>
- <path style="&st0;" d="M22.3,28.3l-3.5-10.7c0,0,6.6,3.9,10.5,0"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st4;">
- <path style="&st3;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.tif
deleted file mode 100644
index 4a3d8c7..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/tip.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/toc-blank.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/toc-blank.png
deleted file mode 100644
index 6ffad17..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/toc-blank.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/toc-minus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/toc-minus.png
deleted file mode 100644
index abbb020..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/toc-minus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/toc-plus.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/toc-plus.png
deleted file mode 100644
index 941312c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/toc-plus.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/up.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/up.gif
deleted file mode 100644
index aabc2d0..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/up.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/up.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/up.png
deleted file mode 100644
index 07634de..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/up.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/up.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/up.svg
deleted file mode 100644
index d31aa9c..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/up.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:none;stroke:none;">
- <!ENTITY st1 "fill:#FFFFFF;stroke:#FFFFFF;stroke-width:7.5901;stroke-linejoin:round;">
- <!ENTITY st2 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st3 "stroke:none;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_3" style="&st2;">
- <g>
- <path style="&st1;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- <path style="&st3;" d="M41.1,25.6c0.3,0,0.3-0.3,0.2-0.5L24.4,8.4c-0.5-0.5-0.7-0.4-1,0L6.7,25.1c-0.1,0.1-0.1,0.4,0.1,0.4h10v13.6c0,0.3,0.2,0.5,0.4,0.5l13.3,0c0.3,0,0.5-0.2,0.5-0.5V25.5l10.1,0.1z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st2;">
- <path style="&st0;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/virgo-logo-large.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/virgo-logo-large.png
deleted file mode 100644
index f8fe1f9..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/virgo-logo-large.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/virgo-logo-small.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/virgo-logo-small.png
deleted file mode 100644
index 45e9224..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/virgo-logo-small.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.gif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.gif
deleted file mode 100644
index 3adf191..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.gif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.png
deleted file mode 100644
index 1c33db8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.svg b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.svg
deleted file mode 100644
index fc8d748..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.svg
+++ /dev/null
@@ -1,23 +0,0 @@
-<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- Generator: Adobe Illustrator 9.0, SVG Export Plug-In -->
-<!DOCTYPE svg [
- <!ENTITY st0 "fill:#000000;stroke:#FFFFFF;stroke-width:7.9139;stroke-linejoin:round;">
- <!ENTITY st1 "fill-rule:nonzero;clip-rule:nonzero;fill:#FFFFFF;stroke:#000000;stroke-miterlimit:4;">
- <!ENTITY st2 "fill:none;stroke:none;">
- <!ENTITY st3 "fill:#000000;">
- <!ENTITY st4 "fill-rule:evenodd;clip-rule:evenodd;stroke:none;">
- <!ENTITY st5 "fill-rule:nonzero;clip-rule:nonzero;stroke:#000000;stroke-miterlimit:4;">
-]>
-<svg width="48pt" height="48pt" viewBox="0 0 48 48" xml:space="preserve" xmlns="http://www.w3.org/2000/svg">
- <g id="Layer_x0020_4" style="&st1;">
- <g style="&st4;">
- <path style="&st0;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path style="&st3;" d="M16.4,42.3L5.7,31.6V16.4L16.4,5.7h15.2l10.7,10.7v15.2L31.6,42.3H16.4z"/>
- <path d="M11.7,17.7l18.7,18.7l5.9-5.9L17.6,11.7l-5.9,5.9z"/>
- <path d="M11.7,30.5l5.9,5.9l18.7-18.7l-5.9-5.9L11.7,30.5z"/>
- </g>
- </g>
- <g id="crop_x0020_marks" style="&st5;">
- <path style="&st2;" d="M48,48H0V0h48v48z"/>
- </g>
-</svg>
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.tif b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.tif
deleted file mode 100644
index 7b6611e..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/warning.tif
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/welcome.png b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/welcome.png
deleted file mode 100644
index 87a3926..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/images/welcome.png
+++ /dev/null
Binary files differ
diff --git a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/virgo-user-guide.html b/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/virgo-user-guide.html
deleted file mode 100644
index a9738f8..0000000
--- a/documentation/virgo-documentation-2.1.1.RELEASE/docs/virgo-user-guide/htmlsingle/virgo-user-guide.html
+++ /dev/null
@@ -1,1607 +0,0 @@
-<html><head>
- <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
- <title>Virgo User Guide</title><link rel="stylesheet" href="css/stylesheet.css" type="text/css"><meta name="generator" content="DocBook XSL Stylesheets V1.74.0"><!--Begin Google Analytics code--><script type="text/javascript">
- var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
- document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
- </script><script type="text/javascript">
- var pageTracker = _gat._getTracker("UA-2728886-3");
- pageTracker._setDomainName("none");
- pageTracker._setAllowLinker(true);
- pageTracker._trackPageview();
- </script><!--End Google Analytics code--></head><body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"><div class="book" lang="en"><div class="titlepage"><div><div><h1 class="title"><a name="d0e1"></a>Virgo User Guide</h1></div><div><div class="authorgroup"><div class="author"><h3 class="author"><span class="firstname">Rob</span> <span class="surname">Harrop</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Paul</span> <span class="surname">Kuzan</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Sam</span> <span class="surname">Brannen</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Paul</span> <span class="surname">Harris</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Christopher</span> <span class="surname">Frost</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Ben</span> <span class="surname">Hale</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Glyn</span> <span class="surname">Normington</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Juliet</span> <span class="surname">Shackell</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Steve</span> <span class="surname">Powell</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Violeta</span> <span class="surname">Georgieva</span></h3></div><div class="author"><h3 class="author"><span class="firstname">Hristo</span> <span class="surname">Iliev</span></h3></div></div></div><div><div class="mediaobject" align="right"><img src="images/virgo-logo-small.png" align="right"></div></div><div><span class="productname">Virgo<br></span></div><div><p class="releaseinfo">2.1.1.RELEASE</p></div></div><div><div><div class="legalnotice"><a name="d0e72"></a><p>
- Copyright © 2009, 2010 VMware Inc. and others
- </p><p>
- Contributors:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- VMware Inc. - initial contribution
- </p></li><li><p>
- Violeta Georgieva, SAP AG - Tomcat context configuration
- </p></li><li><p>
- Hristo Iliev, SAP AG - Setting jmx.properties permissions
- </p></li></ul></div><p>
- </p></div></div></div><hr></div><div class="toc"><p><b>Table of Contents</b></p><dl><dt><span class="chapter"><a href="#introduction">1. Introduction</a></span></dt><dd><dl><dt><span class="section"><a href="#d0e94">1.1. A Note for Virgo Kernel Users</a></span></dt></dl></dd><dt><span class="chapter"><a href="#installation">2. Installing Virgo Web Server</a></span></dt><dd><dl><dt><span class="section"><a href="#installation-prereqs">2.1. Prerequisites</a></span></dt><dt><span class="section"><a href="#installation-zip">2.2. Installing from the ZIP Download</a></span></dt><dt><span class="section"><a href="#installation-post">2.3. Post-installation steps</a></span></dt></dl></dd><dt><span class="chapter"><a href="#kernel-installation">3. Installing Virgo Kernel</a></span></dt><dd><dl><dt><span class="section"><a href="#kernel-installation-prereqs">3.1. Prerequisites</a></span></dt><dt><span class="section"><a href="#kernel-installation-zip">3.2. Installing from the ZIP Download</a></span></dt><dt><span class="section"><a href="#kernel-installation-post">3.3. Post-installation steps</a></span></dt></dl></dd><dt><span class="chapter"><a href="#starting-stopping">4. Starting and Stopping VWS</a></span></dt><dd><dl><dt><span class="section"><a href="#d0e328">4.1. Starting Virgo Web Server</a></span></dt><dt><span class="section"><a href="#d0e376">4.2. Starting in Clean Mode</a></span></dt><dt><span class="section"><a href="#d0e410">4.3. Starting in Debug Mode</a></span></dt><dt><span class="section"><a href="#d0e489">4.4. Starting with JMX Access Modifications</a></span></dt><dt><span class="section"><a href="#d0e724">4.5. Starting with a Custom Configuration Directory</a></span></dt><dt><span class="section"><a href="#d0e778">4.6. Stopping Virgo Web Server</a></span></dt></dl></dd><dt><span class="chapter"><a href="#kernel-regions-overview">5. Overview of the Virgo Kernel and User Region</a></span></dt><dd><dl><dt><span class="section"><a href="#kernel-overview">5.1. The Virgo Kernel</a></span></dt><dt><span class="section"><a href="#user-region-overview">5.2. The User Region</a></span></dt></dl></dd><dt><span class="chapter"><a href="#admin-shell">6. Equinox Console Extension (vsh)</a></span></dt><dd><dl><dt><span class="section"><a href="#admin-shell-using">6.1. Using the Equinox Console Extension</a></span></dt><dt><span class="section"><a href="#admin-shell-command-reference">6.2. Equinox Console Extension Subcommand Reference</a></span></dt></dl></dd><dt><span class="chapter"><a href="#admin-console">7. The Admin Console</a></span></dt><dd><dl><dt><span class="section"><a href="#admin-console-login">7.1. Invoking the Admin Console</a></span></dt><dt><span class="section"><a href="#admin-console-tasks">7.2. Typical Admin Console Use Cases</a></span></dt></dl></dd><dt><span class="chapter"><a href="#repository">8. The Provisioning Repository</a></span></dt><dd><dl><dt><span class="section"><a href="#repository-introduction">8.1. Overview of the Provisioning Repository</a></span></dt><dt><span class="section"><a href="#repository-brits">8.2. Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository</a></span></dt><dt><span class="section"><a href="#repository-configuration">8.3. Configuring the repository</a></span></dt></dl></dd><dt><span class="chapter"><a href="#serviceability">9. Serviceability</a></span></dt><dd><dl><dt><span class="section"><a href="#serviceability-info-log">9.1. Event logging</a></span></dt><dt><span class="section"><a href="#serviceability-info-trace">9.2. (Trace) Logging</a></span></dt><dt><span class="section"><a href="#serviceability-info-dump">9.3. Service Dumps</a></span></dt></dl></dd><dt><span class="chapter"><a href="#deployment">10. Working with Applications</a></span></dt><dd><dl><dt><span class="section"><a href="#deployment-deploying">10.1. Deploying Artifacts</a></span></dt><dt><span class="section"><a href="#deployment-undeploy">10.2. Undeploying Artifacts</a></span></dt></dl></dd><dt><span class="chapter"><a href="#configuring">11. Configuration</a></span></dt><dd><dl><dt><span class="section"><a href="#configuring-kernel">11.1. Configuring the Virgo Kernel and User Region</a></span></dt><dt><span class="section"><a href="#configuring-serviceability">11.2. Configuring Serviceability</a></span></dt><dt><span class="section"><a href="#configuring-tomcat">11.3. Configuring the Embedded Tomcat Servlet Container</a></span></dt><dt><span class="section"><a href="#configuring-provisioning-repository">11.4. Configuring the Local Provisioning Repository</a></span></dt><dt><span class="section"><a href="#configuring-hosted-repo">11.5. Configuring a Hosted Repository</a></span></dt><dt><span class="section"><a href="#configuring-osgi-framework">11.6. Configuring the OSGi Framework</a></span></dt></dl></dd><dt><span class="appendix"><a href="#log-codes">A. Event log codes</a></span></dt><dd><dl><dt><span class="section"><a href="#event-log-codes-format">A.1. Format of the event log codes</a></span></dt></dl></dd><dt><span class="appendix"><a href="#known-issues">B. Known Issues</a></span></dt><dd><dl><dt><span class="section"><a href="#known-issues-firewall-timeout">B.1. Timeout During Startup Due to Firewall Settings</a></span></dt><dt><span class="section"><a href="#known-issues-perm-gen-sun-vm">B.2. OutOfMemoryError: PermGen space running on Sun VM</a></span></dt><dt><span class="section"><a href="#alternate-serviceability-work">B.3. Alternate serviceability and work Directories</a></span></dt><dt><span class="section"><a href="#web-application-context-configuration">B.4. Web Application Context Configuration File Copying</a></span></dt></dl></dd><dt><span class="appendix"><a href="#furtherreading">C.
- Further Reading
- </a></span></dt></dl></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="introduction"></a>1. Introduction</h2></div></div></div><p>
- This User Guide covers both Virgo Web Server and Virgo Kernel, although it emphasises the Virgo Web Server since that is likely
- to apply to more users.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e94"></a>1.1 A Note for Virgo Kernel Users</h2></div></div></div><p>
- Virgo Kernel users can be reassured that the majority of the information
- in this Guide is directly applicable to the Virgo Kernel and they can simply ignore the web-related sections.
- </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="installation"></a>2. Installing Virgo Web Server</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation-prereqs"></a>2.1 Prerequisites</h2></div></div></div><p>
- The Virgo Web Server, or VWS for short, requires Java SE 6 or later to be installed. Java is available from
- <a class="ulink" href="http://www.java.com/" target="_top">http://www.java.com/</a> and elsewhere.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation-zip"></a>2.2 Installing from the ZIP Download</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e113"></a>Downloading the ZIP file</h3></div></div></div><p>
- Virgo Web Server is distributed as a ZIP file. This can be downloaded from
- <a class="ulink" href="http://www.eclipse.org/virgo/download/" target="_top">here</a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installation-zip-installing"></a>Installing</h3></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-zip-installing-linux"></a>Linux</h4></div></div></div><p>
- To install the Virgo Web Server on Linux, unzip the distribution package to the desired installation directory.
- For example, to install into <code class="literal">/opt</code>:
- </p><pre class="screen">prompt$ unzip virgo-web-server-2.1.1.RELEASE.zip -d /opt</pre><p>
- This creates a directory called <code class="literal">virgo-web-server-2.1.1.RELEASE</code> under <code class="literal">/opt</code>.
- </p><p>
- Virgo Web Server requires write access to the installation directory, in this case <code class="literal">/opt/virgo-web-server-2.1.1.RELEASE</code>.
- Typically this means it must be run as the user that installed it, or the installation directory’s ownership must be changed.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-zip-installing-win"></a>Microsoft Windows</h4></div></div></div><p>
- To install the Virgo Web Server on Windows, unzip the distribution package to the desired installation directory.
- You should use a zip application such as 7zip, not the built-in folder decompression. Note that both Windows and
- Java have some issues with long file names and file paths, so we recommend installing to the root directory of
- your chosen drive.
- </p></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="installation-post"></a>2.3 Post-installation steps</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installation-post-env"></a>Set environment variable variables</h3></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-post-env-java"></a>JAVA_HOME</h4></div></div></div><p>
- The Virgo Web Server uses the <code class="literal">JAVA_HOME</code> environment variable to locate the <code class="literal">java</code>
- executable. Configure this environment variable to point to the home directory of the Java 6 installation on your computer.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="installation-post-env-server"></a>SERVER_HOME</h4></div></div></div><p>
- As a convenience it is recommended that you create an environment variable that points
- to the Virgo Web Server installation directory. Note that the Virgo Web Server does not require that
- such an environment variable has been set. This variable may have any name of your
- choosing. The Virgo Web Server’s documentation assumes that the variable is named
- <code class="literal">SERVER_HOME</code>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="installation-post-env-server-linux"></a>Linux</h5></div></div></div><p>
- Edit the <code class="literal">.profile</code> file in your home directory to
- add the <code class="literal">SERVER_HOME</code> and <code class="literal">JAVA_HOME</code> environment variables. For
- example, if you installed into <code class="literal">/opt</code>:
- </p><pre class="screen">export SERVER_HOME=/opt/virgo-web-server-2.1.1.RELEASE/
-export JAVA_HOME=/user/java/jdk1.6.0_17
-export PATH=$JAVA_HOME/bin:$PATH</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h5 class="title"><a name="installation-post-env-server-win"></a>Microsoft Windows</h5></div></div></div><p>
- This section shows how to add <code class="literal">SERVER_HOME</code> as a system variable on Windows. Follow the same procedure to add or update the <code class="literal">JAVA_HOME</code> environment variable.
- </p><p>
- From the Start menu, open the Control Panel and double-click on ‘System’.
- </p><p>
- <img src="images/system-props.png">
- </p><p>
- Click the ‘Advanced’ tab and select ‘Environment Variables’. Next,
- click the ‘New’ button in the ‘System Variables’ section.
- </p><p>
- <img src="images/env-variables.png">
- </p><p>
- This will display the ‘New System Variable’ window. Enter
- <code class="literal">SERVER_HOME</code> as the ‘Variable name’ and
- the installation directory as the ‘Variable value’. Click OK.
- </p><p>
- <img src="images/system-variable.png">
- </p></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="installation-post-env-server-win-troubleshooting"></a>Microsoft Windows - Troubleshooting</h3></div></div></div><p>
- When starting the Virgo Web Server on some variants of Windows you might encounter a problem with file permissions.
- The error looks like this.
- </p><pre class="screen">WARNING: jmxPermissions.vbs did not update the permissions of C:\virgo\config\org.eclipse.virgo.kernel.jmxremote.access.properties. Check the file has the correct permissions.</pre><p>
- If the VWS starts at this point you can skip this section and carry on. However to secure your
- installation you have to set correct permissions. To do so, go to the ‘config’ directory of the installation
- in Windows Explorer.
- </p><p>
- <img src="images/install-windows-1-FileListing.png">
- </p><p>
- Right click on the ‘org.eclipse.virgo.kernel.jmxremote.access.properties’ file and view its properties,
- then select the ‘Security’ tab. Remove all groups and users from the list and select ‘Apply’.
- </p><p>
- <img src="images/install-windows-2-SecuritySettings.png">
- </p><p>
- Within the security page select the ‘Advanced’ options. On the ‘Owner’ tab, choose the owner
- that you are trying to run the VWS as and select ‘Apply’.
- </p><p>
- <img src="images/install-windows-3-AdvanceSettingsOwner.png">
- </p><p>
- Once this is done select ‘OK’ to return to the ‘Security’ tab
- and now add the owner to the list of groups and users that have permission to access the file.
- </p><p>
- <img src="images/install-windows-4-AllSetReadAndExecute.png">
- </p><p>
- Once all these steps are complete you can proceed to start the VWS.
- </p><pre class="screen">C:\dev\virgo-web-server-2.1.0.RELEASE>bin\startup.bat
-[2009-12-08 13:09:09.545] startup-tracker <KE0001I> Kernel starting.</pre></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="kernel-installation"></a>3. Installing Virgo Kernel</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-installation-prereqs"></a>3.1 Prerequisites</h2></div></div></div><p>
- The Virgo Kernel, or VK for short, requires Java SE 6 or later to be installed. Java is available from
- <a class="ulink" href="http://www.java.com/" target="_top">http://www.java.com/</a> and elsewhere.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-installation-zip"></a>3.2 Installing from the ZIP Download</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e277"></a>Downloading the ZIP file</h3></div></div></div><p>
- Virgo Kernel is distributed as a ZIP file. This can be downloaded from
- <a class="ulink" href="http://www.eclipse.org/virgo/download/" target="_top">here</a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="kernel-installation-zip-installing"></a>Installing</h3></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="kernel-installation-zip-installing-linux"></a>Linux</h4></div></div></div><p>
- To install the Virgo Kernel on Linux, unzip the distribution package to the desired installation directory.
- For example, to install into <code class="literal">/opt</code>:
- </p><pre class="screen">prompt$ unzip virgo-kernel-2.1.1.RELEASE.zip -d /opt</pre><p>
- This creates a directory called <code class="literal">virgo-kernel-2.1.1.RELEASE</code> under <code class="literal">/opt</code>.
- </p><p>
- Virgo Kernel requires write access to the installation directory, in this case <code class="literal">/opt/virgo-kernel-2.1.1.RELEASE</code>.
- Typically this means it must be run as the user that installed it, or the installation directory’s ownership must be changed.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="kernel-installation-zip-installing-win"></a>Microsoft Windows</h4></div></div></div><p>
- To install the Virgo Kernel on Windows, unzip the distribution package to the desired installation directory.
- You should use a zip application such as 7zip, not the built-in folder decompression. Note that both Windows and
- Java have some issues with long file names and file paths, so we recommend installing to the root directory of
- your chosen drive.
- </p></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-installation-post"></a>3.3 Post-installation steps</h2></div></div></div>
- Follow the same <a class="link" href="#installation-post" title="2.3 Post-installation steps">Post-installation steps</a> as for Virgo Web Server.
- </div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="starting-stopping"></a>4. Starting and Stopping Virgo Web Server</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e328"></a>4.1 Starting Virgo Web Server</h2></div></div></div><p>
- To start Virgo Web Server run the <code class="literal">startup.sh</code> (Linux) or <code class="literal">startup.bat</code> (Windows) script.
- For both platforms, the script is located in the <code class="literal">SERVER_HOME/bin</code> directory.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e342"></a>Linux</h3></div></div></div><p>
- To start Virgo Web Server, open a terminal window and run <code class="literal">startup.sh</code>:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh</pre><p>
- Once Virgo Web Server has started, the console will display a log message
- similar to the one shown below, along with other status messages:
- </p><pre class="screen">[2009-11-30 12:12:12.111] Thread-2 <UR0001I> User region ready.</pre><p>The preceding message indicates that you can start using VWS.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e358"></a>Microsoft Windows</h3></div></div></div><p>
- To start Virgo Web Server, open a command-window and run <code class="literal">startup.bat</code>:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat</pre><p>
- Once Virgo Web Server has started, the console will display a log message
- similar to the one shown below, along with other status messages:
- </p><pre class="screen">[2009-11-30 12:12:12.111] Thread-2 <UR0001I> User region ready.</pre><p>
- </p><p>The preceding message indicates that you can start using VWS.</p><p>
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e376"></a>4.2 Starting in Clean Mode</h2></div></div></div><p>
- When you start Virgo Web Server in clean mode, the startup script removes the <code class="literal">SERVER_HOME/work</code> directory (and hence all
- running applications) as well as all trace, log and dump files. It leaves the
- <code class="literal">SERVER_HOME/repository</code> and <code class="literal">SERVER_HOME/pickup</code> directories untouched,
- which means that any applications previously hot deployed will be automatically reinstalled.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e390"></a>Linux</h3></div></div></div><p>
- To start Virgo Web Server in clean mode, open a terminal window and run <code class="literal">startup.sh -clean</code>:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -clean </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e400"></a>Microsoft Windows</h3></div></div></div><p>
- To start Virgo Web Server in clean mode, open a command window and run <code class="literal">startup.bat -clean</code>:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -clean</pre></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e410"></a>4.3 Starting in Debug Mode</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e413"></a>Linux</h3></div></div></div><p>
- To start Virgo Web Server in debug mode, run
- <code class="literal">startup.sh</code> passing in the
- <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -debug</pre><p>
- This will start the debug agent listening on port
- <code class="literal">8000</code> which is the default remote debug port used
- by Eclipse. To start in debug mode with a specific port number, pass
- this in as the value for the <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -debug 8001</pre><p>
- This will start the debug agent listening on port
- <code class="literal">8001</code>. To start in debug mode and suspend the VM
- until a debugger attaches, pass in the <code class="literal">-suspend</code>
- argument along with the <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -debug -suspend</pre><p>
- This starts the debug agent, but prevents Virgo Web Server from actually
- starting until a debugger attaches to the agent. This can be useful
- when trying to diagnose problems that occur during startup.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e451"></a>Microsoft Windows</h3></div></div></div><p>
- To start Virgo Web Server in debug mode, run
- <code class="literal">startup.bat</code> passing in the
- <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -debug</pre><p>
- This will start the debug agent listening on port
- <code class="literal">8000</code> which is the default remote debug port used
- by Eclipse. To start in debug mode with a specific port number, pass
- this in as the value for the <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -debug 8001</pre><p>
- This will start the debug agent listening on port
- <code class="literal">8001</code>. To start in debug mode and suspend the VM
- until a debugger attaches, pass in the <code class="literal">-suspend</code>
- argument along with the <code class="literal">-debug</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -debug -suspend</pre><p>
- This starts the debug agent, but prevents Virgo Web Server from actually
- starting until a debugger attaches to the agent. This can be useful
- when trying to diagnose problems that occur during startup.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e489"></a>4.4 Starting with JMX Access Modifications</h2></div></div></div>
- The Virgo Web Server always starts with JMX access enabled, allowing you to use a management tool such as JConsole
- to attach to the Web Server instance.
- By default both local access and remote access over SSL with username and password
- authentication are provided. The default port for secure JMX access is <code class="literal">9875</code>
- and the default username and password are <code class="literal">admin</code> and <code class="literal">springsource</code>.
- <div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e502"></a>Linux</h3></div></div></div><p>
- To start Virgo Web Server with default JMX access enabled, run <code class="literal">startup.sh</code> passing
- in no arguments:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh </pre><p>
- To start JConsole, run the <code class="literal">jconsole.sh</code> script, located in the <code class="literal">bin</code> directory, as shown:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/jconsole.sh </pre><p>
- The following image shows how to specify a local connection using JConsole.
- </p><p>
- <img src="images/jmx-local-attach.png">
- </p><p>
- The following image shows how to specify a remote connection in JConsole that uses SSL with the default
- username/password (<code class="literal">admin/springsource</code> and default secure port of <code class="literal">9875</code>).
- </p><p>
- <img src="images/jmx-remote-attach-default.png">
- </p><p>
- To start with the JMX remote access on a specific port number other than the default <code class="literal">9875</code>,
- pass this port number in as the value
- of the <code class="literal">-jmxport</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -jmxport 9090</pre><p>
- This will start the Virgo Web Server with JMX enabled for remote connections on port <code class="literal">9090</code>.
- </p><p>
- <img src="images/jmx-remote-attach-jmxport.png">
- </p><p>To start the JMX remote access with a custom username and password, update the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.users.properties</code> file. First specify the custom username by changing the value of the <code class="literal">role.admin</code> property. Then set the password of this new user by adding a new property called <code class="literal">user.<span class="emphasis"><em>username</em></span></code>, where <code class="literal"><span class="emphasis"><em>username</em></span></code> refers to the actual name of the user. Finally, restart VWS for the changes to take effect.</p><p>For example, if you want change the JMX remote access username to <code class="literal">zebedee</code> with password <code class="literal">florence</code>, change the file as follows:
- </p><pre class="programlisting">##################
-# User definitions
-##################
-user.zebedee=florence
-
-
-##################
-# Role definitions
-##################
-role.admin=zebedee</pre><p>Specify the custom username in JConsole as shown. </p><p>
- <img src="images/jmx-remote-attach-jmxusers.png">
- </p><p>
- To start the JMX remote access using a custom SSL certificate, edit the file located at
- <code class="literal">$SERVER_HOME/config/keystore</code>. If you wish to use a different keystore,
- pass this filename in as the value for the <code class="literal">-keystore</code> argument and the keystore
- password in as the value for the <code class="literal">-keystorePassword</code> argument:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -keystore customKeystore -keystorePassword customKeystorePassword</pre><p>
- This will start the Virgo Web Server with JMX enabled for remote connections using an SSL certificate from
- <code class="literal">customKeystore</code> with a password of <code class="literal">customKeystorePassword</code>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e613"></a>Microsoft Windows</h3></div></div></div><p>
- To start Virgo Web Server with default JMX access enabled, run <code class="literal">startup.bat</code> passing
- in no arguments:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat</pre><p>
- To start JConsole, run the <code class="literal">jconsole.bat</code> script, located in the <code class="literal">bin</code> directory, as shown:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\jconsole.bat </pre><p>
- The following image shows how to specify a local connection using JConsole.
- </p><p>
- <img src="images/jmx-local-attach.png">
- </p><p>
- The following image shows how to specify a remote connection in JConsole that uses SSL with the default
- username/password (<code class="literal">admin/springsource</code> and default secure port of <code class="literal">9875</code>).
- </p><p>
- <img src="images/jmx-remote-attach-default.png">
- </p><p>
- To start with the JMX remote access on a specific port number other than the default <code class="literal">9875</code>,
- pass this port number in as the value of the <code class="literal">-jmxport</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -jmxport 9090</pre><p>
- This will start the Virgo Web Server with JMX enabled for remote connections on port
- <code class="literal">9090</code>.
- </p><p>
- <img src="images/jmx-remote-attach-jmxport.png">
- </p><p>To start the JMX remote access with a custom username and password, update the <code class="literal">%SERVER_HOME%\config\org.eclipse.virgo.kernel.users.properties</code> file. First specify the custom username by changing the value of the <code class="literal">role.admin</code> property. Then set the password of this new user by adding a new property called <code class="literal">user.<span class="emphasis"><em>username</em></span></code>, where <code class="literal"><span class="emphasis"><em>username</em></span></code> refers to the actual name of the user. Finally, restart VWS for the changes to take effect.</p><p>For example, if you want change the JMX remote access username to <code class="literal">zebedee</code> with password <code class="literal">florence</code>, change the file as follows:
- </p><pre class="programlisting">##################
-# User definitions
-##################
-user.zebedee=florence
-
-
-##################
-# Role definitions
-##################
-role.admin=zebedee</pre><p>Specify the custom username in JConsole as shown. </p><p>
- <img src="images/jmx-remote-attach-jmxusers.png">
- </p><p>
- To start the JMX remote access using a custom SSL certificate, edit the file located at
- <code class="literal">%SERVER_HOME%\config\keystore</code>. If you wish to use a different
- keystore, pass this filename in as the value for the <code class="literal">-keystore</code> argument and the
- keystore password in as the value for the <code class="literal">-keystorePassword</code> argument:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -keystore customKeystore -keystorePassword customKeystorePassword</pre><p>
- This will start the Virgo Web Server with JMX enabled for remote attach using an SSL certificate from
- <code class="literal">customKeystore</code> with a password of <code class="literal">customKeystorePassword</code>.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e724"></a>4.5 Starting with a Custom Configuration Directory</h2></div></div></div><p>
- Use the <code class="literal">-configDir</code> option to specify an alternate <code class="literal">config</code> directory, different from the
- default <code class="literal">SERVER_HOME/config</code> directory. This option allows you to use the same Virgo Web Server
- installation to run multiple instances of Web Server . Simply create a config directory for each
- instance, specify unique port numbers, logging and tracing directories, and so on. and then specify that directory
- when starting Virgo Web Server.
- </p><p>
- If you specify a relative path for the <code class="literal">-configDir</code> parameter,
- the startup script interprets the path as relative to the root of the Virgo Web Server installation,
- and not relative to the directory from which you execute the <code class="literal">startup</code> script.
- </p><p>
- See <a class="link" href="#alternate-serviceability-work" title="B.3 Alternate serviceability and work Directories">Alternate <code class="literal">serviceability</code> and <code class="literal">work</code>
- Directories</a> for a known issue related to specifying an alternate <code class="literal">config</code> directory.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e760"></a>Linux</h3></div></div></div>
- To start Virgo Web Server using a config directory of <code class="literal">/config/node1</code>:
- <pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/startup.sh -configDir /config/node1</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e769"></a>Windows</h3></div></div></div>
- To start Virgo Web Server using a config directory of <code class="literal">c:\config\node1</code>:
- <pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\startup.bat -configDir c:\config\node1</pre></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="d0e778"></a>4.6 Stopping Virgo Web Server</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e781"></a>Linux</h3></div></div></div><p>
- To stop a running instance of Virgo Web Server, start a new terminal window and run the <code class="literal">shutdown.sh</code> script:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/shutdown.sh</pre><p>
- To stop a running instance of Virgo Web Server immediately, bypassing normal shutdown
- processing, run <code class="literal">shutdown.sh</code> with the <code class="literal">-immediate</code> option:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/shutdown.sh -immediate</pre><p>
- If, when you started the Web Server instance, you used the <code class="literal">-jmxport</code> option to specify a non-default JMX port number,
- then you must pass this port number to the <code class="literal">-jmxport</code> of the <code class="literal">shutdown.sh</code> script
- to gracefully shut it down.
- For example, if you specified <code class="literal">9090</code> as the JMX port, use the following to shut down the Web Server instance:
- </p><pre class="screen">prompt$ cd $SERVER_HOME
-prompt$ bin/shutdown.sh -jmxport 9090</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="d0e817"></a>Microsoft Windows</h3></div></div></div><p>
- To stop a running instance of Virgo Web Server, start a new console window and run the <code class="literal">shutdown.bat</code> script:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\shutdown.bat</pre><p>
- To stop a running instance of Virgo Web Server immediately, bypassing normal shutdown
- processing, run <code class="literal">shutdown.bat</code> with the <code class="literal">-immediate</code> option:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\shutdown.bat -immediate</pre><p>
- If, when you started the Web Server instance, you used the <code class="literal">-jmxport</code> option to specify a non-default JMX port number,
- then you must pass this port number to the <code class="literal">-jmxport</code> of the <code class="literal">shutdown.bat</code> script to gracefully shut it down.
- For example, if you specified <code class="literal">9090</code> as the JMX port, use the following to shut down the Web Server instance:
- </p><pre class="screen">prompt> cd %SERVER_HOME%
-prompt> bin\shutdown.bat -jmxport 9090</pre></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="kernel-regions-overview"></a>5. Overview of the Virgo Kernel and User Region</h2></div></div></div><p>Conceptually, VWS can be divided into two separate subsystems, one of which actually encompases the other:</p><div class="itemizedlist"><ul type="disc"><li>The <span class="emphasis"><em>kernel</em></span>, which is the heart of VWS. It makes up most of the VWS, except for the part that supports Web applications. In other words, the kernel provides full OSGi modular support for your applications, as long as they are not Web-based.
- <p>See <a class="link" href="#kernel-overview" title="5.1 The Virgo Kernel">The Virgo Kernel</a> for additional information.</p></li><li>The <span class="emphasis"><em>user region</em></span> is the subsystem that manages user applications. It deliberately isolates the kernel from both your applications and those of the VWS itself, such as the Admin Console, making it much easier for you to administer VWS.
- <p>See <a class="link" href="#user-region-overview" title="5.2 The User Region">The User Region</a> for additional information.</p></li></ul></div><p>When you download and install Virgo Web Server you get both the kernel and web server support (configured in the user region). You can also <a class="ulink" href="http://www.eclipse.org/virgo/download/" target="_top">download and use the kernel</a> on its own if you do not plan on deploying Web applications. </p><p>The following graphic shows how the kernel and user region make up VWS:</p><table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0" width="885"><tr style="height: 805px"><td><img src="images/kernel-user-region.png" width="885"></td></tr></table><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="kernel-overview"></a>5.1 The Virgo Kernel</h2></div></div></div><p>
- The Virgo Kernel encapsulates almost all of VWS except for the deployment of Web applications. In sum, the kernel provides the following VWS features:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- Deployment of non-Web artifacts, such as OSGi bundles, PARs, plans,
- and configuration artifacts.
- </p></li><li><p>
- Local and hosted repositories
- </p></li><li><p>
- Scoping
- </p></li><li><p>
- Hot deployment
- </p></li><li><p>
- User region
- </p></li><li><p>
- Auto-provisioning
- </p></li><li><p>
- System and application tracing and dump support
- </p></li><li><p>
- Spring beans and Spring DM support
- </p></li></ul></div><p>See <a class="link" href="#configuring" title="11. Configuration">Configuring VWS</a> for details about configuring the kernel to better suit your environment. </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="user-region-overview"></a>5.2 The User Region</h2></div></div></div><p>
- The user region isolates the kernel from deployed applications,
- including both your own user applications and the user-oriented
- VWS applications such as the Admin Console. This means
- that the kernel is mostly invisible to applications and to application
- management. This is because most of the kernel bundles are not
- installed in the user region (apart from a few needed for region
- management). The necessary function to support the kernel runs in the
- OSGi framework, but the user region applications cannot see it, except
- for the services that are normally offered.
- </p><p>
- This way of implementing VWS greatly simplifies
- the administration tasks you perform. In particular, when you use the
- Admin Console to manage Web Server, you do not see
- the many bundles that are internal to the kernel. The only exceptions
- are the kernel bundles that VWS uses for region
- management, which are required to be installed in the user region.
- </p><p>This isolation has many other benefits. For example, it is no longer necessary for the kernel and user applications to use the same version of the Spring Framework. In fact the kernel installs only those parts of the Spring Framework that it needs. If you update the kernel, it is far less likely that you will also need to upgrade or adjust the applications to accomodate a new version of the kernel. The kernel implementation is therefore much more stable and resilient and applications are much more likely to survive kernel upgrades between releases. </p><p>When you install VWS, the kernel creates a single user region.
- The kernel and the user region are configured independently of each other; see <a class="link" href="#configuring" title="11. Configuration">Configuring VWS</a> for details.
- </p><p>Finally, the isolation provided by the user region together with scoped applications and plans solve common dependency problems that occur when using OSGi. </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="admin-shell"></a>6. Equinox Console Extension (<code class="literal">vsh</code>)</h2></div></div></div><p>Virgo provides an extension to the Equinox console in the form of the <code class="literal">vsh</code> command that allows you to examine artifacts
- currently installed to a particular Web Server instance, manage the lifecycle of the installed artifacts, install new artifacts, and shut down
- the server. You can install, examine, and manage the lifecycle of the following artifacts:
- </p><div class="itemizedlist"><ul type="disc"><li><p>Bundles</p></li><li><p>Configuration Artifacts</p></li><li><p>PARs</p></li><li><p>Plans</p></li></ul></div><p>
- and can examine:
- </p><div class="itemizedlist"><ul type="disc"><li><p>Exported packages</p></li><li><p>Services in the OSGi service registry</p></li></ul></div><p>
- </p><p>
- The Equinox console is not enabled by default. To enable it place the setting
-</p><pre class="programlisting">osgi.console=2401</pre><p>
- in the <code class="literal">org.eclipse.virgo.kernel.userregion.properties</code> file in the <code class="literal">config</code> directory.
- Any free port can be used, but 2401 is the usual default.
- </p><p>
- You can run the Equinox console via telnet to the configured port, for example:
- </p><pre class="programlisting">prompt$ telnet localhost 2401
-Trying ::1...
-Connected to localhost.
-Escape character is '^]'.
-
-osgi> </pre><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="admin-shell-using"></a>6.1 Using the Equinox Console Extension</h2></div></div></div><p>You invoke the Equinox Console Extension using the <code class="literal">vsh</code> command. For example:</p><pre class="programlisting">
-osgi> vsh help
-
-
- bundle - Management and examination of bundle artifacts
- config - Management and examination of configuration artifacts
- exit - Exit the kernel shell environment
- help - Get help on commands
- install - Install (deploy) an artifact to the server
- package - Examination of exported packages
- par - Management and examination of PAR artifacts
- plan - Management and examination of plan artifacts
- service - Examination of services
- shutdown - Shutdown Virgo Kernel
-
-
-osgi> </pre><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-using-command-list"></a>Equinox Console Extension (<code class="literal">vsh</code>) Subcommands</h3></div></div></div><p>The following table lists the Equinox Console Extension subcommands; each subcommand in turn has a variety of options that you can specify, depending on what you want to do, such as start a bundle or refresh a plan. The reference documentation about each subcommand provides the full list of available options. </p><div class="table"><a name="admin-shell-commands-table"></a><p class="title"><b>Table 6.1. Equinox Console Extension Subcommands</b></p><div class="table-contents"><table summary="Equinox Console Extension Subcommands" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Subcommand </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="#admin-shell-bundle-command" title="bundle Subcommand">bundle</a></td><td style="border-bottom: 1.0pt solid ; ">Manages and displays information about bundle artifacts.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="#admin-shell-config-command" title="config Subcommand">config</a></td><td style="border-bottom: 1.0pt solid ; ">Manages and displays information about configuration artifacts.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="#admin-shell-package-command" title="package Subcommand">package</a></td><td style="border-bottom: 1.0pt solid ; ">Displays information about exported packages.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="#admin-shell-par-command" title="par Subcommand">par</a></td><td style="border-bottom: 1.0pt solid ; ">Manages and displays information about PAR artifacts.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="#admin-shell-plan-command" title="plan Subcommand">plan</a></td><td style="border-bottom: 1.0pt solid ; ">Manages and displays information about plan artifacts.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="#admin-shell-service-command" title="service Subcommand">service</a></td><td style="border-bottom: 1.0pt solid ; ">Displays information about services in the OSGi service registry.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="#admin-shell-install-command" title="install Subcommand">install</a></td><td style="border-bottom: 1.0pt solid ; ">Installs an artifact to Web Server. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="#admin-shell-shutdown-command" title="shutdown Subcommand">shutdown</a></td><td style="border-bottom: 1.0pt solid ; ">Shuts down the Web Server instance to which the Equinox Console is connected.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><a class="link" href="#admin-shell-help-command" title="help Subcommand">help</a></td><td style="border-bottom: 1.0pt solid ; ">Displays help about the list of available subcommands, as well as more detailed help about individual subcommands.</td></tr><tr><td style="border-right: 1.0pt solid ; "><a class="link" href="#admin-shell-exit-command" title="exit Subcommand">exit</a></td><td style="">Returns to the Equinox console with no effect.</td></tr></tbody></table></div></div><br class="table-break"></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="admin-shell-command-reference"></a>6.2 Equinox Console Extension Subcommand Reference</h2></div></div></div><p>
- This section contains reference information about the Equinox Console Extension subcommands
- <a class="link" href="#admin-shell-bundle-command" title="bundle Subcommand">bundle</a>,
- <a class="link" href="#admin-shell-config-command" title="config Subcommand">config</a>,
- <a class="link" href="#admin-shell-package-command" title="package Subcommand">package</a>,
- <a class="link" href="#admin-shell-par-command" title="par Subcommand">par</a>,
- <a class="link" href="#admin-shell-plan-command" title="plan Subcommand">plan</a>,
- <a class="link" href="#admin-shell-service-command" title="service Subcommand">service</a>,
- <a class="link" href="#admin-shell-install-command" title="install Subcommand">install</a>,
- <a class="link" href="#admin-shell-shutdown-command" title="shutdown Subcommand">shutdown</a>,
- <a class="link" href="#admin-shell-help-command" title="help Subcommand">help</a>, and
- <a class="link" href="#admin-shell-exit-command" title="exit Subcommand">exit</a>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-bundle-command"></a>bundle Subcommand</h3></div></div></div><p>Use the <code class="literal">bundle</code> subcommand to manage the lifecycle of bundles deployed to VWS and to gather information about deployed bundles, such as diagnostic information, header information, and so on. </p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-bundle-command-table"></a><p class="title"><b>Table 6.2. Options of the bundle Subcommand</b></p><div class="table-contents"><table summary="Options of the bundle Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays the list of bundles that are currently installed to the current Web Server instance. With the exception of a few kernel bundles and their services, which Web Server uses to administer the user region, none of the kernel is visible to user installed artifacts; rather, only the bundles installed in the user region are visible.
- <p>Each bundle is identified by an internal <code class="literal">ID</code> which you can then use with the other <code class="literal">bundle</code> subcommands that manage a particular bundle, such as <code class="literal">start </code><span class="emphasis"><em><code class="literal">id</code></em></span>. The <code class="literal">list</code> subcommand also displays the version of the bundle, along with its state, which is one of the following standard OSGi lifecycle states:</p>
- <div class="itemizedlist"><ul type="disc"><li><p><span class="bold"><strong>Installed</strong></span>: The bundle is installed but its dependencies have not yet been resolved.</p></li><li><p><span class="bold"><strong>Resolved</strong></span>: The bundle is resolved and you can now start it.</p></li><li><p><span class="bold"><strong>Uninstalled</strong></span>: The bundle is uninstalled and you can not use it.</p></li><li><p><span class="bold"><strong>Starting</strong></span>: The bundle is in the process of starting.</p></li><li><p><span class="bold"><strong>Active</strong></span>: The bundle is running and you can now use it.</p></li><li><p><span class="bold"><strong>Stopping</strong></span>: The bundle is in the process of stopping.</p></li></ul></div>
- <p>Use one of the other <code class="literal">bundle</code> subcommands to change the state of a bundle. For example, use the <code class="literal">bundle start </code><span class="emphasis"><em><code class="literal">id</code></em></span> subcommand to change the state of a bundle from <code class="literal">Installed</code> to <code class="literal">Active</code>.</p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">examine <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Displays detailed information about the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>In addition to the information provided by the <code class="literal">bundle list</code> subcommand (id, full name, version, and state), the <code class="literal">examine</code> subcommand specifies whether the bundle includes a Spring application context (or is <span class="emphasis"><em>Spring Powered</em></span>) and the exact physical location of the bundle JAR file. </p>
- <p>The <code class="literal">examine</code> also provides the full list of packages that the bundle imports, as well as the bundles that in turn export these imported packages. Finally, the subcommand displays the packages that the current bundle exports, and then in turn the list of other installed bundles that are currently importing these exported packages. </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">start <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Starts the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>After Web Server successfully starts the bundle, it is listed in the <code class="literal">Active</code> state. </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">stop <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Stops the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>When you stop a bundle, it goes from the <code class="literal">Active</code> state to the <code class="literal">Resolved</code> state, and you must re-start it if you want to use the application that the bundle contains.</p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">refresh <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Updates the contents of the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle. Use this subcommand if you have changed the contents of the bundle JAR file and you want to refresh the artifact as installed in the OSGi framework.
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">uninstall <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Uninstalls the specified bundle from Web Server. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>When the uninstall process is complete, the bundle does not show up in the list of bundles displayed by the <code class="literal">bundle list</code> subcommand. If you want to use the application in the bundle, you must re-install it using the <code class="literal">install</code> subcommand.</p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">diag <span class="emphasis"><em>id</em></span></td><td style="border-bottom: 1.0pt solid ; ">Provides diagnostic information about the specified bundle. In particular, this subcommand displays information about the imported packages that Web Server could not resolve. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- </td></tr><tr><td style="border-right: 1.0pt solid ; ">headers <span class="emphasis"><em>id</em></span></td><td style="">Displays the complete list of manifest headers of the specified bundle. Use the <code class="literal">bundle list</code> subcommand to get the internal id of a particular bundle.
- <p>The manifest headers include: <code class="literal">Import-Package</code>, <code class="literal">Export-Package</code>, <code class="literal">Bundle-SymbolicName</code>, and so on. </p>
- </td></tr></tbody></table></div></div><br class="table-break"><p>The following examples show how to use this subcommand.</p><p>First, use the <code class="literal">bundle list</code> subcommand to view all the installed bundles:</p><pre class="programlisting">osgi> vsh bundle list
-
-Id Name Version State
-0 org.eclipse.osgi 3.6.1.R36x_v20100806 ACTIVE
-1 org.eclipse.virgo.region.user 0.0.0 ACTIVE
-2 org.eclipse.virgo.kernel.userregion 2.1.0.RELEASE ACTIVE
-3 org.eclipse.virgo.kernel.osgicommand 2.1.0.RELEASE ACTIVE
-4 org.springframework.osgi.core 1.2.1 ACTIVE
-5 S org.springframework.osgi.extender 1.2.1 ACTIVE
-6 org.springframework.osgi.io 1.2.1 ACTIVE
-7 org.eclipse.virgo.kernel.agent.dm 2.1.0.RELEASE ACTIVE
-8 S org.eclipse.virgo.kernel.deployer.dm 2.1.0.RELEASE ACTIVE
-9 com.springsource.org.aopalliance 1.0.0 ACTIVE
-10 org.eclipse.virgo.kernel.dmfragment 2.1.0.RELEASE RESOLVED
-11 org.springframework.aop 3.0.0.RELEASE ACTIVE
-12 org.springframework.asm 3.0.0.RELEASE ACTIVE
-13 org.springframework.beans 3.0.0.RELEASE ACTIVE
-14 org.springframework.context 3.0.0.RELEASE ACTIVE
-15 org.springframework.core 3.0.0.RELEASE ACTIVE
-16 org.springframework.expression 3.0.0.RELEASE ACTIVE
-
-osgi> </pre><p>The following example shows how to view the headers of the <code class="literal">org.springframework.osgi.extender</code> bundle (only the first few lines are shown):</p><pre class="programlisting">osgi> vsh bundle examine 5
-
-Id: 5
-Name: org.springframework.osgi.extender
-Version 1.2.1
-State: ACTIVE
-Spring Powered: true
-Bundle Location: file:<... omitted ...>/org.springframework.osgi.extender-1.2.1.jar/
-
-Imported Packages:
- org.springframework.osgi.context [1.2.1, 1.2.1]
- exported by org.springframework.osgi.core 1.2.1 [4]
- <... remainder omitted ...>
-
-Exported Packages:
- org.springframework.osgi.extender 1.2.1
- <... remainder omitted ...>
-
-Published services:
- 58 org.springframework.beans.factory.xml.NamespaceHandlerResolver
- consumed by org.springframework.osgi.extender 1.2.1 [5]
- consumed by org.eclipse.virgo.kernel.deployer.dm 2.1.0.RELEASE [8]
- <... remainder omitted ...>
-
-Consumed services:
- 34 org.eclipse.virgo.kernel.shim.serviceability.TracingService
- published by org.eclipse.virgo.region.user 0.0.0 [1]
- <... remainder omitted ...>
-
-Fragments:
- org.eclipse.virgo.kernel.dmfragment 2.1.0.RELEASE [10]
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-config-command"></a>config Subcommand</h3></div></div></div><p>Use the <code class="literal">config</code> subcommand to view and manage the configuration artifacts that have been installed to Web Server. A <span class="emphasis"><em>configuration artifact</em></span> is simply a properties file that is associated with a user application that is contained in a bundle. Using configuration artifacts, you can manage the configuration of a user application completely separately from the bundle that contains the application. </p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-config-command-table"></a><p class="title"><b>Table 6.3. Options of the config Subcommand</b></p><div class="table-contents"><table summary="Options of the config Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Lists the configuration artifacts that are currently installed in Web Server.
- <p>The <code class="literal">list</code> option displays the full name of each installed configuration artifact, its version, and its current state. Configuration artifacts have similar lifecycles to other artifacts, such as bundles, and so the list of states in which a configuration can be in is the same as those of bundles; see <a class="link" href="#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the list of possible states. </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">examine <span class="emphasis"><em>name [version]</em></span></td><td style="border-bottom: 1.0pt solid ; ">Displays information about the specified configuration artifact. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
- <p>A configuration artifact must be active for you to examine it; if it is not currently active, use <code class="literal">config start</code> to start it and thus change its state to <code class="literal">Active</code>.</p>
- <p>The subcommand first displays the factory pid of the configuration artifact as well as the complete location of the bundle to which the configuration artifact is associated. The subcommand then lists all the properties that make up the configuration, as well as their current value. </p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">start <span class="emphasis"><em>name [version]</em></span></td><td style="border-bottom: 1.0pt solid ; ">Starts the specified configuration artifact and makes it visible to the internal configuration sub-system of Web Server. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
-
- <p>Starting the configuration sets its state to <code class="literal">Active</code>.</p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">stop <span class="emphasis"><em>name [version]</em></span></td><td style="border-bottom: 1.0pt solid ; ">Stops the specified configuration artifact and makes it invisible to the internal configuration sub-system of Web Server. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
-
- <p>Stopping the configuration sets its state to <code class="literal">Resolved</code>.</p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">refresh <span class="emphasis"><em>name [version]</em></span></td><td style="border-bottom: 1.0pt solid ; ">Updates the contents of the specified configuration artifact to the internal configuration sub-system of Web Server. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
-
- <p>Use this subcommand if you have changed the contents of the configuration artifact, and you want to make this information known to Web Server and the associated bundle. </p></td></tr><tr><td style="border-right: 1.0pt solid ; ">uninstall <span class="emphasis"><em>name [version]</em></span></td><td style="">Uninstalls the specified configuration artifact and make it completely unavailable to Web Server. Although you must specify the name of the configuration artifact, its version is optional unless you have multiple versions of the configuration artifact installed. Use the <code class="literal">config list</code> subcommand to view all configuration artifacts and versions currently installed in Web Server.
-
- <p>Stopping the configuration removes it from Web Server's list of deployed artifacts and it will not show up when you perform a <code class="literal">config list</code>.</p></td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to use this subcommand to list the installed configuration artifacts.</p><pre class="programlisting">osgi> vsh config list
-
-Name Version State
-org.eclipse.virgo.kernel 0.0.0 ACTIVE
-org.eclipse.virgo.kernel.jmxremote.access 0.0.0 ACTIVE
-org.eclipse.virgo.kernel.userregion 0.0.0 ACTIVE
-org.eclipse.virgo.kernel.users 0.0.0 ACTIVE
-org.eclipse.virgo.medic 0.0.0 ACTIVE
-org.eclipse.virgo.repository 0.0.0 ACTIVE
-
-osgi> </pre><p>To view the properties of a configuration artifact, and their current values, use <code class="literal">config examine</code>:</p><pre class="programlisting">osgi> vsh config examine org.eclipse.virgo.kernel
-
-Factory pid:
-Bundle Location: file:lib/kernel/org.eclipse.virgo.kernel.osgi-2.1.0.RELEASE.jar
-
-Properties:
- deployer.pickupDirectory:
- pickup
- deployer.timeout:
- 300
- domain:
- org.eclipse.virgo.kernel
- home.directory:
- /Users/glynnormington/virgo-web-server-2.1.0.RELEASE
- service.pid:
- org.eclipse.virgo.kernel
- work.directory:
- /Users/glynnormington/virgo-web-server-2.1.0.RELEASE/work
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-package-command"></a>package Subcommand</h3></div></div></div><p>Use the <code class="literal">package</code> subcommand to view the complete list of packages exported by all bundles installed to Web Server, as well as examine a particular exported package in more detail.</p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-package-command-table"></a><p class="title"><b>Table 6.4. Options of the package Subcommand</b></p><div class="table-contents"><table summary="Options of the package Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays all the exported packages for all bundles in the uer region of Web Server. In addition to the package name, the subcommand displays the version of the exported package and the <code class="literal">id</code> of the bundle that contains the exported package. You can examine the bundle by using the subcommand <code class="literal">bundle examine </code><span class="emphasis"><em><code class="literal">id</code></em></span>.</td></tr><tr><td style="border-right: 1.0pt solid ; ">examine <span class="emphasis"><em>name version</em></span></td><td style="">Displays details about the exported package. You must specify both the name of the exported package and its version; use <code class="literal">package list</code> to view the exact names and version.
- <p>This subcommand provides the following additional information about the exported package:</p>
-
- <div class="itemizedlist"><ul type="disc"><li><p>The name and version of the bundle that exports the package. This means that the package name is explicitly listed in the bundle's <code class="literal">MANIFEST.MF</code> file as part of the <code class="literal">Export-Package</code> header.</p></li><li><p>Any attributes that are part of the <code class="literal">Export-Package</code>, in addition to <code class="literal">version</code>.</p></li><li><p>The directives that are part of the <code class="literal">Export-Package</code> header. A typical directive is <code class="literal">uses</code>, which declares up-front constraints on a number of other packages.</p></li><li><p>The list of all bundles that import the package.</p></li></ul></div>
- </td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to list all the exported packages for all bundles installed:</p><pre class="programlisting">osgi> vsh package list
-
-Name Version Providing Bundle
-javax.accessibility 0.0.0 0
-javax.activation 0.0.0 0
-javax.activation 1.1.1 0
-<... remainder omitted ...>
-
-osgi> </pre><p>The following example shows how to examine a particular exported package:</p><pre class="programlisting">osgi> vsh package examine org.slf4j 1.6.1
-
-Exporter: org.eclipse.virgo.region.user 0.0.0 [1]
-
-Attributes:
- None
-
-Directives:
- uses:
- org.slf4j.spi
- x-equinox-ee:
- -1
- x-internal:
- false
-
-Importer(s):
- org.eclipse.virgo.kernel.agent.dm 2.1.0.RELEASE [7]
- Import-Package attributes:
- bundle-version:
- 0.0.0
- version:
- [1.6.1,2.0.0)
- Import-Package directives:
- resolution:
- static
- <... remainder omitted ...>
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-par-command"></a>par Subcommand</h3></div></div></div><p>Use the <code class="literal">par</code> subcommand to view all the PARs currently installed in Web Server, view details about a particular PAR and manage its lifecycle, such as starting, stopping, refreshing, and uninstalling it.</p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-par-command-table"></a><p class="title"><b>Table 6.5. Options of the par Subcommand</b></p><div class="table-contents"><table summary="Options of the par Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays all the PARs that are currently installed in Web Server.
- <p>The <code class="literal">list</code> option displays the full name of each installed PAR, its version, and its current state. PARs have similar lifecycles to other artifacts, such as bundles, and so the list of states in which a PAR can be in is the same as those of bundles; see <a class="link" href="#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the list of possible states. </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">examine <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Displays information about the specified PAR; you are required to identify the PAR with both its name and its version. Use the <code class="literal">par list</code> subcommand to view all installed PAR files and their versions. The subcommand displays the following information:
- <div class="itemizedlist"><ul type="disc"><li><p>The current state of the PAR (see <a class="link" href="#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the full list of possible states).</p></li><li><p>Whether the PAR is <span class="emphasis"><em>scoped</em></span>. Scoping specifies whether Web Server should deploy the members of the PAR in their own scope; when scoping is disabled, Web Server deploys the artifacts into the global scope and they are accessible for access by all other artifacts.</p></li><li><p>Whether the PAR is <span class="emphasis"><em>atomic</em></span>. When a PAR is atomic, Web Server manages the lifecycle of all its member artifacts as a single entity, which means if one artifact member is started, then Web Server starts <span class="emphasis"><em>all</em></span> the PAR artifacts. If one artifact fails to start, then Web Server stops all other artifacts in the PAR.</p></li><li><p>The individual members, or children, of the PAR. These could be other PARs, plans, bundles, configuration artifacts, and so on.</p></li></ul></div>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">start <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Starts the specified PAR. You must specify both the full name of the PAR as well as the version you want to start. Use the <code class="literal">par list</code> subcommand to get the list of PARs currently installed in Web Server.
- <p>To start a PAR, it must have already been resolved by Web Server, or in other words, be in the <code class="literal">Resolved</code> state. After Web Server successfully starts the PAR, it is listed in the <code class="literal">Active</code> state. </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">stop <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Stops the specified PAR. You must specify both the full name of the PAR as well as the version you want to stop. Use the <code class="literal">par list</code> subcommand to get the list of PARs currently installed in Web Server.
- <p>When you stop a PAR, it goes from the <code class="literal">Active</code> state to the <code class="literal">Resolved</code> state, and you must re-start it if you want to use the application that the PAR contains.</p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">refresh <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Updates the contents of the specified PAR. You must specify both the name and version of the PAR you want to refresh. Use the <code class="literal">par list</code> subcommand to this information.
- <p>Use this subcommand if you have changed the contents of the PAR file and you want to refresh the artifact as installed in the OSGi framework.</p></td></tr><tr><td style="border-right: 1.0pt solid ; ">uninstall <span class="emphasis"><em>name version</em></span></td><td style="">Uninstalls the specified PAR. You must specify both the name and version of the PAR you want to refresh. Use the <code class="literal">par list</code> subcommand to this information.
- <p>When the uninstall process is complete, the PAR will not show up in the list of PARs displayed by the <code class="literal">par list</code> subcommand. If you want to use the application in the PAR, you must re-install it using the <code class="literal">install</code> subcommand.</p></td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to list the PARs that have been installed in Web Server:</p><pre class="programlisting">osgi> vsh par list
-
-Name Version State
-
-org.eclipse.virgo.server.repository.hosted 2.1.0.RELEASE ACTIVE
-
-osgi> </pre><p>The following example shows how to examine a particular PAR file:</p><pre class="programlisting">osgi> vsh par examine org.eclipse.virgo.server.repository.hosted 2.1.0.RELEASE
-
-State: ACTIVE
-Scoped: true
-Atomic: true
-
-Children:
- bundle org.eclipse.virgo.server.repository.hosted.core 2.1.0.RELEASE
- bundle org.eclipse.virgo.server.repository.hosted.web 2.1.0.RELEASE
- bundle org.eclipse.virgo.server.repository.hosted-synthetic.context 2.1.0.RELEASE
-
-osgi> </pre><p>Finally, the following example shows how to refresh an installed PAR file:</p><pre class="programlisting">osgi> vsh par refresh my.exciting.par 1.2.0
-
-par my.exciting.par 1.2.0 refreshed successfully
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-plan-command"></a>plan Subcommand</h3></div></div></div><p>Use the <code class="literal">plan</code> subcommand to view all the plans currently installed in Web Server, view details about a particular plan and manage its lifecycle, such as starting, stopping, refreshing, and uninstalling it.</p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-plan-command-table"></a><p class="title"><b>Table 6.6. Options of the plan Subcommand</b></p><div class="table-contents"><table summary="Options of the plan Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays all the plans that are currently installed in Web Server.
- <p>The <code class="literal">list</code> option displays the full name of each installed plan, its version, and its current state. Plans have similar lifecycles to other artifacts, such as bundles, and so the list of states in which a plan can be in is the same as those of bundles; see <a class="link" href="#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the list of possible states. </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">examine <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Displays information about the specified plan; you are required to identify the plan with both its name and its version. Use the <code class="literal">plan list</code> subcommand to view all installed plans and their versions. The subcommand displays the following information:
- <div class="itemizedlist"><ul type="disc"><li><p>The current state of the plan (see <a class="link" href="#admin-shell-bundle-command" title="bundle Subcommand">the bundle subcommand</a> for the full list of possible states).</p></li><li><p>Whether the plan is <span class="emphasis"><em>scoped</em></span>. Scoping specifies whether Web Server should deploy the members of the plan in their own scope; when scoping is disabled, Web Server deploys the artifacts into the global scope and they are accessible for access by all other artifacts.</p></li><li><p>Whether the plan is <span class="emphasis"><em>atomic</em></span>. When a plan is atomic, Web Server manages the lifecycle of all its member artifacts as a single entity, which means if one artifact member is started, then Web Server starts <span class="emphasis"><em>all</em></span> the plan artifacts. If one artifact fails to start, then Web Server stops all other artifacts in the plan.</p></li><li><p>The individual members, or children, of the plan. These could be other plans, PARs, bundles, configuration artifacts, and so on.</p></li></ul></div>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">start <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Starts the specified plan. You must specify both the full name of the plan as well as the version you want to start. Use the <code class="literal">plan list</code> subcommand to get the list of plans currently installed in Web Server.
- <p>To start a plan, it must have already been resolved by Web Server, or in other words, be in the <code class="literal">Resolved</code> state. After Web Server successfully starts the plan, it is listed in the <code class="literal">Active</code> state. </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">stop <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Stops the specified plan. You must specify both the full name of the plan as well as the version you want to stop. Use the <code class="literal">plan list</code> subcommand to get the list of plans currently installed in Web Server.
- <p>When you stop a plan, it goes from the <code class="literal">Active</code> state to the <code class="literal">Resolved</code> state, and you must re-start it if you want to use the application that the plan contains.</p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">refresh <span class="emphasis"><em>name version</em></span></td><td style="border-bottom: 1.0pt solid ; ">Updates the contents of the specified plan. You must specify both the name and version of the plan you want to refresh. Use the <code class="literal">plan list</code> subcommand to this information.
- <p>Use this subcommand if you have changed the contents of the plan file and you want to refresh the artifact as installed in the OSGi framework.</p></td></tr><tr><td style="border-right: 1.0pt solid ; ">uninstall <span class="emphasis"><em>name version</em></span></td><td style="">Uninstalls the specified plan. You must specify both the name and version of the plan you want to refresh. Use the <code class="literal">plan list</code> subcommand to this information.
- <p>When the uninstall process is complete, the plan will not show up in the list of plans displayed by the <code class="literal">plan list</code> subcommand. If you want to use the application in the plan, you must re-install it using the <code class="literal">install</code> subcommand.</p></td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to list the plans that have been installed in Web Server:</p><pre class="programlisting">osgi> vsh plan list
-
-Name Version State
-org.eclipse.virgo.apps.admin.plan 2.1.0 ACTIVE
-org.eclipse.virgo.kernel.userregion.springdm 2.1.0 ACTIVE
-org.eclipse.virgo.web 2.1.0 ACTIVE
-
-osgi> </pre><p>The following example shows how to examine a particular plan:</p><pre class="programlisting">osgi> vsh plan examine org.eclipse.virgo.kernel.userregion.springdm 2.1.0
-
-State: ACTIVE
-Scoped: false
-Atomic: false
-
-Children:
- bundle org.eclipse.virgo.kernel.agent.dm 2.1.0.RELEASE
- bundle org.springframework.osgi.io 1.2.1
- bundle org.springframework.osgi.extender 1.2.1
- bundle org.springframework.osgi.core 1.2.1
- bundle org.eclipse.virgo.kernel.deployer.dm 2.1.0.RELEASE
-
-osgi> </pre><p>The following example shows how to stop a currently Active plan:</p><pre class="programlisting">osgi> vsh plan stop org.eclipse.virgo.web 2.1.0
-
-plan org.eclipse.virgo.web:2.1.0 stopped successfully
-
-osgi> </pre><p>The following example shows how to start a plan:</p><pre class="programlisting">osgi> vsh plan start org.eclipse.virgo.web 2.1.0
-
-plan org.eclipse.virgo.web:2.1.0 started successfully
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-service-command"></a>service Subcommand</h3></div></div></div><p>Use the <code class="literal">service</code> subcommand to view all the services that have been registered in the OSGi service registry of Web Server. You can also examine a specific service to discover its properties, the bundle that publishes the service, and any bundles that consume the service.</p><p>The following table lists the options you can specify for this subcommand.</p><div class="table"><a name="admin-shell-service-command-table"></a><p class="title"><b>Table 6.7. Options of the service Subcommand</b></p><div class="table-contents"><table summary="Options of the service Subcommand" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Option </th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">list</td><td style="border-bottom: 1.0pt solid ; ">Displays the list of services that are currently registered in the OSGi service registry of Web Server.
- <p>Each service is identified by an internal <code class="literal">ID</code> which you can then use with the <code class="literal">service examine</code> subcommand to view the details about a particular service. The <code class="literal">list</code> option also displays the object class that implements the service and the internal <code class="literal">id</code> of the bundle that provides the service. </p></td></tr><tr><td style="border-right: 1.0pt solid ; ">examine <span class="emphasis"><em>id</em></span></td><td style="">Displays detailed information about the specified service. Use the <code class="literal">service list</code> subcommand to get the internal id of a particular service.
- <p>This subcommand displays the properties of the service, such as the object class that implements the service, the name of the bundle that publishes the service and any bundles that consume the service. </p></td></tr></tbody></table></div></div><br class="table-break"><p>The following example shows how to list the services currently registered in the OSGi service registry:</p><pre class="programlisting">osgi> vsh service list
-
-Id Object Class(es) Providing Bundle
-
-1 org.osgi.service.packageadmin.PackageAdmin 0
-2 org.osgi.service.permissionadmin.PermissionAdmin, ... 0
-3 org.osgi.service.startlevel.StartLevel 0
-4 org.eclipse.osgi.service.debug.DebugOptions 0
-5 java.lang.ClassLoader 0
-6 org.eclipse.osgi.framework.log.FrameworkLog 0
-7 org.eclipse.osgi.framework.log.FrameworkLog 0
-<... remainder omitted ...>
-
-72 org.eclipse.gemini.web.core.spi.ServletContainer 38
-73 org.eclipse.gemini.web.core.WebContainer 37
-74 org.eclipse.virgo.web.core.WebApplicationRegistry 39
-<... remainder omitted ...>
-
-osgi> </pre><p>The following example shows how to examine a particular service:</p><pre class="programlisting">osgi> vsh service examine 73
-
- Properties:
- objectClass:
- org.eclipse.gemini.web.core.WebContainer
- service.id:
- 73
-
- Publisher: org.eclipse.gemini.web.core 1.1.0.RELEASE [37]
-
- Consumer(s):
- org.eclipse.virgo.web.core 2.1.0.RELEASE [39]
-
- osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-install-command"></a>install Subcommand</h3></div></div></div><p>Use the <code class="literal">install</code> subcommand to deploy an artifact to Web Server. The artifact can be a bundle, PAR, plan, or configuration artifact.</p><p>The <code class="literal">install</code> subcommand takes a single parameter: the URI of the artifact you want to deploy. For example, to deploy a bundle on the local computer, use the <code class="literal">file</code> scheme:</p><pre class="programlisting">file://full-pathname-to-artifact</pre><p>After you execute the <code class="literal">install</code> subcommand, Web Server attempts to resolve the artifact's dependencies, and if it is successful, puts it in the <code class="literal">Resolved</code> state. At that point, you must start the artifact to be able to actually use it. </p><p>The following example shows how to install a bundle called <code class="literal">swf-booking-mvc.war</code> located in the <code class="literal">/home/apps</code> directory of the computer on which the Equinox Console Extension is being run:</p><pre class="programlisting">:> install file://home/apps/swf-booking-mvc.war
-
-Artifact bundle swf-booking-mvc.war 0.0.0 installed</pre><p>The following example shows how to use the <code class="literal">bundle list</code> subcommand to ensure that the bundle was indeed installed to Web Server; if you had installed a different kind of artifact, for example a plan, then you would use the appropriate subcommand (such as <code class="literal">plan list</code>):</p><pre class="programlisting">osgi> vsh bundle list
-
-Id Name Version State
-
-0 org.eclipse.osgi 3.6.1.R36x_v20100806 ACTIVE
-1 org.eclipse.virgo.region.user 0.0.0 ACTIVE
-<... remainder omitted ...>
-
-59 org.eclipse.virgo.server.splash 2.1.0.RELEASE ACTIVE
-60 swf-booking-mvc.war 0.0.0 RESOLVED
-
-osgi> </pre><p>Note that the <code class="literal">swf-booking-mvc.war</code> file is in the <code class="literal">Resolved</code> state. The following examples start the bundle, and then examine it to ensure that it is in the <code class="literal">Active</code> state:</p><pre class="programlisting">osgi> vsh bundle start 60
-
-bundle swf-booking-mvc.war:0.0.0 started successfully
-
-
-osgi> vsh bundle examine 60
-
-Id: 60
-Name: swf-booking-mvc.war
-Version 0.0.0
-State: ACTIVE
-Spring Powered: true
-Bundle Location: file:<... omitted ...>/swf-booking-mvc.war/
-
-Imported Packages:
- javax.crypto.interfaces [0.0.0, 0.0.0]
- exported by org.eclipse.osgi 3.6.1.R36x_v20100806 [0]
- org.omg.CosNaming.NamingContextPackage [0.0.0, 0.0.0]
- exported by org.eclipse.osgi 3.6.1.R36x_v20100806 [0]
- org.omg.DynamicAny.DynAnyFactoryPackage [0.0.0, 0.0.0]
- exported by org.eclipse.osgi 3.6.1.R36x_v20100806 [0]
- <... remainder omitted ...>
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-shutdown-command"></a>shutdown Subcommand</h3></div></div></div><p>Use the <code class="literal">shutdown</code> subcommand to shut down the Web Server instance to which you are connected. When Web Server is shutdown, the shell returns you to the operating system prompt. </p><p>The <code class="literal">shutdown</code> subcommand does not have any options.</p><p>The following example shows how to use this subcommand.</p><pre class="programlisting">:> shutdown
-
-Shutdown MBean called
-prompt$</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-help-command"></a>help Subcommand</h3></div></div></div><p>Use the <code class="literal">help</code> subcommand on its own to get a list of all available Equinox Console Extension subcommands. If you specify a particular subcommand to the <code class="literal">help</code> subcommand, then you will get the list of options that you can pass to the subcommand. </p><p>For example:</p><pre class="programlisting">osgi> vsh help
-
-
- bundle - Management and examination of bundle artifacts
- config - Management and examination of configuration artifacts
- exit - Exit the kernel shell environment
- help - Get help on commands
- install - Install (deploy) an artifact to the server
- package - Examination of exported packages
- par - Management and examination of PAR artifacts
- plan - Management and examination of plan artifacts
- service - Examination of services
- shutdown - Shutdown Virgo Kernel
-
-
-osgi> vsh help bundle
-
-bundle list - List all bundle artifacts that are
- currently installed
-bundle examine [ id | name version ] - Examine a bundle artifact
-bundle start [ id | name version ] - Start a bundle artifact. Starting this
- artifact starts it in the OSGi
- framework.
-bundle stop [ id | name version ] - Stop a bundle artifact. Stopping this
- artifact stops it in the OSGi
- framework.
-bundle refresh [ id | name version ] - Refresh a bundle artifact. Refreshing
- this artifact updates its contents in
- the OSGi framework.
-bundle uninstall [ id | name version ] - Uninstall a bundle artifact
-bundle diag [ id | name version ] - Provide diagnostics for a bundle
- artifact
-bundle headers [ id | name version ] - Show the headers for a bundle artifact
-
-osgi> </pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-shell-exit-command"></a>exit Subcommand</h3></div></div></div><p>This returns to the Equinox console and otherwise has no effect.</p><p>The <code class="literal">exit</code> subcommand does not have any options.</p></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="admin-console"></a>7. The Web Admin Console</h2></div></div></div><p>The Web Server Admin Console is a Web application for managing a single instance of Web Server. Using the Admin Console, you can:</p><div class="itemizedlist"><ul type="disc"><li><p><a class="link" href="#admin-console-login" title="7.1 Invoking the Admin Console">View an overview of the Web Server properties</a>.</p></li><li><p><a class="link" href="#admin-console-manage-artifacts" title="Viewing and Managing the Lifecycle of Deployed Artifacts">View and manage the lifecycle</a> of artifacts already deployed to the Web Server instance. Artifacts include bundles, configuration files, PARs, and plans. Lifecycle management tasks include starting, stopping, refreshing, and uninstalling the artifacts.</p></li><li><p><a class="link" href="#admin-console-install-artifacts" title="Installing a New Artifact">Install new artifacts to Web Server</a>.</p></li><li><p><a class="link" href="#admin-console-view-properties" title="Viewing Properties of Deployed Configuration Artifacts">View the properties of the configuration artifacts</a> deployed to Web Server.</p></li><li><p><a class="link" href="#admin-console-view-dumps" title="Viewing the Details of Dump Files">View details of dump files</a> that Web Server might have generated after encountering a problem. This feature is particularly valuable if Web Server fails to install a new artifact due to resolution failures; the dump inspector can help you discover the exact artifact causing the resolution failure.</p></li><li><p><a class="link" href="#admin-console-view-osgi-state" title="Viewing Overview and Details of the OSGi State">View an overview and details of the OSGi State</a> of Web Server, or in other words, a list of all bundles currently installed in Web Server and their state. You can then drill down into the details of each bundle, such as its symbolic name, packages it imports and exports, services it provides and consumes, and so on. You can also view the bundles that were deployed when an exception that generated a dump occurred.</p></li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="admin-console-login"></a>7.1 Invoking the Admin Console</h2></div></div></div><p>
- To use the Admin Console, start the
- Virgo Web Server and then enter the following URL in your
- browser of choice.
- </p><pre class="screen">http://localhost:8080/admin</pre><p>
- Replace <code class="literal">localhost</code> with the hostname of the computer on which the Virgo Web Server is running if it is not the same as the computer on which you are running your browser. </p><p>The Admin Console uses basic authentication, therefore you will need to enter the default administration ID and password.
- </p><pre class="screen">ID: admin
-Password: springsource</pre><p>The following graphic shows the main page of the Admin Console.
- </p><div class="mediaobject" align="right"><table border="0" summary="manufactured viewport for HTML img" cellspacing="0" cellpadding="0"><tr><td align="right" valign="bottom"><img src="images/console-main-page.png" align="right"></td></tr></table></div><p>
-
- </p><p>Use the links at the top of the console to perform various tasks, such as viewing and managing artifacts (<span class="bold"><strong>Artifacts</strong></span>), viewing the properties of deployed configuration artifacts (<span class="bold"><strong>Configuration</strong></span>), viewing details of dumps (<span class="bold"><strong>Dump Inspector</strong></span>), and viewing the OSGi state of the Web Server instance (<span class="bold"><strong>OSGi State</strong></span>).</p><p>You can always return to the main Admin Console page by clicking <span class="bold"><strong>Information</strong></span> in the top right-hand corner.</p><p>The <code class="literal">Server Properties</code> section provides information about Web Server itself, such as details about the Java Virtual Machine (JVM), the operating system on which Web Server is installed, the time zone configured for the computer, and the complete version of Web Server.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-auth"></a>Changing the Admin User</h3></div></div></div><p>
- To change the ID and password for the Admin Console, update the <code class="literal">SERVER_HOME/config/org.eclipse.virgo.kernel.users.properties</code> file. First specify the administration username by changing the value of the <code class="literal">role.admin</code> property. Then set the password of this new user by adding a new property called <code class="literal">user.<span class="emphasis"><em>username</em></span></code>, where <code class="literal"><span class="emphasis"><em>username</em></span></code> refers to the actual name of the user. Finally, restart Web Server for the changes to take effect.</p><p>For example, if you want change the administration username to <code class="literal">juliet</code> with password <code class="literal">capulet</code>, change the file as follows:
- </p><pre class="programlisting">##################
-# User definitions
-##################
-user.juliet=capulet
-
-
-##################
-# Role definitions
-##################
-role.admin=juliet</pre><p>
- The Admin Console always runs against the <code class="literal">admin</code> role.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="admin-console-tasks"></a>7.2 Typical Admin Console Use Cases</h2></div></div></div><p>The following use cases describe the typical tasks that you can perform with the Web Server Admin Console:</p><div class="itemizedlist"><ul type="disc"><li><a class="link" href="#admin-console-manage-artifacts" title="Viewing and Managing the Lifecycle of Deployed Artifacts">View and Manage the Lifecycle of Deployed Artifacts</a></li><li><a class="link" href="#admin-console-install-artifacts" title="Installing a New Artifact">Install a New Artifact</a></li><li><a class="link" href="#admin-console-view-properties" title="Viewing Properties of Deployed Configuration Artifacts">View the Properties of Deployed Configuration Artifacts</a></li><li><a class="link" href="#admin-console-view-dumps" title="Viewing the Details of Dump Files">View Details of Dump Files</a></li><li><a class="link" href="#admin-console-view-osgi-state" title="Viewing Overview and Details of the OSGi State">View Overview and Details of the OSGi State</a></li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-manage-artifacts"></a>Viewing and Managing the Lifecycle of Deployed Artifacts</h3></div></div></div><p>The following procedure describes how to view the list of artifacts that are currently deployed in the user region of Web Server. It then describes how to stop, start, refresh, and uninstall the deployed artifacts.</p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>Artifacts</strong></span> link at the top.</p><p>In the lower part of the page, the console displays a tree structure that displays the four kinds of artifacts that you can deploy to the user region of Web Server: bundles, configuration files, PARs, and plans. When you first install Web Server, there will already be a number of artifacts deployed related to the Admin console itself, the main splash screen, the repository, and so on. </p><p>The following graphic shows an expanded tree that displays a few of the deployed artifacts:</p><p><img src="images/console-artifacts.png"></p></li><li><p>To view details of a particular artifact, click the "+" to the left of the artifact to expand the tree. The following graphic shows an expanded <code class="literal">org.eclipse.virgo.apps.admin.web</code> bundle:</p><p><img src="images/console-bundle-details.png"></p><p>The particular details that the Admin Console displays depends on the artifact. For example, for all artifacts you can view their state and how it was installed (such as by a user using the Admin Console or programmatically). The two most common states are Active (running and ready to be used) and Resolved (all dependencies resolved but you must start it before you can use it.) An artifact can also be in one of the transition states, such as Starting and Stopping. </p><p>As shown in the preceding graphic, the Admin Console provides a link for Web modules that you can click on to actually invoke the application (<code class="literal">org.eclipse.virgo.web.contextPath:/admin</code> in the example above.)</p><p>For PARs and plans, the Admin Console also displays whether the artifact is:</p><div class="itemizedlist"><ul type="disc"><li><span class="bold"><strong>Scoped</strong></span>. Scoping specifies whether Web Server should deploy the members of the PAR/plan in their own scope; when scoping is disabled, Web Server deploys the artifacts into the global scope and they are accessible by all other artifacts.</li><li><span class="bold"><strong>Atomic</strong></span>. When a PAR/plan is atomic, Web Server manages the lifecycle of all its member artifacts as a single entity, which means if one artifact member is started, then Web Server starts all the PAR/plan artifacts. If one artifact fails to start, then Web Server stops all other artifacts in the PAR/plan.</li></ul></div><p>The following graphic shows details of a PAR, in particular that it is both scoped and atomic:</p><p><img src="images/console-par-details.png"></p><p>Finally, for bundles, PARs, and plans, you can see the list of bundles that they depend on; this typically means the bundles that export the packages that they import.</p></li><li><p>To manage the lifecycle of an artifact, click on its name in the expanded tree to enable the lifecycle buttons. Then, depending on the current state of the artifact, you can: </p><div class="itemizedlist"><ul type="disc"><li>Start the artifact. All dependencies of the artifact must have been resolved for you to start it. After successfully starting the artifact, it is in the Active state and you can use the application associated with the artifact.</li><li>Stop the artifact. This moves the artifact from an Active to Resolved state, and you cannot use the application associated with the artifact. </li><li>Refresh the artifact. This action updates the physical contents of the artifact; use this button when you have changed the artifact in some way and you want your changes to take effect.</li><li>Uninstall the artifact. This action removes the artifact from Web Server and it does not show up in the Admin Console any more. To use the application associated with this artifact, you must re-install the artifact.</li></ul></div></li></ol></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-install-artifacts"></a>Installing a New Artifact</h3></div></div></div><p>The following procedure describes how to install a new artifact (bundle, PAR, plan, or configuration file.) The procedure is similar for all types of artifacts; the procedure uses a WAR file as an example.</p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>Artifacts</strong></span> link at the top.</p></li><li><p>Click the <span class="bold"><strong>Browse</strong></span> button to invoke the file loader application for your platform. Note that the Browse button searches the computer that is running the browser in which you invoked the Admin Console and <span class="emphasis"><em>not</em></span> the computer on which Web Server is running, in the case where they are different.</p><p>Use the file loader to find the artifact. This can be a WAR file bundle, a configuration artifact that contains properties, an XML file that corresponds to a plan, or a PAR file.</p></li><li><p>Click <span class="bold"><strong>Upload</strong></span> to actually upload the artifact to Web Server. </p><p>Web Server automatically attempts to resolve all dependencies, and then puts the artifact in an Active state if possible. If all is successful, the message <code class="literal">Artifact Deployed</code> appears next to the <span class="bold"><strong>Artifact Console</strong></span> header. If there is an error, a message to that effect is displayed; to get more details about the error, see the terminal window from which you started Web Server.</p></li><li><p>Expand the artifact tree to view your newly deployed artifact. If Web Server installed it without errors, it should show up in the appropriate section and be in an Active state.</p></li></ol></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-view-properties"></a>Viewing Properties of Deployed Configuration Artifacts</h3></div></div></div><p>The following procedure describes how you can view the list of configuration artifacts that are currently deployed to Web Server, and then view the specific properties that are defined for a particular configuration artifact. </p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>Configuration</strong></span> link at the top.</p><p>The Admin Console displays all the configuration artifacts that are currently deployed, as shown in the following graphic:</p><p><img src="images/console-configuration-details.png"></p></li><li><p>To view the properties defined for a particular configuration artifact click the arrow to the left of its name. </p></li></ol></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-view-dumps"></a>Viewing the Details of Dump Files</h3></div></div></div><p>The following procedure describes how to view the details of any service dumps that have occurred in Web Server. Each time a dump is triggered for Web Server, the server creates a directory in <code class="literal">$SERVER_HOME/serviceability/dump</code> with a name corresponding to the time the dump occurred, and then the server populates the directory with detailed information. Using the Admin Console, you can easily view this information.</p><p> A service dump is triggered when there is either a failure in the Web Server code or Web Server detects a thread deadlock in either its own code or a user application. The service dump contains a snapshot of all the important state from the running Web Server instance. <span class="bold"><strong>NOTE:</strong></span> This snapshot is not intended for end user consumption but is useful for service personnel.</p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>Dump Inspector</strong></span> link at the top.</p></li><li><p>In the drop-down box on the left, select the dump you want to inspect based on its timestamp.</p></li><li><p>Click <span class="bold"><strong>Select Dump</strong></span>.</p></li><li><p>In the right drop-down box, select the type of dump information you want to view.</p><p>For example, <code class="literal">summary.txt</code> provides a short summary of why the dump might have occurred. The <code class="literal">thread.txt</code> option provides information about the state of the Web Server threads at the time of the dump, including any that were deadlocked. The <code class="literal">repository</code> options provide information about what was in the external and user repositories at the time of the dump. The <code class="literal">configurationAdmin.properties</code> option provides a snapshot of the complete configuration of Web Server, including the kernel and repositories.</p></li><li><p>Click <span class="bold"><strong>Select Entry</strong></span>.</p><p>The Admin Console displays the information in the Dump Entry Viewer, as shown in the following graphic:</p><p><img src="images/console-dump-details.png"></p></li></ol></div><p>
- Note that the dump entry <code class="literal">osgi.zip</code> is a binary OSGi state dump which should be viewed as described in
- <a class="link" href="#admin-console-view-osgi-state" title="Viewing Overview and Details of the OSGi State">Viewing Overview and Details of the OSGi State</a>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="admin-console-view-osgi-state"></a>Viewing Overview and Details of the OSGi State</h3></div></div></div><p>
- The following procedure describes how you can view the OSGi state of the Web Server, either currently or at the time that a particular service dump
- occurred.
- </p><p>
- The OSGi state is a list of bundles that are currently installed. When viewing the current state, additional information is available
- such as whether each bundle is Spring powered and a list of services in the OSGi service registry. This additional information is not available
- when viewing a state dump.
- </p><div class="orderedlist"><ol type="1"><li><p>From the main Admin Console page, click the <span class="bold"><strong>OSGi State</strong></span> link at the top.</p><p>By default, the Admin Console displays the complete list of bundles that are currently installed in Web Server.</p><p>For each bundle, the console displays its internal ID, its symbolic name, its version, and its current state (usually either Active or Resolved.)</p></li><li><p>To view the bundles that were installed at the time of a service dump, select the service dump based on its timestamp from the drop-down box on the
- right and click <span class="bold"><strong>Go</strong></span>. </p></li><li><p>To view details about a particular bundle, click on its bundle ID. A full description of the bundle is displayed, as shown in the following graphic:</p><p><img src="images/console-osgi-state.png"></p><p>The console displays again the symbolic name, version, and internal ID of the bundle. It then displays whether the bundle is Spring powered and the exact physical location of the bundle JAR file on the computer that hosts Web Server.</p><p>The console then displays the full list of packages that the bundle imports, as well as the bundles that in turn export these imported packages. The console also displays the packages that the current bundle exports, and then in turn the list of other installed bundles that are currently importing these exported packages. For each package, you can drill down and view details of the corresponding bundle.</p><p>Similarly, the console displays the consumed and provided OSGi services. </p><p>Finally, the console also displays information about the Spring context, if the bundle is Spring powered. </p></li><li><p>To view the full list of OSGi services, click the <code class="literal">Services Overview</code> link from the main OSGi state page</p></li><li><p>Typically, the list of bundles and services can be very long, making it difficult to find a particular bundle. Use the <span class="bold"><strong>Search</strong></span> box at the top right corner to narrow down the list of displayed bundles.</p></li></ol></div></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="repository"></a>8. The Provisioning Repository</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="repository-introduction"></a>8.1 Overview of the Provisioning Repository</h2></div></div></div><p>
- This section describes the provisioning repository feature of Virgo Web Server, the reasons for using it, and how to configure it.
- </p><p>
- In most use cases, your application has a dependency on one or more separate artifacts; these artifacts might include OSGi bundles, configuration artifacts, third-party libraries, PARs or plans. A typical example is a Spring application that depends on a third-party library such as Spring Framework or Hibernate.
- </p><p>
- The way you express this dependency depends on the artifact. For example, a plan is by definition a list of dependent bundles.
- </p><p>
- Libraries are another example. Some third-party dependencies consist of multiple bundles but are logically one unit. To support this, the Virgo Web Server introduces the concept of a library. A library is a collection of related bundles that can be referenced as a whole. You typically express the dependencies between your application and third-party libraries using the <code class="literal">Import-Package</code>, <code class="literal">Import-Bundle</code>, or <code class="literal">Import-Library</code> manifest header in the <code class="literal">MANIFEST.MF</code> file of your application. The <code class="literal">Import-Package</code> header is standard to OSGi; <code class="literal">Import-Bundle</code> and <code class="literal">Import-Library</code>, however, are specific to Virgo Web Server.
- </p><p>
- For additional details about the creation and usage of libraries, as well as general information about dependencies, see <a class="ulink" href="../../programmer-guide/html/index.html" target="_top">Programmer’s Guide</a>.
- </p><p>
- In Virgo Web Server, you store all third-party dependencies required by your applications, such as Spring Framework and Hibernate, as artifacts in the provisioning repository. As mentioned above, you can store the following types of artifacts in the repository:
- </p><div class="itemizedlist"><ul type="disc"><li>OSGi bundles</li><li>Libraries</li><li>PARs</li><li>Plans</li><li>Configuration Artifacts</li></ul></div><p>
- When you deploy your application, Virgo Web Server installs the bundle(s) comprising the application to the VWS runtime; part of this internal installation procedure is to satisfy all the application’s dependencies. If your application has a dependency that cannot be satisfied from the bundles that you have already deployed (and VWS has thus installed), then VWS searches the provisioning repository for an artifact that can satisfy that dependency.
- </p><p>
- The provisioning repository for a particular instance of Virgo Web Server can include artifacts in the following general locations:
- </p><div class="itemizedlist"><ul type="disc"><li>Local: This means that artifacts have been physically installed in the provisioning repository directory structure of the local Virgo Web Server instance. The artifacts in a local repository include installed third-party libraries, bundles supplied by VWS, bundles supplied by an end user, and internal bundles used only by VWS. You can further categorize this location into <code class="literal">external</code> directories that adhere to a specified search pattern and are scanned by VWS just on a clean startup, or <code class="literal">watched</code> directories that point to a single directory location and which VWS scans on a regular basis. </li><li>Remote: This means that a local instance of Virgo Web Server gets the artifact from a remotely-hosted repository that is physically located on a remote Virgo Web Server instance. </li></ul></div><p>
- You configure the provisioning repository using the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.properties</code> file.
- </p><p> As previously described, a particular instance of Virgo Web Server can itself also act as a repository host for remote server instances to use when satisfying the dependencies of the applications deployed to it. In this case, you configure a hosted repository using the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.hosted.properties</code> file. Typically, only remote clients use hosted repositories and their contents; the Virgo Web Server instance that actually hosts the repository does not typically use the artifacts in it. Rather, it uses artifacts in its local repository.
- </p><p>
- Making a third-party dependency available to your application is simply a matter of adding its artifact to the appropriate location in the provisioning repository. This could be either in the local directories or the remote ones if you are getting artifacts from a remotely-hosted repository.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="repository-structure"></a>Local Repository Structure</h3></div></div></div><p>
- When you first install Virgo Web Server, the local provisioning repository is located at <code class="literal">$SERVER_HOME/repository</code> by default and consists of two main directories: <code class="literal">ext</code> and <code class="literal">usr</code>. The <code class="literal">ext</code> directory contains artifacts supplied with the Virgo Web Server and <code class="literal">usr</code> contains artifacts supplied by the user.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="repository-installing-bundles"></a>Installing Artifacts to a Repository</h3></div></div></div><p>
- To install an artifact into the default repository, simply copy it into the <code class="literal">$SERVER_HOME/repository/usr</code> directory.
- </p><p>If you have configured additional watched or external repositories (additional, that is, to the default ones already configured in a freshly-installed VWS instance), you install the artifacts in the same way: simply copy the files to the configured directories. You configure additional watched or external repositories in the same file as the default repositories: <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.properties</code>.
- </p><p>When you install a plan or a library, you must ensure that all referenced artifacts within the plan or library have been installed as well.
- </p><p>Artifacts must have unique names so it is considered best practice to include the version number in the file name,
- allowing for multiple versions of the artifact to be installed at the same time. For example, a bundle file name might be <code class="literal">my-exciting-bundle.2.1.0.jar</code>.
- </p><p>
- For watched repositories, such as <code class="literal">$SERVER_HOME/repository/usr</code>, the Virgo Web Server automatically detects changes
- at runtime, thereby avoiding the need to restart the VWS.
- </p><p>
- Of specific relevance during development is picking up changes to an application’s direct dependencies during deployment of the application. For example, if you deploy an application and receive a message that a dependency is missing, you can simply add the dependency to the repository and then redeploy the application. The redeploy will cause the new dependency to be picked up, allowing progress to be made without restarting the VWS. For other changes such as addition of optional dependencies, the Virgo Web Server must be restarted to pick up any changes to the provisioning repository.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="repository-brits"></a>8.2 Finding and Downloading Bundles from the SpringSource Enterprise Bundle Repository</h2></div></div></div><p>
- The SpringSource Enterprise Bundle Repository is a public collection of open source libraries commonly used for developing enterprise Java applications with the Spring Framework and VWS. It contains hundreds of the most popular enterprise Java libraries made available for general use in an OSGi-ready format. You can browse the collection and then download the bundles that you need into your own local repository.
- </p><p>
- The SpringSource Enterprise Bundle Repository is located <a class="ulink" href="http://www.springsource.com/repository" target="_top">here</a>.
- </p><p>
- <img src="images/bundle-repository.png">
- </p><p>
- You can find bundles in the repository using a number of options. You use the ‘Search’ facility by typing in a keyword. The matching criteria returned can be explored by name, symbolic name, class, package or resource.
- </p><p>
- There is also the option of clicking on ‘Browse by Bundle’. This gives an alphabetical list of bundles. You can select the desired bundle to see details and find the download link. Finally, you can also choose to ‘Browse by Library’, which allows you to browse the alphabetical list of libraries in the repository.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="repository-configuration"></a>8.3 Configuring the repository</h2></div></div></div><p>Details of how to configure a Virgo Web Server installation’s provisioning repository can be found in <a class="link" href="#configuring-provisioning-repository" title="11.4 Configuring the Local Provisioning Repository">Configuring the Provisioning Repository</a>. See <a class="link" href="#configuring-hosted-repo" title="11.5 Configuring a Hosted Repository">Configuring a Hosted Repository</a> for details on how to configure a repository that remote clients can access, also called a hosted repository.
- </p><p>
- The two configuration chapters describe the format of the repository properties files of Virgo Web Server, how to add new directories to the local repository, how to configure the repository to get artifacts from a remote repository hosted on a remote VWS instance, and how to configure the local VWS instance to itself host a repository that other remote servers access.
- </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="serviceability"></a>9. Serviceability</h2></div></div></div><p>
- Virgo Web Server supports two kinds of logging: <span class="emphasis"><em>Event Logging</em></span> and <span class="emphasis"><em>Trace logging</em></span> which is usually referred
- to simply as <span class="emphasis"><em>Logging</em></span>. The difference between Event Logging and Logging is explained below, but both are configured in the <code class="literal">serviceability.xml</code> file in the <code class="literal">config</code> directory.
-This file takes the form of a Logback configuration—VWS
-uses a Logback implementation behind the SLF4J logging interface.
-</p><p>
-For a description of the syntax and facilities provided by <code class="literal">serviceability.xml</code>
-see the <span class="emphasis"><em>Logback</em></span> documentation (referenced in <a class="xref" href="#furtherreading" title="Appendix C. Further Reading">Appendix C, <i>
- Further Reading
- </i></a>).
-</p><p>
-</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="serviceability-info-log"></a>9.1 Event logging</h2></div></div></div><p>
- Event logging records important events in Virgo Web Server. Each event is logged to
- an event log file and is accompanied by a code enclosed in angle brackets.
- An example is shown below:
-</p><pre class="screen">
-[2010-10-25 16:20:45.897] system-artifacts <TC0010I> Creating HTTP/1.1 connector with scheme http on port 8080.
-</pre><p>
- (For a description of the log code syntax, see <a class="xref" href="#log-codes" title="Appendix A. Event log codes">Appendix A, <i>Event log codes</i></a>.)
- The format of event log messages is fully configurable.
- </p><p>
- By default, event log messages are stored in <code class="literal">$SERVER_HOME/serviceability/eventlogs/eventlog.log</code>.
- </p><p>
- The default behaviour is that, once <code class="literal">eventlog.log</code> reaches a 10Mb limit, it rolls into a series of files named
- <code class="literal">eventlog_</code><span class="emphasis"><em>i</em></span><code class="literal">.log</code> where <span class="emphasis"><em>i</em></span> ranges from 1 to 4, and event logging continues in
- a new <code class="literal">eventlog.log</code> file.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="serviceability-info-trace"></a>9.2 (Trace) Logging</h2></div></div></div><p>
- The Virgo Web Server’s (trace) logging support serves two main purposes:
- </p><div class="itemizedlist"><ul type="disc"><li>
- It provides global trace files that capture high-volume information regarding the Virgo Web Server’s internal events.
- The files are intended
- for use by support personnel to diagnose runtime problems.
- </li><li>
- It provides application trace files that contain application-generated output.
- This includes output generated using popular logging and
- tracing APIs, as well as output generated by calls to <code class="literal">System.out</code> and <code class="literal">System.err</code>.
- These files are
- intended for use by application developers and system administrators.
- </li></ul></div><p>
- </p><p>
- By default, the VWS trace file is called
- <code class="literal">$SERVER_HOME/serviceability/logs/log.log</code>,
- and, again by default, the application trace files are called
- <code class="literal">$SERVER_HOME/serviceability/logs/</code><span class="emphasis"><em>application_name</em></span><code class="literal">/log.log</code>,
- where <span class="emphasis"><em>application_name</em></span> is automatically set by VWS for each application artifact installed and run
- (it is a combination of the artifact name and the version).
- </p><p>
- The default behaviour of these trace files is that, once <code class="literal">log.log</code> reaches a 10Mb limit, it rolls into a series of files named
- <code class="literal">log_</code><span class="emphasis"><em>i</em></span><code class="literal">.log</code> where <span class="emphasis"><em>i</em></span> ranges from 1 to 4, and logging continues in
- a new <code class="literal">log.log</code> file.
- </p><p>
- Entries in trace files are by default of the form <timestamp> <thread-name> <source> <level> <entry-text>. For example:
- </p><pre class="screen">
-[2008-05-15 09:09:46.940] server-dm-2 org.apache.coyote.http11.Http11Protocol I Initializing Coyote HTTP/1.1 on http-48080
- </pre><p>
- although this format is completely determined by the Logback configuration file <code class="literal">serviceability.xml</code>.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="serviceability-info-trace-app"></a>Application Output</h3></div></div></div><p>
- Virgo Web Server provides advanced support for capturing and tracing application-generated output by automatically separating trace output on a
- per-application basis and will also capture any <code class="literal">System.out</code> and <code class="literal">System.err</code> output.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="per-application-trace"></a>Per-application trace</h4></div></div></div><p>
- Virgo Web Server uses SLF4J interfaces to Logback, and the root logger (by default) captures all logging output
- and appends it to the application-specific trace files as described above.
- To modify this, define application-specific loggers in the <code class="literal">serviceability.xml</code> file in the normal way.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="sysout-and-syserr"></a>System.out and System.err</h4></div></div></div><p>
- <code class="literal">System.out</code> and <code class="literal">System.err</code> output from applications is, by default, captured in the
- application’s trace file.
- This happens because the output streams are intercepted and written to the loggers named
- <code class="literal">System.out</code> and <code class="literal">System.err</code> respectively.
- Since there are no explicit loggers defined with these names in the <code class="literal">serviceability.xml</code> file,
- this output is logged by the root logger (which captures <code class="literal">INFO</code> level and above).
- </p><p>
- The capture of <code class="literal">System.out</code> and <code class="literal">System.err</code> output is configured in the
- <code class="literal">config/org.eclipse.virgo.medic.properties</code> file by the <code class="literal">log.wrapSysOut</code> and
- <code class="literal">log.wrapSysErr</code> properties. By default the properties have a value of <code class="literal">true</code>
- and capture is enabled. Capture can be disabled by configuring the properties with a value of <code class="literal">false</code>.
- </p><p>
- The trace entries for <code class="literal">System.out</code> and <code class="literal">System.err</code>
- output are of the form:
- </p><pre class="screen">
-[2008-05-16 09:28:45.874] server-tomcat-thread-1 System.out Hello world!
-[2008-05-16 09:28:45.874] server-tomcat-thread-1 System.err Hello world!
- </pre><p>
- The third column indicates where the output came from (<code class="literal">System.out</code> or <code class="literal">System.err</code>).
- </p><p>
- To over-ride this behaviour, simply define explicit loggers named <code class="literal">System.out</code>
- and/or <code class="literal">System.err</code> in the configuration file to send this output to an appender of your choice.
- Be aware that all applications’ output streams will be caught by these loggers, and that a sifting appender might be useful to separate them.
- </p></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="serviceability-info-dump"></a>9.3 Service Dumps</h2></div></div></div><p>
- A service dump is triggered when one of the following events
- occurs:
- </p><div class="orderedlist"><ol type="1"><li><p>
- A failure is detected in the Virgo Web Server code, or
- </p></li><li><p>
- a thread deadlock is detected.
- </p></li></ol></div><p>
- A service dump contains a snapshot of all the important state from
- the running Virgo Web Server instance. This snapshot is not intended
- for end user consumption but is useful for service personnel.
- </p><p>
- By default, service dumps are created in
- <code class="literal">$SERVER_HOME/serviceability/dump</code>.
- </p></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="deployment"></a>10. Working with Applications</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="deployment-deploying"></a>10.1 Deploying Artifacts</h2></div></div></div><p>
- In the context of Virgo Web Server, <span class="emphasis"><em>deploying</em></span> refers to installing an artifact to the server and then starting it to make it available to users. Typically, when you install an artifact, VWS automatically starts it as long as the server is able to successfully resolve all its dependencies. For this reason, the terms <span class="emphasis"><em>deploying</em></span> and <span class="emphasis"><em>installing</em></span> are often used interchangeably.
- </p><p>You deploy artifacts to Virgo Web Server using either the hot-deploy directory on the file system or by using the Admin Console. The artifacts that you can deploy to VWS are:
- </p><div class="itemizedlist"><ul type="disc"><li>Bundles, including Web applications</li><li>PARs</li><li>Plans</li><li>Configuration Files</li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-hot"></a>Hot Deploy</h3></div></div></div><p>
- To hot deploy an artifact, copy it into the pickup directory (by default <code class="literal">$SERVER_HOME/pickup</code>):
- </p><pre class="programlisting">prompt$ cd /home/applications
-prompt$ cp helloWorld.war $SERVER_HOME/pickup</pre><p>
- When the artifact is hot deployed, messages similar to the following appear in the log file:
- </p><pre class="screen">[2009-12-10 06:41:01.021] fs-watcher <HD0001I> Hot deployer processing 'CREATED' event for file 'helloWorld.war'.
-[2009-12-10 06:41:01.087] fs-watcher <DE0000I> Installing bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:41:01.274] fs-watcher <DE0001I> Installed bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:41:01.397] fs-watcher <DE0004I> Starting bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:41:01.414] Thread-3 <WE0000I> Starting web bundle 'helloWorld' version '0.0.0' with context path '/helloWorld'.
-[2009-12-10 06:41:01.537] Thread-3 <WE0001I> Started web bundle 'helloWorld' version '0.0.0' with context path '/helloWorld'.
-[2009-12-10 06:41:01.550] start-signalling-1 <DE0005I> Started bundle 'helloWorld' version '0.0.0'.</pre><p>
- If there is a problem with the deployment, such as the server being unable to resolve all dependencies, the console and log both show an error message to help you with troubleshooting.
- </p><p>If there are no problems, VWS automatically starts the artifact so that it is immediately available to users.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-manual"></a>Deploying Using the Admin Console</h3></div></div></div><p>
- The Admin Console allows you to upload a file, which will be deployed automatically, from your local file system to the Virgo Web Server. As soon as Virgo Web Server deploys the artifact, it appears in the list of artifacts in the Admin Console. Note that the GUI for uploading varies according to the browser and operating system you use.
- </p><p>See <a class="link" href="#admin-console-install-artifacts" title="Installing a New Artifact">Installing a New Artifact</a> for details about using the Admin Console to install (deploy) an artifact. See <a class="link" href="#admin-console" title="7. The Web Admin Console">The Web Admin Console</a> for general information about the Admin Console.</p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-happens"></a>What Happens When You Deploy</h3></div></div></div><p>
- When you deploy an artifact, either using hot-deployment or the Admin Console, Web Server copies the file to its work directory (<code class="literal">SERVER_HOME/work</code>) and registers it in its internal registry.
- The server then checks any dependencies the artifact might have to see if
- deployment can go ahead, and if all dependencies are resolved, Virgo Web Server starts the artifact.
- Because of all these additional internal activities, you should NOT simply copy the artifact into the <code class="literal">work</code> directory and assume it will be deployed, because Virgo Web Server will not do so.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-ordering"></a>Deployment Ordering</h3></div></div></div><p>
- When deploying bundles that have dependencies, it is important
- that you deploy them in the correct order. Virgo Web Server
- honors this ordering when it redeploys the artifacts on startup.
- </p><p>
- If you use hot deployment to deploy your artifacts, be sure to copy the corresponding files into the pickup
- directory one-by-one. Copying the files in one group, for example by using a single <code class="literal">cp</code> command. provides no guarantees of ordering.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-deploying-restrictions"></a>Restrictions</h3></div></div></div><p>
- Virgo Web Server does not support deploying fragment bundles. Typically, fragment bundles should be placed in <code class="literal">$SERVER_HOME/repository/ext</code>
- or <code class="literal">$SERVER_HOME/repository/usr</code> so that they will be installed automatically with their host bundles.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="deployment-undeploy"></a>10.2 Undeploying Artifacts</h2></div></div></div><p>
- You undeploy artifacts from Virgo Web Server by using either the hot-deploy directory on the file system, or the Admin Console.
- </p><p><span class="bold"><strong>Note:</strong></span> As with deploying, in this guide the terms <span class="emphasis"><em>undeploying</em></span> and <span class="emphasis"><em>uninstalling</em></span> are used interchangeably.</p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-undeploy-hot"></a>Hot Undeploy</h3></div></div></div><p>
- To hot-undeploy an artifact, remove the corresponding file from the pickup directory (by default <code class="literal">$SERVER_HOME/pickup</code>):
- </p><pre class="programlisting">prompt$ cd $SERVER_HOME/pickup
-prompt$ rm helloWorld.war</pre><p>
- When Virgo Web Server completes the undeployment of the artifact, messages similar to the following appear in the log:
- </p><pre class="screen">[2009-12-10 06:46:33.254] fs-watcher <HD0001I> Hot deployer processing 'DELETED' event for file 'helloWorld.war'.
-[2009-12-10 06:46:33.259] Thread-3 <WE0002I> Stopping web bundle 'helloWorld' version '0.0.0' with context path '/helloWorld'.
-[2009-12-10 06:46:33.285] Thread-3 <WE0003I> Stopped web bundle 'helloWorld' version '0.0.0' with context path '/helloWorld'.
-[2009-12-10 06:46:33.290] fs-watcher <DE0010I> Stopping bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:46:33.295] fs-watcher <DE0011I> Stopped bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:46:33.302] fs-watcher <DE0013I> Uninstalling bundle 'helloWorld' version '0.0.0'.
-[2009-12-10 06:46:33.319] fs-watcher <DE0014I> Uninstalled bundle 'helloWorld' version '0.0.0'.</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="deployment-undeploy-manual"></a>Undeploying Using the Admin Console</h3></div></div></div><p>
- You can undeploy only whole artifacts from the Admin Console, or in other words, you cannot undeploy the separate modules or bundles that make up an artifact.</p><p>
- The only artifact that you cannot undeploy from the Admin Console is the Admin Console itself. If you need to undeploy this application, you must remove it from the pickup directory (by default <code class="literal">SERVER_HOME/pickup</code>); the name of the artifact is
- <code class="literal">org.eclipse.virgo.server.admin-2.1.0.RELEASE.plan</code>.
- </p><p>See <a class="link" href="#admin-console-manage-artifacts" title="Viewing and Managing the Lifecycle of Deployed Artifacts">Viewing and Managing the Lifecycle of Deployed Artifacts</a> for details about uninstalling (undeploying) an artifact using the Admin Console. The high-level steps are to highlight the artifact in the artifact tree then click <code class="literal">Uninstall</code>. </p></div></div></div><div class="chapter" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="configuring"></a>11. Configuration</h2></div></div></div><p>You use configuration files in the <code class="literal">$SERVER_HOME/config</code> directory to configure VWS. You can also configure the OSGi framework using files in <code class="literal">$SERVER_HOME/lib</code>. This section divides the configuration of the server into the following high-level tasks:</p><div class="itemizedlist"><ul type="disc"><li><p><a class="link" href="#configuring-kernel" title="11.1 Configuring the Virgo Kernel and User Region">Configuring the kernel and the user region.</a></p></li><li><p><a class="link" href="#configuring-tomcat" title="11.3 Configuring the Embedded Tomcat Servlet Container">Configuring embedded Tomcat servlet container.</a></p></li><li><p><a class="link" href="#configuring-serviceability" title="11.2 Configuring Serviceability">Configuring serviceability.</a></p></li><li><p><a class="link" href="#configuring-provisioning-repository" title="11.4 Configuring the Local Provisioning Repository">Configuring the local provisioning repository.</a></p></li><li><p><a class="link" href="#configuring-hosted-repo" title="11.5 Configuring a Hosted Repository">Configuring the hosted repository.</a></p></li><li><p><a class="link" href="#configuring-osgi-framework" title="11.6 Configuring the OSGi Framework">Configuring the OSGi framework.</a></p></li></ul></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-kernel"></a>11.1 Configuring the Virgo Kernel and User Region</h2></div></div></div><p>This section provides information about configuring the VWS kernel and the user region by updating the following files in the <code class="literal">$SERVER_HOME/config</code> directory:</p><div class="table"><a name="configuring-kernel-table"></a><p class="title"><b>Table 11.1. Kernel Configuration Files </b></p><div class="table-contents"><table summary="Kernel Configuration Files " style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property File (prefixed by <code class="literal">org.eclipse.virgo</code>)</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">.kernel.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures <a class="link" href="#configuring-deployment" title="Configuring Deployment">deployment</a>. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">.kernel.userregion.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures the <a class="link" href="#configuring-user-region" title="Configuring the User Region">user region</a> of VWS and enables the OSGi console.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">.kernel.users.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures the <a class="link" href="#configuring-authentication" title="Configuring Authentication">users that are allowed to access</a> the Admin Console, and roles to which they map. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">.kernel.jmxremote.access.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures the <a class="link" href="#configuring-authentication" title="Configuring Authentication">permissions for users</a> that are allowed to access the Admin Console. </td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">.kernel.authentication.config</code></td><td style="">Configures the <a class="link" href="#configuring-authentication" title="Configuring Authentication">Java Authentication and Authorization Service (JAAS)</a> for the Tomcat server users.</td></tr></tbody></table></div></div><br class="table-break"><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-deployment"></a>Configuring Deployment</h3></div></div></div><p>You can configure two properties of deployment: the pickup directory into which you copy applications for hot-deployment and the deployment timeout. </p><p>To change any of these properties, edit the <code class="literal">deployer.XXX</code> properties of the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.properties</code> file. The following table describes these properties. </p><div class="table"><a name="configuring-deployment-table"></a><p class="title"><b>Table 11.2. Deployment Configuration Properties</b></p><div class="table-contents"><table summary="Deployment Configuration Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">deployer.pickupDirectory</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the absolute or relative path to the pickup directory to which you copy applications for hot-deployment. Relative paths are relative to <code class="literal">$SERVER_HOME</code>. The default value is <code class="literal">./pickup</code>.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">deployer.timeout</code></td><td style="">Specifies the amount of time, in seconds, after which VWS times out while trying to deploy a bundle, library, or plan. The default value is <code class="literal">300</code>. If you want to disable deployment timeout, specify <code class="literal">0</code>.</td></tr></tbody></table></div></div><br class="table-break"><p>The following listing displays the default configuration distributed with the VWS; only relevant sections of the <code class="literal">org.eclipse.virgo.kernel.properties</code> file are shown. </p><pre class="programlisting">deployer.timeout=300
-deployer.pickupDirectory=pickup</pre><p>As the default configuration shows, the default pickup directory is <code class="literal">$SERVER_HOME/pickup</code> and the deployment timeout is 300 seconds.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-user-region"></a>Configuring the User Region</h3></div></div></div><p>
- The user region is the subsystem of VWS that
- supports deployed applications, both your own user applications and
- those of the server itself, such as the Admin Console. The user region
- is deliberately isolated from the kernel, which makes it much simpler
- for you to manage your applications with the Admin Console
- because the internal kernel bundles are not visible.
- </p><p>
- You configure the user region by updating properties in the
- <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.userregion.properties</code>
- file; these properties are described in the following table.
- </p><p>
- <span class="bold"><strong>WARNING:</strong></span>
- We strongly recommend that you update only the
- <code class="literal">initialArtifacts</code> and the <code class="literal">osgi.console</code>
- properties; updating other properties could cause
- VWS to fail. These properties are documented for your
- information.
- </p><div class="table"><a name="configuring-user-region-table"></a><p class="title"><b>Table 11.3. User Region Configuration Properties</b></p><div class="table-contents"><table summary="User Region Configuration Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">baseBundles</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the hard-coded list of bundles that VWS installs directly into the user region. Virgo Web Server does not perform any automatic dependency satisfaction for these bundles; in other words, you only get the bundles in the list and nothing more. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">packageImports</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the packages that exist in the kernel that VWS imports into the user region so that they are in turn available to be imported by bundles in the user region. This property supports a <code class="literal">.*</code> wildcard. For example, <code class="literal">org.eclipse.virgo.util.*</code> will import all packages that start with <code class="literal">org.eclipse.virgo.util</code>.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">serviceImports</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the services in the kernel that are imported into the user region so that they're available to bundles in the user region. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">serviceExports</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the services in the user region that are exported to the kernel so that they're available to bundles in the kernel. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">inheritedFrameworkProperties</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the framework properties, configured in the <code class="literal">$SERVER_HOME/lib/org.eclipse.virgo.kernel.launch.properties</code> file, that will also be set on the user region's nested framework.</td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">osgi.console</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the port number which the Equinox console will use.
- The usual port number is 2401.
- If specified, the Equinox console is enabled (with the Equinox Console Extension) during user region start.
- If not specified, the Equinox console is not available.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">initialArtifacts</code></td><td style="">Specifies the artifacts that VWS deploys into the user region when the server starts. Virgo Web Server performs dependency satisfaction when it deploys these artifacts. This means that you only need to list the top-level artifacts that you care about; VWS automatically installs any other artifacts upon which they depend from the repository.
- </td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-authentication"></a>Configuring Authentication</h3></div></div></div><p>
- Virgo Web Server uses the
- <a class="ulink" href="http://java.sun.com/javase/6/docs/technotes/guides/security/jaas/JAASRefGuide.html" target="_top">Java Authentication and Authorization Service (JAAS)</a>
- framework to authenticate the administration user that connects to Web
- Servers using the Admin Console. This section describes
- how the authentication mechanism is configured by default, and the
- files that you need to update if you want to change the administration
- user, change their password, and so on.
- </p><p>The <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.authentication.config</code> file configures the underlying authentication technology for VWS. The short file consists of the following entry:</p><pre class="programlisting">virgo-kernel {
- org.eclipse.virgo.kernel.authentication.KernelLoginModule REQUIRED;
-};</pre><p>The entry is named <code class="literal">virgo-kernel</code>. This name corresponds to the <code class="literal"><Realm></code> element in the <code class="literal">$SERVER_HOME/config/tomcat-server.xml</code> file that configures the JAAS authentication mechanism for the <code class="literal">Catalina</code> service of the <a class="link" href="#configuring-tomcat" title="11.3 Configuring the Embedded Tomcat Servlet Container">Tomcat servlet container</a>. The <code class="literal">virgo-kernel</code> entry specifies that the JAAS LoginModule that VWS uses to authenticate users is <code class="literal">org.eclipse.virgo.kernel.authentication.KernelLoginModule</code> and that this <code class="literal">KernelLoginModule</code> is required to "succeed" in order for authentication to be considered successful. The <code class="literal">KernelLoginModule</code> succeeds only if the name and password supplied by the user are the ones it expects. The default administration username/password pair for Web Server is <code class="literal">admin/springsource</code>. </p><p>You configure the administration user in the <code class="literal">org.eclipse.virgo.kernel.users.properties</code> file. The default file for a freshly installed VWS is as follows:</p><pre class="programlisting">##################
-# User definitions
-##################
-user.admin=springsource
-
-##################
-# Role definitions
-##################
-role.admin=admin</pre><p>
- The administration user that connect to the Admin Console must have the
- <code class="literal">admin</code>
- role. The preceding file shows how, by default, the
- <code class="literal">admin</code>
- role is assigned the
- <code class="literal">admin</code>
- user with password
- <code class="literal">springsource</code>.
- </p><p>If you want to change the administration user, update the <code class="literal">org.eclipse.virgo.kernel.users.properties</code> file. For example, if you want the <code class="literal">juliet</code> user, with password <code class="literal">supersecret</code>, to be the new adminstration user, update the file as shown:</p><pre class="programlisting">##################
-# User definitions
-##################
-user.juliet=supersecret
-
-##################
-# Role definitions
-##################
-role.admin=juliet</pre><p>Be sure to restart VWS after you make this change for it to take effect.</p><p>The final file involved in VWS authentication is <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.kernel.jmxremote.access.properties</code>. This file specifies the JMX access privileges that the administration user has; by default they are read and write, as shown in the following listing:</p><pre class="programlisting">admin=readwrite</pre><p>
- The only other value you can enter is
- <code class="literal">readonly</code>, which means that the adminstration user would only be able to <span class="emphasis"><em>view</em></span>
- information using the Admin Console.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-serviceability"></a>11.2 Configuring Serviceability</h2></div></div></div><p>The serviceability sub-system of VWS allows you to gather and view data and information that you can then use to diagnose problems and failures. Serviceability includes data from:</p><div class="itemizedlist"><ul type="disc"><li><p>
- Service dumps: Contain a snapshot of all the important state from the running VWS instance when an internal failure or thread deadlock is detected.
- </p><p>You configure service dumps for Virgo Web Server using the <a class="link" href="#configuring-serviceability-medic" title="The org.eclipse.virgo.medic.properties File">org.eclipse.virgo.medic.properties</a> file in the <code class="literal">$SERVER_HOME/config</code> directory. This file also includes some additional logging configuration.</p></li><li><p>
- Event logs and server/application (trace) logging: Logging support in VWS is based on <a class="ulink" href="http://logback.qos.ch/" target="_top">Logback</a>. This means that you now have complete control over the format of log output and have the complete range of Logback's appenders available for your use.
- </p><p>You configure logging for Virgo Web Server using the <a class="link" href="#configuring-serviceability-logback" title="The serviceability.xml File">serviceability.xml</a> file in the <code class="literal">$SERVER_HOME/config</code> directory. This file is essentially the Logback <code class="literal">logback.xml</code> (or <code class="literal">logback-test.xml</code>) configuration file but renamed for VWS. </p></li></ul></div><p>For additional conceptual information about the serviceability subsystem, see <a class="xref" href="#serviceability" title="9. Serviceability">Chapter 9, <i>Serviceability</i></a>. </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-serviceability-medic"></a>The org.eclipse.virgo.medic.properties File</h3></div></div></div><p>The <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.medic.properties</code> file configures VWS service dumps and whether you want to capture <code class="literal">System.out</code> and <code class="literal">System.err</code> output to your application's trace file. </p><p>The following table describes the properties you can include in the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.medic.properties</code> file. This file configures serviceability properties that VWS includes in addition to those supplied by the Logback, configured in the <code class="literal">serviceability.xml</code> file.</p><div class="table"><a name="medic-properties-table"></a><p class="title"><b>Table 11.4. Serviceability Properties</b></p><div class="table-contents"><table summary="Serviceability Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">dump.root.directory</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the directory to which VWS writes the service dumps. The directory name is relative to <code class="literal">$SERVER_HOME</code>. </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">log.wrapSysOut</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies whether you want to capture <code class="literal">System.out</code> output from your applications to the application trace file. The output is logged by VWS's root logger, which captures <code class="literal">INFO</code> level and above.
- <p>Valid values for this property are <code class="literal">true</code> to capture <code class="literal">System.out</code> output, or <code class="literal">false</code> to disable the capture.</p>
- <p>For more information, see <a class="link" href="#sysout-and-syserr" title="System.out and System.err">System.out and System.err</a>.</p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">log.wrapSysErr</code></td><td style="">Specifies whether you want to capture <code class="literal">System.err</code> output from your applications to the application trace file. The output is logged by VWS's root logger, which captures <code class="literal">INFO</code> level and above.
- <p>Valid values for this property are <code class="literal">true</code> to capture <code class="literal">System.err</code> output, or <code class="literal">false</code> to disable the capture.</p>
- <p>For more information, see <a class="link" href="#sysout-and-syserr" title="System.out and System.err">System.out and System.err</a>.</p>
- </td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-serviceability-logback"></a>The serviceability.xml File</h3></div></div></div><p>Logging support in VWS is based on <a class="ulink" href="http://logback.qos.ch/" target="_top">Logback</a>, which is a successor of the log4j project. The Logback logging framework is faster, more reliable, and easier to use than log4j and certain other logging systems.</p><p>You configure logging for Virgo Web Server using the <code class="literal">$SERVER_HOME/config/serviceability.xml</code> file. This file is the standard Logback <code class="literal">logback.xml</code> or <code class="literal">logback-test.xml</code> configuration file, but renamed for VWS. </p><p>The following listing shows the default <code class="literal">serviceability.xml</code> file in a freshly-installed VWS; see the text after the listing for a brief overview of the file:</p><pre class="programlisting"><<span class="hl-tag">configuration</span>>
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"SIFTED_LOG_FILE"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.sift.SiftingAppender"</span>>
- <<span class="hl-tag">discriminator</span>>
- <<span class="hl-tag">Key</span>>applicationName<<span class="hl-tag">/Key</span>>
- <<span class="hl-tag">DefaultValue</span>>virgo-server<<span class="hl-tag">/DefaultValue</span>>
- <<span class="hl-tag">/discriminator</span>>
- <<span class="hl-tag">sift</span>>
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"${applicationName}_LOG_FILE"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.RollingFileAppender"</span>>
- <<span class="hl-tag">file</span>>serviceability/logs/${applicationName}/log.log<<span class="hl-tag">/file</span>>
- <<span class="hl-tag">rollingPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.FixedWindowRollingPolicy"</span>>
- <<span class="hl-tag">FileNamePattern</span>>serviceability/logs/${applicationName}/log_%i.log<<span class="hl-tag">/FileNamePattern</span>>
- <<span class="hl-tag">MinIndex</span>>1<<span class="hl-tag">/MinIndex</span>>
- <<span class="hl-tag">MaxIndex</span>>4<<span class="hl-tag">/MaxIndex</span>>
- <<span class="hl-tag">/rollingPolicy</span>>
- <<span class="hl-tag">triggeringPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"</span>>
- <<span class="hl-tag">MaxFileSize</span>>10MB<<span class="hl-tag">/MaxFileSize</span>>
- <<span class="hl-tag">/triggeringPolicy</span>>
- <<span class="hl-tag">encoder</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.encoder.PatternLayoutEncoder"</span>>
- <<span class="hl-tag">Pattern</span>>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-28.28thread %-64.64logger{64} %X{medic.eventCode} %msg %ex%n<<span class="hl-tag">/Pattern</span>>
- <<span class="hl-tag">/encoder</span>>
- <<span class="hl-tag">/appender</span>>
- <<span class="hl-tag">/sift</span>>
- <<span class="hl-tag">/appender</span>>
-
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"LOG_FILE"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.RollingFileAppender"</span>>
- <<span class="hl-tag">file</span>>serviceability/logs/log.log<<span class="hl-tag">/file</span>>
- <<span class="hl-tag">rollingPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.FixedWindowRollingPolicy"</span>>
- <<span class="hl-tag">FileNamePattern</span>>serviceability/logs/log_%i.log<<span class="hl-tag">/FileNamePattern</span>>
- <<span class="hl-tag">MinIndex</span>>1<<span class="hl-tag">/MinIndex</span>>
- <<span class="hl-tag">MaxIndex</span>>4<<span class="hl-tag">/MaxIndex</span>>
- <<span class="hl-tag">/rollingPolicy</span>>
- <<span class="hl-tag">triggeringPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"</span>>
- <<span class="hl-tag">MaxFileSize</span>>10MB<<span class="hl-tag">/MaxFileSize</span>>
- <<span class="hl-tag">/triggeringPolicy</span>>
- <<span class="hl-tag">encoder</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.encoder.PatternLayoutEncoder"</span>>
- <<span class="hl-tag">Pattern</span>>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-28.28thread %-64.64logger{64} %X{medic.eventCode} %msg %ex%n<<span class="hl-tag">/Pattern</span>>
- <<span class="hl-tag">/encoder</span>>
- <<span class="hl-tag">/appender</span>>
-
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"EVENT_LOG_STDOUT"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"org.eclipse.virgo.medic.log.logback.ReroutingAwareConsoleAppender"</span>>
- <<span class="hl-tag">encoder</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.encoder.PatternLayoutEncoder"</span>>
- <<span class="hl-tag">Pattern</span>>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-28.28thread &lt;%X{medic.eventCode}&gt; %msg %ex%n<<span class="hl-tag">/Pattern</span>>
- <<span class="hl-tag">/encoder</span>>
- <<span class="hl-tag">/appender</span>>
-
- <<span class="hl-tag">appender</span> <span class="hl-attribute">name</span>=<span class="hl-value">"EVENT_LOG_FILE"</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.RollingFileAppender"</span>>
- <<span class="hl-tag">file</span>>serviceability/eventlogs/eventlog.log<<span class="hl-tag">/file</span>>
- <<span class="hl-tag">rollingPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.FixedWindowRollingPolicy"</span>>
- <<span class="hl-tag">FileNamePattern</span>>serviceability/eventlogs/eventlog_%i.log<<span class="hl-tag">/FileNamePattern</span>>
- <<span class="hl-tag">MinIndex</span>>1<<span class="hl-tag">/MinIndex</span>>
- <<span class="hl-tag">MaxIndex</span>>4<<span class="hl-tag">/MaxIndex</span>>
- <<span class="hl-tag">/rollingPolicy</span>>
- <<span class="hl-tag">triggeringPolicy</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.core.rolling.SizeBasedTriggeringPolicy"</span>>
- <<span class="hl-tag">MaxFileSize</span>>10MB<<span class="hl-tag">/MaxFileSize</span>>
- <<span class="hl-tag">/triggeringPolicy</span>>
- <<span class="hl-tag">encoder</span> <span class="hl-attribute">class</span>=<span class="hl-value">"ch.qos.logback.classic.encoder.PatternLayoutEncoder"</span>>
- <<span class="hl-tag">Pattern</span>>[%d{yyyy-MM-dd HH:mm:ss.SSS}] %-28.28thread &lt;%X{medic.eventCode}&gt; %msg %ex%n<<span class="hl-tag">/Pattern</span>>
- <<span class="hl-tag">/encoder</span>>
- <<span class="hl-tag">/appender</span>>
-
- <<span class="hl-tag">logger</span> <span class="hl-attribute">level</span>=<span class="hl-value">"INFO"</span> <span class="hl-attribute">additivity</span>=<span class="hl-value">"false"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.eclipse.virgo.medic.eventlog.localized"</span>>
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"EVENT_LOG_STDOUT"</span> />
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"EVENT_LOG_FILE"</span> />
- <<span class="hl-tag">/logger</span>>
-
- <<span class="hl-tag">logger</span> <span class="hl-attribute">level</span>=<span class="hl-value">"INFO"</span> <span class="hl-attribute">additivity</span>=<span class="hl-value">"false"</span> <span class="hl-attribute">name</span>=<span class="hl-value">"org.eclipse.virgo.medic.eventlog.default"</span>>
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"SIFTED_LOG_FILE"</span> />
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"LOG_FILE"</span> />
- <<span class="hl-tag">/logger</span>>
-
- <<span class="hl-tag">root</span> <span class="hl-attribute">level</span>=<span class="hl-value">"INFO"</span>>
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"SIFTED_LOG_FILE"</span> />
- <<span class="hl-tag">appender-ref</span> <span class="hl-attribute">ref</span>=<span class="hl-value">"LOG_FILE"</span> />
- <<span class="hl-tag">/root</span>>
-
-<<span class="hl-tag">/configuration</span>></pre><p>Logback allows VWS to use logger, appender, and encoder (layout) objects to log messages according to message type and level and to format these messages and define where they are written. The default <code class="literal">serviceability.xml</code> file shown above includes four appenders and three loggers (two user and one root.)</p><p>The main information to get from this file is that VWS writes log messages to four different locations that map to the four appenders:</p><div class="itemizedlist"><ul type="disc"><li><p>The <code class="literal">SIFTED_LOG_FILE</code> appender logs both global and application-specific messages to the <code class="literal">$SERVER_HOME/serviceability/logs/</code><span class="emphasis"><em><code class="literal">applicationName</code></em></span><code class="literal">/log.log</code> file, where <span class="emphasis"><em><code class="literal">applicationName</code></em></span> refers to the name of the application. The log messages for the VWS itself are logged to the <code class="literal">$SERVER_HOME/serviceability/logs/virgo-server/log.log</code> file. Because this appender creates different log files for each application, it is called a <span class="emphasis"><em>sifting appender</em></span>. </p><p>
- The default behaviour of these trace files is that, once <code class="literal">log.log</code> reaches a 10Mb limit, it rolls into a series of files named
- <code class="literal">log_</code><span class="emphasis"><em>i</em></span><code class="literal">.log</code> where <span class="emphasis"><em>i</em></span> ranges from 1 to 4, and logging continues in
- a new <code class="literal">log.log</code> file. This is called its <span class="emphasis"><em>rolling policy</em></span>.
- </p><p>The <code class="literal"><Pattern></code> element defines the format of each log message; messages include the timestamp, the thread that generated the log message, the context-specific event code, and a stack trace of the exception, if any. For example:</p><p><code class="literal">[2008-05-15 09:09:46.940] server-dm-2 org.apache.coyote.http11.Http11Protocol I Initializing Coyote HTTP/1.1 on http-48080</code></p></li><li><p>The <code class="literal">LOG_FILE</code> appender is very similar to the first one, but it logs <span class="emphasis"><em>all</em></span> log messages to the <code class="literal">$SERVER_HOME/serviceability/log/log.log</code> file rather than sifting application-specific messages to their own log file. The rolling policy and message format for this appender is similar to that of the <code class="literal">SIFTED_LOG_FILE</code> appender.</p></li><li><p>The <code class="literal">EVENT_LOG_STDOUT</code> appender does not log messages to a file, but rather to the console window from which you started VWS. For example:</p><p><code class="literal">[2010-10-25 16:20:49.367] Thread-3 <WE0000I> Starting web bundle 'org.eclipse.virgo.apps.admin.web' version '2.1.0.RELEASE' with context path '/admin'.</code></p></li><li><p>The <code class="literal">EVENT_LOG_FILE</code> appender logs only important events to the <code class="literal">$SERVER_HOME/serviceability/eventlogs/eventlog.log</code> file, and thus the volume of information is much lower than with the first two appenders. The rolling policy for the event log is the same as with the first two appenders, but the format of the messages is similar to that of the <code class="literal">EVENT_LOG_STDOUT</code> appender. </p></li></ul></div><p>The loggers and root logger specify the level of log that is written for each of the referenced appenders.</p><p>Typically, the default logging configuration as specified by the <code class="literal">serviceability.xml</code> file is adequate for all VWS environments. However, if you want to customize the logging framework further, you can edit this file as well as the <code class="literal">org.eclipse.virgo.medic.properties</code>. See the <a class="ulink" href="http://logback.qos.ch/manual/index.html" target="_top">logback documentation</a> for detailed information about the architecture and the configuration of Logback.</p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-tomcat"></a>11.3 Configuring the Embedded Tomcat Servlet Container</h2></div></div></div><p>
- Virgo Web Server
- embeds an OSGi-enhanced version of the <a class="ulink" href="http://tomcat.apache.org/" target="_top">Tomcat Servlet Container</a>
- in order to provide support for deploying Java EE WARs and OSGi <span class="emphasis"><em>Web Application Bundles</em></span>.
- You configure the embedded Servlet container using the standard Apache Tomcat configuration. The main difference is that the configuration file is called <code class="filename">tomcat-server.xml</code> rather than <code class="literal">server.xml</code>. As with the other VWS configuration files, the <code class="literal">tomcat-server.xml</code> file is located in the <code class="literal">$SERVER_HOME/config</code> directory.
- </p><p>Here's an extract of the default configuration distributed with the VWS.
- </p><pre class="programlisting"><<span class="hl-tag">?xml version='1.0' encoding='utf-8'?</span>>
-<<span class="hl-tag">Server</span> <span class="hl-attribute">port</span>=<span class="hl-value">"8005"</span> <span class="hl-attribute">shutdown</span>=<span class="hl-value">"SHUTDOWN"</span>>
-
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.core.AprLifecycleListener"</span> <span class="hl-attribute">SSLEngine</span>=<span class="hl-value">"on"</span> />
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.core.JasperListener"</span> />
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.mbeans.ServerLifecycleListener"</span> />
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"</span> />
-
- <<span class="hl-tag">Listener</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.eclipse.virgo.web.tomcat.ServerLifecycleLoggingListener"</span>/>
-
- <<span class="hl-tag">Service</span> <span class="hl-attribute">name</span>=<span class="hl-value">"Catalina"</span>>
- <<span class="hl-tag">Connector</span> <span class="hl-attribute">port</span>=<span class="hl-value">"8080"</span> <span class="hl-attribute">protocol</span>=<span class="hl-value">"HTTP/1.1"</span>
- <span class="hl-attribute">connectionTimeout</span>=<span class="hl-value">"20000"</span>
- <span class="hl-attribute">redirectPort</span>=<span class="hl-value">"8443"</span> />
-
- <<span class="hl-tag">Connector</span> <span class="hl-attribute">port</span>=<span class="hl-value">"8443"</span> <span class="hl-attribute">protocol</span>=<span class="hl-value">"HTTP/1.1"</span> <span class="hl-attribute">SSLEnabled</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">maxThreads</span>=<span class="hl-value">"150"</span> <span class="hl-attribute">scheme</span>=<span class="hl-value">"https"</span> <span class="hl-attribute">secure</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">clientAuth</span>=<span class="hl-value">"false"</span> <span class="hl-attribute">sslProtocol</span>=<span class="hl-value">"TLS"</span>
- <span class="hl-attribute">keystoreFile</span>=<span class="hl-value">"config/keystore"</span>
- <span class="hl-attribute">keystorePass</span>=<span class="hl-value">"changeit"</span>/>
-
- <<span class="hl-tag">Connector</span> <span class="hl-attribute">port</span>=<span class="hl-value">"8009"</span> <span class="hl-attribute">protocol</span>=<span class="hl-value">"AJP/1.3"</span> <span class="hl-attribute">redirectPort</span>=<span class="hl-value">"8443"</span> />
-
- <<span class="hl-tag">Engine</span> <span class="hl-attribute">name</span>=<span class="hl-value">"Catalina"</span> <span class="hl-attribute">defaultHost</span>=<span class="hl-value">"localhost"</span>>
- <<span class="hl-tag">Realm</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.realm.JAASRealm"</span> <span class="hl-attribute">appName</span>=<span class="hl-value">"virgo-kernel"</span>
- <span class="hl-attribute">userClassNames</span>=<span class="hl-value">"org.eclipse.virgo.kernel.authentication.User"</span>
- <span class="hl-attribute">roleClassNames</span>=<span class="hl-value">"org.eclipse.virgo.kernel.authentication.Role"</span>/>
-
- <<span class="hl-tag">Host</span> <span class="hl-attribute">name</span>=<span class="hl-value">"localhost"</span> <span class="hl-attribute">appBase</span>=<span class="hl-value">"webapps"</span>
- <span class="hl-attribute">unpackWARs</span>=<span class="hl-value">"true"</span> <span class="hl-attribute">autoDeploy</span>=<span class="hl-value">"true"</span>
- <span class="hl-attribute">xmlValidation</span>=<span class="hl-value">"false"</span> <span class="hl-attribute">xmlNamespaceAware</span>=<span class="hl-value">"false"</span>>
-
- <<span class="hl-tag">Valve</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.apache.catalina.valves.AccessLogValve"</span> <span class="hl-attribute">directory</span>=<span class="hl-value">"serviceability/logs/access"</span>
- <span class="hl-attribute">prefix</span>=<span class="hl-value">"localhost_access_log."</span> <span class="hl-attribute">suffix</span>=<span class="hl-value">".txt"</span> <span class="hl-attribute">pattern</span>=<span class="hl-value">"common"</span> <span class="hl-attribute">resolveHosts</span>=<span class="hl-value">"false"</span>/>
-
- <<span class="hl-tag">Valve</span> <span class="hl-attribute">className</span>=<span class="hl-value">"org.eclipse.virgo.web.tomcat.ApplicationNameTrackingValve"</span>/>
- <<span class="hl-tag">/Host</span>>
- <<span class="hl-tag">/Engine</span>>
- <<span class="hl-tag">/Service</span>>
-<<span class="hl-tag">/Server</span>></pre><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="overview-tomcat-servlet-container"></a>Description of the Default Apache Tomcat Configuration</h3></div></div></div><p>
- The following bullets describe the main elements and attributes in the default <code class="literal">tomcat-server.xml</code> file; for details about updating this file to further configure the embedded Apache Tomcat server, see the <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/config/index.html" target="_top">Apache Tomcat Configuration Reference</a>.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip: Relative paths"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Relative paths</th></tr><tr><td align="left" valign="top"><p>If the configured path to a directory or file does not represent an absolute path, VWS typically interprets it as a path relative to the <code class="filename">$SERVER_HOME</code> directory.</p></td></tr></table></div><div class="itemizedlist"><ul type="disc"><li><p>The root element of the <code class="literal">tomcat-server.xml</code> file is <code class="literal"><Server></code>. The attributes of this element represent the characteristics of the entire embedded Tomcat servlet container. The <code class="literal">shutdown</code> attribute specifies the command string that the shutdown port number receives via a TCP/IP connection in order to shut down the servlet container. The <code class="literal">port</code> attribute specifies the TCP/IP port number that listens for a shutdown message.</p></li><li><p>The <code class="literal"><Listener></code> XML elements specify the list of lifecycle listeners that monitor and manage the embedded Tomcat servlet container. Each listener class is a Java Management Extensions (JMX) MBean that listens to a specific component of the servlet container and has been programmed to do something at certain lifecycle events of the component, such as before starting up, after stopping, and so on.</p><p> The first four <code class="literal"><Listener></code> elements configure standard Tomcat lifecycle listeners. The listener implemented by the <code class="literal">org.eclipse.virgo.web.tomcat.ServerLifecycleLoggingListener</code> class is specific to Virgo Web Server and manages server lifecycle logging.
- </p></li><li><p>The <code class="literal"><Service></code> XML element groups together one or more connectors and a single engine. Connectors define a transport mechanism, such as HTTP, that clients use to to send and receive messages to and from the associated service. There are many transports that a client can use, which is why a <code class="literal"><Service></code> element can have many <code class="literal"><Connector></code> elements. The engine then defines how these requests and responses that the connector receives and sends are in turn handled by the servlet container; you can define only a single <code class="literal"><Engine></code> element for any given <code class="literal"><Service></code> element.</p><p> The sample <code class="literal">tomcat-server.xml</code> file above includes three <code class="literal"><Connector></code> elements: one for the HTTP transport, one for the HTTPS transport, and one for the AJP transport. The file also includes a single <code class="literal"><Engine></code> element, as required.
- </p></li><li><p>The first connector listens for HTTP requests at the <code class="literal">8080</code> TCP/IP port. The connector, after accepting a connection from a client, waits for a maximum of 20000 milliseconds for a request URI; if it does not receive one from the client by then, the connector times out. If this connector receives a request from the client that requires the SSL transport, the servlet container automatically redirects the request to port <code class="literal">8443</code>. </p></li><li><p>The second connector is for HTTPS requests. The TCP/IP port that users specify as the secure connection port is <code class="literal">8443</code>. Be sure that you set the value of the <code class="literal">redirectPort</code> attribute of your non-SSL connectors to this value to ensure that users that require a secure connection are redirected to the secure port, even if they initially start at the non-secure port. The <code class="literal">SSLEnabled</code> attribute specifies that SSL is enabled for this connector. The <code class="literal">secure</code> attribute ensures that a call to <code class="literal">request.isSecure()</code> from the connecting client always returns <code class="literal">true</code>. The <code class="literal">scheme</code> attribute ensures that a call to <code class="literal">request.getScheme()</code> from the connecting client always returns <code class="literal">https</code> when clients use this connector. </p><p>The <code class="literal">maxThreads</code> attribute specifies that the servlet container creates a maximum of 150 request processing threads,
- which determines the maximum number of simultaneous requests that can be handled.
- The <code class="literal">clientAuth</code> attribute specifies that the servlet container does not require a certificate chain
- unless the client requests a resource protected by a security constraint that uses CLIENT-CERT authentication.
- </p><p>The <code class="literal">keystoreFile</code> attribute specifies the name of the file that contains the servlet container’s
- private key and public certificate used in the SSL handshake, encryption, and decryption.
- You use an alias and password to access this information.
- In the example, this file is <code class="literal">$SERVER_HOME/config/keystore</code>.
- The <code class="literal">keystorePass</code> attributes specify the password used to access the keystore.
- </p></li><li><p>The third AJP Connector element represents a Connector component that communicates with a web connector via the AJP protocol.
- </p></li><li><p>The engine has a logical name of <code class="literal">Catalina</code>;
- this is the name used in all log and error messages so you can easily identify problems.
- The value of the <code class="literal">defaultHost</code> attribute refers to the name of a <code class="literal"><Host></code>
- child element of <code class="literal"><Engine></code>;
- this host processes requests directed to host names on this servlet container.
- </p></li><li><p>The <code class="literal"><Realm></code> child element of <code class="literal"><Engine></code> represents a database of
- users, passwords, and mapped roles used for authentication in this service. Virgo Web Server uses an implementation of the Tomcat 6 Realm interface that authenticates users through the Java Authentication and Authorization Service (JAAS) framework which is provided as part of the standard J2SE API.</p><p>With the JAASRealm, you can combine practically any conceivable security realm with Tomcat's container managed authentication. For details, see <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/realm-howto.html" target="_top">Realm Configuration</a>.</p></li><li><p>The <code class="literal"><Host></code> child element represents a virtual host,
- which is an association of a network name for a server (such as <code class="literal">www.mycompany.com</code>) with the particular
- server on which Catalina is running.
- The servlet container unpacks Web applications into a directory hierarchy if they are deployed as WAR files.
- The <code class="literal">xmlValidation</code> attribute specifies that the servlet container does not validate XML files when parsing them,
- or in other words, it accepts invalid XML.
- The <code class="literal">xmlNamespaceAware</code> attribute specifies that the servlet container does not take namespaces into account
- when reading XML files.
- </p></li><li><p>Finally, the <code class="literal">org.apache.catalina.valves.AccessLogValve</code> valve creates log files
- in the same format as those created by standard web servers.
- The servlet container creates the log files in the <code class="literal">$SERVER_HOME/serviceability/logs/access</code> directory.
- The log files are prefixed with the string <code class="literal">localhost_access_log.</code>, have a suffix of <code class="literal">.txt</code>,
- use a standard format for identifying what should be logged, and do not include DNS lookups of the IP address of the remote host.
- </p></li></ul></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-tomcat-connectors"></a>Connector Configuration</h3></div></div></div><p> The Virgo Web Server supports the configuration of any connector supported by Apache Tomcat.
- See the default configuration above for syntax examples, and for further details of the configuration properties
- supported for various <code class="literal"><Connector></code> implementations,
- consult the official <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/config/http.html" target="_top">Tomcat HTTP Connector</a> documentation.
- </p><div class="tip" style="margin-left: 0.5in; margin-right: 0.5in;"><table border="0" summary="Tip: Configuring SSL for Tomcat"><tr><td rowspan="2" align="center" valign="top" width="25"><img alt="[Tip]" src="images/tip.gif"></td><th align="left">Configuring SSL for Tomcat</th></tr><tr><td align="left" valign="top"><p> The Virgo Web Server distribution includes a preconfigured <code class="filename">$SERVER_HOME/config/keystore</code>
- file that contains a single self-signed SSL Certificate.
- The password for this <code class="filename">keystore</code> file is <code class="literal">changeit</code>.
- This <code class="filename">keystore</code> file is intended for testing purposes only.
- For detailed instructions on how to configure Tomcat’s SSL support,
- consult the official <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/ssl-howto.html" target="_top">Tomcat SSL Configuration HOW-TO</a>.
- </p></td></tr></table></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-tomcat-clustering"></a>Cluster Configuration</h3></div></div></div><p>
- Virgo Web Server supports standard Apache Tomcat cluster configuration.
- By default, clustering of the embedded servlet container is disabled,
- and the default configuration does not include any clustering information.
- See <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/cluster-howto.html" target="_top">Tomcat Clustering/Session Replication HOW-TO</a>
- for detailed information about enabling and configuring clustering.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-tomcat-contexts"></a>Context Configuration</h3></div></div></div><p>
- Virgo Web Server supports standard Apache Tomcat web application context configuration.
- The <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/config/index.html" target="_top">Apache Tomcat Configuration Reference</a> has a section on
- <a class="ulink" href="http://tomcat.apache.org/tomcat-6.0-doc/config/context.html" target="_top">The Context Container</a> which describes the mechanism that
- is used in VWS for searching context configuration files and details the context configuration properties.
- </p><p>
- Context configuration files may be placed in the following locations,
- where <code class="literal">[enginename]</code> is the name of Tomcat's engine ('Catalina' by default) and <code class="literal">[hostname]</code> names
- a virtual host ('localhost' by default), both of which are configured in <code class="literal">tomcat-server.xml</code>:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <code class="literal">$SERVER_HOME/config/context.xml</code> provides the default context configuration file for all web applications.
- </p></li><li><p>
- The <code class="literal">$SERVER_HOME/config/[enginename]/[hostname]</code> directory may contain:
- </p><div class="itemizedlist"><ul type="circle"><li><p>
- The default context configuration for all web applications of a given virtual host in the file <code class="literal">context.xml.default</code>.
- </p></li><li><p>
- Individual web applications' context configuration files as described in the Apache Tomcat Configuration Reference.
- For example, the context for a web application with
- context path <code class="literal">foo</code> may be configured in <code class="literal">foo.xml</code>.
- </p></li></ul></div><p>
- </p></li></ul></div><p>
- </p><p>
- Note that the following context configuration features are not supported in Virgo Web Server:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- Custom class loaders.
- </p></li><li><p>
- Specifying the context path. This is specified using the <code class="literal">Web-ContextPath</code> header in the web application's
- <code class="literal">MANIFEST.MF</code> file.
- </p></li><li><p>
- Specifying the document base directory.
- </p></li></ul></div><p>
- </p><p>
- See <a class="link" href="#web-application-context-configuration" title="B.4 Web Application Context Configuration File Copying">Web Application Context Configuration File Copying</a> for a known issue related to
- providing a context configuration file inside a web application archive.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-provisioning-repository"></a>11.4 Configuring the Local Provisioning Repository</h2></div></div></div><p>
- You configure the locations that Virgo Web Server includes in its provisioning repository
- by editing the <code class="literal">org.eclipse.virgo.repository.properties</code> file in the <code class="literal">$SERVER_HOME/config</code> directory.
- </p><p>When you specify a property in the file, use the format <code class="literal">repository-name.property=value</code>, where:
- </p><div class="itemizedlist"><ul type="disc"><li><p><code class="literal">repository-name</code> refers to the name of the local repository.</p></li><li><p><code class="literal">property</code> refers to the name of a particular property.</p></li><li><p><code class="literal">value</code> refers to the value of the property.</p></li></ul></div><p>
- </p><p>For example, <code class="literal">ext.type=external</code> specifies that the <code class="literal">type</code> property of the repository
- with name <code class="literal">ext</code> is <code class="literal">external</code>.
- </p><p>
- The <code class="literal">chain</code> property specifies the order in which Virgo Web Server searches the individual repositories
- when it looks for dependencies.
- The <code class="literal">chain</code> property uses the names of the individual repositories as specified in the individual repository properties;
- for example, in the property <code class="literal">ext.type=external</code>, the name of the repository is <code class="literal">ext</code>.
- </p><p>
- The default repository configuration for a newly installed Virgo Web Server is as follows:
- </p><pre class="programlisting">ext.type=external
-ext.searchPattern=repository/ext/{artifact}
-
-usr.type=watched
-usr.watchDirectory=repository/usr
-
-chain=ext,usr</pre><p>
- </p><p>
- The default configuration shown above has two searchpaths corresponding to the two default sub-directories of the <code class="literal">$SERVER_HOME/repository</code> directory created when you first install VWS: <code class="literal">ext</code> and <code class="literal">usr</code>. Virgo Web Server searches each of these individual repositories when locating entries for inclusion in the repository. </p><p>
- The <code class="literal">chain</code> property shows the order in which Virgo Web Server searches the individual repositories: first <code class="literal">ext</code> and then <code class="literal">usr</code>.
- </p><p>
- The following table lists all the available properties that you can use to configure an individual repository.
- Individual repositories as well as the repository search chain are configured in the file
- <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.properties</code>.
- </p><div class="table"><a name="repository-options-table"></a><p class="title"><b>Table 11.5. Repository Properties</b></p><div class="table-contents"><table summary="Repository Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type</code></td><td style="border-bottom: 1.0pt solid ; ">
- <p>
- Specifies the type of path. You can set this property to one of the following three valid values:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <code class="literal">external</code>: Specifies that this path points to a number of directories that satisfy a given search pattern
- and are local to the current Virgo Web Server instance.
- Use the <code class="literal">searchPattern</code> property to specify the directory search pattern.
- </p></li><li><p>
- <code class="literal">watched</code>: Specifies that this path points to a single directory, local to the current Virgo Web Server instance.
- Virgo Web Server regularly scans watched repositories so it automatically picks up any changes to the artifacts in the directory at runtime.
- Use the <code class="literal">watchDirectory</code> property to specify the watched directory
- and the <code class="literal">watchInterval</code> property
- to specify how often VWS checks the directory.
- </p></li><li><p>
- <code class="literal">remote</code>: Specifies that the path points to a remotely-hosted repository,
- hosted by a remote instance of Virgo Web Server.
- Use the <code class="literal">uri</code> property to specify the full URI of the remote repository.
- You can also specify the optional <code class="literal">indexRefreshInterval</code> property.
- </p></li></ul></div><p>
- </p>
-
- <p>See <a class="link" href="#configuring-repository-watched-versus-external" title="Should I Configure a Watched or External Repository?">Watched or External Repository?</a>
- for additional information about when to configure watched or external repositories for your particular environment.
- </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the pattern that an external repository uses when deciding which local directories it should search
- when identifying artifacts. Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=external</code>.
- See <a class="link" href="#configuring-provisioning-repository-search-paths" title="Search Paths: Additional Information">Search Paths: Additional Information</a>
- for detailed information about specifying a search pattern.
- </p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchDirectory</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the single directory of a watched repository.
- You can specify either an absolute or relative pathname for the directory.
- If you specify a relative pathname, it is relative to the root of the VWS installation (<code class="literal">$SERVER_HOME</code>).
- Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=watched</code>.
- </p></td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchInterval</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the interval in seconds between checks of a watched directory by a watched repository.
- This property is optional, if it is not specified the default interval of 5 seconds is used.
- Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=watched</code>.
- </p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.uri</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the URI of the hosted repository to which a remote repository connects.
- The value of this property takes the following format:
- </p>
- <p><code class="literal">http://</code><span class="emphasis"><em><code class="literal">host</code></em></span><code class="literal">:</code><span class="emphasis"><em><code class="literal">port</code></em></span><code class="literal">/org.eclipse.virgo.apps.repository/</code><span class="emphasis"><em><code class="literal">remote-repository-name</code></em></span></p>
- <p>where:
- </p><div class="itemizedlist"><ul type="disc"><li><p>
- <span class="emphasis"><em><code class="literal">host</code></em></span> refers to the computer on which the remote VWS instance hosts the remote repository.
- </p></li><li><p>
- <span class="emphasis"><em><code class="literal">port</code></em></span> refers to Tomcat listen port of the remote VWS instance which hosts the remote repository.
- </p></li><li><p>
- <span class="emphasis"><em><code class="literal">remote-repository-name</code></em></span> refers to the name of the remote repository,
- as specified in the <code class="literal">hostedRepository.properties</code> file of the remote VWS instance.
- </p></li></ul></div><p>
- </p>
- <p>Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=remote</code>.
- </p> </td></tr><tr><td style="border-right: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.indexRefreshInterval</code></td><td style="">
- <p>
- Specifies the interval in seconds between checks by a remote repository that
- its local copy of the hosted repository index is up-to-date
- (a remote repository acts as a proxy for a hosted repository and thus it holds a local copy of the hosted repository’s index).
- This property is optional,
- if it is not specified the default interval of 5 seconds is used.
- </p>
- <p>Use this property together with <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type=remote</code>.</p> </td></tr></tbody></table></div></div><p><br class="table-break">
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-repository-watched-versus-external"></a>Should I Configure a Watched or External Repository?</h3></div></div></div><p>The main difference between a watched and an external repository is that Virgo Web Server regularly scans watched directories
- and automatically picks up any changed artifacts,
- while VWS scans external directories only at startup, and then only if there is no cached index available.
- This means that VWS always performs a scan of an external repository when you start the server
- with the <code class="literal">-clean</code> (as this deletes the index) and only scans during a normal startup if the index isn’t there because,
- for example, this is the first time you start the server.
- </p><p>There is a performance cost associated with using a watched repository due to VWS using resources
- to scan the directory at the configured interval.
- The cost is small if the watched repository contains just a few artifacts; however,
- the performance cost increases as the number of artifacts increases.
- </p><p> For this reason, we recommend that you put most of your dependencies in external repositories,
- even when in development mode.
- If you make any changes to the artifacts in the external repositories,
- remember to restart VWS with the <code class="literal">-clean</code> option so that the server picks up any changes.
- Use watched directories for artifacts that you are prototyping, actively updating, or when adding new dependencies
- so that VWS quickly and easily picks them up.
- To increase performance even during development, however, you can use an external repository for most of your dependencies,
- in particular the ones that are fairly static.
- </p><p>In production environments, where dependencies should not change,
- we recommend that you use <span class="emphasis"><em>only</em></span> external repositories.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-provisioning-repository-search-paths"></a>Search Paths: Additional Information</h3></div></div></div><p>
- The <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code> and
- <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchDirectory</code> properties specify search paths
- for external and watched repositories, respectively,
- that define a physical location that Virgo Web Server searches when looking for a library or bundle dependency.
- If a search path is relative, its location is relative to the root of the installation,
- in other words, the <code class="literal">$SERVER_HOME</code> directory.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="configuring-provisioning-repository-search-paths-wildcards"></a>Using Wildcards</h4></div></div></div><p>
- Search paths specified with the <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code> property
- provide support for wildcards.
- In the entries above, the path segments surrounded by curly braces,
- for example <code class="literal">{bundle}</code> and <code class="literal">{library}</code>,
- are wildcards entries for a directory with any name.
- Allowing wildcards to be named in this way is intended to improve the readability of search path configuration.
- </p><p>
- In addition to supporting the above-described form of wildcards, Virgo Web Server also supports Ant-style paths,
- that is <code class="literal">*</code> and <code class="literal">**</code> can be used to represent any directory and
- any series of directories, respectively.
- For example, <code class="literal">repository/usr/{bundle}</code> and <code class="literal">repository/usr/*</code>
- are equivalent.
- </p><p>
- A common usage of the <code class="literal">**</code> wildcard is to allow dependencies stored in a directory structure of varying depth,
- such as a local Maven repository, to be provisioned by the Virgo Web Server.
- </p></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-provisioning-repository-using-system-properties"></a>Using System Properties</h3></div></div></div><p>
- You can use system properties when specifying the values of the <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code>,
- <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchDirectory</code>,
- <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchInterval</code>,
- <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.uri</code>,
- and <span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.indexRefreshInterval</code>
- properties.
- You reference system properties as <code class="literal">${system.property.name}</code>;
- for example, a search path of <code class="literal">${user.home}/repository/bundles</code> references the
- <code class="literal">repository/bundles</code> directory in the user’s home directory.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-provisioning-repository-examples"></a>Example Repository Configurations</h3></div></div></div><p>
- The following examples provide sample configuration that could be used for some common use cases.
- </p><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="configuring-provisioning-repository-examples-ivy"></a>Add an Ivy cache repository</h4></div></div></div><p>The following example shows how to add an external repository whose location is actually an Ivy cache.</p><p><span class="emphasis"><em>Note that Ivy repositories can contain bundles which will conflict with the normal operation of Virgo, so care should
- be exercised when adding such an external repository.</em></span></p><pre class="programlisting">ext.type=external
-ext.searchPattern=repository/ext/{artifact}
-
-usr.type=watched
-usr.watchDirectory=repository/usr
-
-ivy-repo.type=external
-ivy-repo.searchPattern=${user.home}/.ivy2/cache/{org}/{name}/{version}/{bundle}.jar
-
-chain=ext,usr,ivy-repo</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="configuring-provisioning-repository-examples-maven"></a>Add a Maven local repository</h4></div></div></div><p>The following example shows how to add an external repository whose location is actually a Maven repository.</p><p><span class="emphasis"><em>Note that Maven repositories can contain bundles which will conflict with the normal operation of Virgo, so care should
- be exercised when adding such an external repository.</em></span></p><pre class="programlisting">ext.type=external
-ext.searchPattern=repository/ext/{artifact}
-
-usr.type=watched
-usr.watchDirectory=repository/usr
-
-maven-repo.type=external
-maven-repo.searchPattern=${user.home}/.m2/repository/**/{bundle}.jar
-
-chain=ext,usr,maven-repo</pre></div><div class="section" lang="en"><div class="titlepage"><div><div><h4 class="title"><a name="configuring-repository-examples-remote-watched"></a>Add remote and watched repositories</h4></div></div></div><p>The following example shows the default <code class="literal">org.eclipse.virgo.repository.properties</code> file
- from a freshly-installed VWS, but then updated to include new remote and watched repositories.
- Both of these repositories are part of the repository chain.
- </p><p>The remote repository is called <code class="literal">remote-repo</code>.
- The URI of the hosted repository from which <code class="literal">remote-repo</code> gets its artifacts is
- <code class="literal">http://my-host:8080/org.eclipse.virgo.apps.repository/my-hosted-repo</code>;
- this means that there is a VWS instance running on host <code class="literal">my-host</code>
- whose Tomcat server listens at the default port, <code class="literal">8080</code>,
- and this server instance hosts a repository called <code class="literal">my-hosted-repo</code>,
- configured in the <code class="literal">hostedRepository.properties</code> file of the remote server instance.
- The remote repository checks for changes in the hosted repository every 30 seconds.
- </p><p>The watched repository is called <code class="literal">watched-repo</code> and the directory that holds the artifacts
- is <code class="literal">repository/watched</code>,
- relative to the installation directory of the VWS instance.
- The server checks for changes in this watched repository every 5 seconds.
- </p><pre class="programlisting">ext.type=external
-ext.searchPattern=repository/ext/{artifact}
-
-usr.type=watched
-usr.watchDirectory=repository/usr
-
-remote-repo.type=remote
-remote-repo.uri=http://my-host:8080/org.eclipse.virgo.apps.repository/my-hosted-repo
-remote-repo.indexRefreshInterval=30
-
-watched-repo.type=watched
-watched-repo.watchedDirectory=repository/watched
-watched-repo.watchedInterval=5
-
-chain=ext,usr,remote-repo,watched-repo</pre></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-hosted-repo"></a>11.5 Configuring a Hosted Repository</h2></div></div></div><p>You configure a VWS instance to host a repository
- by editing the <code class="literal">$SERVER_HOME/config/org.eclipse.virgo.repository.hosted.properties</code> file;
- remote clients can then access the artifacts in this hosted repository and use them locally.
- </p><p>When you specify a property in the file, use the format <code class="literal">repository-name.property=value</code>, where:
- </p><div class="itemizedlist"><ul type="disc"><li><p><code class="literal">repository-name</code> refers to the name of the hosted repository.</p></li><li><p><code class="literal">property</code> refers to the name of a particular property.</p></li><li><p><code class="literal">value</code> refers to the value of the property.</p></li></ul></div><p>
- </p><p>For example, <code class="literal">my-hosted-repo.type=external</code> specifies that the <code class="literal">type</code> property
- of the <code class="literal">my-hosted-repository</code> repository is <code class="literal">external</code>.
- </p><p>The following table lists the properties that you can include in the <code class="literal">hostedRepository.properties</code> file.
- </p><div class="table"><a name="hosted-repository-properties-table"></a><p class="title"><b>Table 11.6. Hosted Repository Properties</b></p><div class="table-contents"><table summary="Hosted Repository Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.type</code></td><td style="border-bottom: 1.0pt solid ; ">Specifies the type of path of the hosted repository.
- All paths are local to the current VWS instance.
- You can set this property to one of the following valid values:
- <div class="itemizedlist"><ul type="disc"><li><p>
- <code class="literal">external</code>: Specifies that this path points to a number of directories that satisfy a given search pattern.
- Use the <code class="literal">searchPattern</code> property to specify the directory search pattern.
- </p></li><li><p>
- <code class="literal">watched</code>: Specifies that this path points to a single directory.
- Virgo Web Server regularly scans watched repositories so it automatically picks up any changes to the artifacts in the directory at runtime.
- Use the <code class="literal">watchDirectory</code> property to specify the actual watched directory and the <code class="literal">watchInterval</code> property
- to specify how often VWS checks the directory.
- </p></li></ul></div>
- <p>See <a class="link" href="#configuring-repository-watched-versus-external" title="Should I Configure a Watched or External Repository?">Watched or External Repository?</a>
- for additional information about when to configure watched or external repositories for your particular environment.
- </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.searchPattern</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the pattern that an external hosted repository uses when deciding which
- local directories it should search when identifying artifacts.
- Use this property when <code class="literal">repository-name.type=external</code>.
- See <a class="link" href="#configuring-provisioning-repository-search-paths" title="Search Paths: Additional Information">Search Paths: Additional Information</a>
- for detailed information about specifying a search pattern.
- </p> </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchDirectory</code></td><td style="border-bottom: 1.0pt solid ; "> <p>Specifies the single directory of a watched hosted repository.
- You can specify either an absolute or relative pathname for the directory.
- If you specify a relative pathname, it is relative to the root of the VWS installation (<code class="literal">$SERVER_HOME</code>).
- Use this property when <code class="literal">repository-name.type=watched</code>.
- </p></td></tr><tr><td style="border-right: 1.0pt solid ; "><span class="emphasis"><em><code class="literal">repository-name</code></em></span><code class="literal">.watchInterval</code></td><td style=""> <p>Specifies the interval in seconds between checks of a watched directory by a watched hosted repository.
- This property is optional. Use this property when <code class="literal">repository-name.type=watched</code>.
- </p> </td></tr></tbody></table></div></div><br class="table-break"><p>The following sample shows a <code class="literal">org.eclipse.virgo.repository.hosted.properties</code> file with a single external repository
- called <code class="literal">my-hosted-repo</code> with search pattern <code class="literal">$SERVER_HOME/repository/hosted/*</code>.
- </p><pre class="programlisting">my-hosted-repo.type=external
-my-hosted-repo.searchPattern=repository/hosted/*</pre><p>
- </p><p>See <a class="link" href="#configuring-repository-examples-remote-watched" title="Add remote and watched repositories">Example of watched and remote repositories</a>
- for details on how a local repository can remotely access the artifacts in this hosted repository.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="configuring-osgi-framework"></a>11.6 Configuring the OSGi Framework</h2></div></div></div><p>
- This section provides information about configuring the OSGi framework by updating the following files in the
- <code class="literal">$SERVER_HOME/lib</code> directory:
- </p><div class="table"><a name="configuring-osgi-framework-table"></a><p class="title"><b>Table 11.7. OSGi Framework Configuration Files </b></p><div class="table-contents"><table summary="OSGi Framework Configuration Files " style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property File</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">org.eclipse.virgo.kernel.launch.properties</code></td><td style="border-bottom: 1.0pt solid ; ">Configures <a class="link" href="#configuring-framework-properties" title="Configuring OSGi Framework Properties">OSGi framework properties</a>.</td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">java6-server.profile</code></td><td style="">Configures the <a class="link" href="#configuring-framework-profile" title="Configuring OSGi Framework Profile">OSGi framework profile</a>.</td></tr></tbody></table></div></div><br class="table-break"><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-framework-properties"></a>Configuring OSGi Framework Properties</h3></div></div></div><p>
- You specify the framework properties in the <code class="literal">$SERVER_HOME/lib/org.eclipse.virgo.kernel.launch.properties</code> file. The
- properties most relevant to users are described in the following table.
- </p><p>
- <span class="bold"><strong>WARNING:</strong></span> We strongly recommend that you update only the
- <code class="literal">org.eclipse.virgo.suppress.heap.dumps</code> property; updating the other properties could cause VWS
- to fail. These properties are documented for your information only.
- </p><div class="table"><a name="configuring-framework-properties-table"></a><p class="title"><b>Table 11.8. Framework Properties</b></p><div class="table-contents"><table summary="Framework Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">launcher.bundles</code></td><td style="border-bottom: 1.0pt solid ; ">
- This property lists the bundles that comprise the kernel using <code class="literal">file:</code> URIs.
- Bundles to be started are tagged with a trailing <code class="literal">@start</code>.
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">org.eclipse.virgo.suppress.heap.dumps</code></td><td style="border-bottom: 1.0pt solid ; ">
- Set to 'false' by default this property will prevent heap dumps being contributed to dumps taken during a
- First Failure Data Capture (FFDC) event. When the heap dumps are produced they will be located along with
- the other dump artifacts in the <code class="literal">$SERVER_HOME/serviceability/dump/</code> folder.
- </td></tr><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">osgi.console</code></td><td style="border-bottom: 1.0pt solid ; ">
- Specifies the port number which will be used by an Equinox console <span class="bold"><strong>attached to the kernel</strong></span>.
- The usual port number is 2402, to avoid clashing with any console attached to the user region.
- If specified, the Equinox console is enabled (without the Equinox Console Extension) during kernel start.
- If not specified, the Equinox console is not available for the kernel.
- </td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">osgi.java.profile</code></td><td style="">
- Specifies the profile to use using a <code class="literal">file:</code> URI with default value
- <code class="literal">file:lib/java6-server.profile</code>.
- </td></tr></tbody></table></div></div><br class="table-break"></div><div class="section" lang="en"><div class="titlepage"><div><div><h3 class="title"><a name="configuring-framework-profile"></a>Configuring OSGi Framework Profile</h3></div></div></div><p>
- You specify the framework profile in the <code class="literal">$SERVER_HOME/lib/java6-server.profile</code> file. The
- properties most relevant to users are described in the following table.
- </p><p>
- <span class="bold"><strong>WARNING:</strong></span> We advise you not to change the framework profile unless you are sure you know exactly what
- you are doing; updating the profile could cause VWS to fail.
- </p><div class="table"><a name="configuring-framework-profile-table"></a><p class="title"><b>Table 11.9. Framework Profile Properties</b></p><div class="table-contents"><table summary="Framework Profile Properties" style="border-collapse: collapse;border-top: 1.0pt solid ; border-bottom: 1.0pt solid ; border-left: 1.0pt solid ; border-right: 1.0pt solid ; "><colgroup><col><col></colgroup><thead><tr><th style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; ">Property</th><th style="border-bottom: 1.0pt solid ; ">Description</th></tr></thead><tbody><tr><td style="border-right: 1.0pt solid ; border-bottom: 1.0pt solid ; "><code class="literal">org.osgi.framework.bootdelegation</code></td><td style="border-bottom: 1.0pt solid ; ">
- <p>
- This property specifies the packages which are loaded by delegation to the application class loader.
- Bundles can load classes belonging to these packages without importing the packages.
- The <code class="literal">.*</code> wildcard matches any package suffix. <code class="literal">java.*</code> is always
- boot delegated and must not be specified in this property.
- </p>
- <p>
- A common reason for adding packages to this property is to run VWS under a performance profiler.
- </p>
- </td></tr><tr><td style="border-right: 1.0pt solid ; "><code class="literal">org.osgi.framework.system.packages</code></td><td style="">
- <p>
- This property specifies the packages which are exported by the system bundle.
- </p>
- <p>
- It is very occasionally necessary to extend the set, for example when configuring email logging appenders since the
- implementation of <code class="literal">javax.mail</code> is intimately related to the implementation of
- <code class="literal">javax.activation</code>.
- </p>
- <p>
- To make the corresponding classes available for loading, the relevant JAR file(s) should be placed in
- <code class="literal">$SERVER_HOME/lib</code> so that they will be added to the application class path.
- </p>
- </td></tr></tbody></table></div></div><br class="table-break"></div></div></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="log-codes"></a>Appendix A. Event log codes</h2></div></div></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="event-log-codes-format"></a>A.1 Format of the event log codes</h2></div></div></div><p>
-Event log codes issued by VWS have the general syntax
-<code class="literal"><XXnnnnL></code> where:
-</p><div class="informaltable"><table style="border: none;"><colgroup><col><col></colgroup><tbody><tr><td style=""><code class="literal">XX</code></td><td style="">
-is a two-letter code (upper-case) identifying the area of the VWS code which issued the log message;
-</td></tr><tr><td style=""><code class="literal">nnnn</code></td><td style="">
-is a four-digit message number; and
-</td></tr><tr><td style=""><code class="literal">L</code></td><td style="">
-is a single-letter (upper-case) code identifying the level of the message.
-</td></tr></tbody></table></div><p>
-</p><p>
-The two-letter codes are (this list is not complete):
-</p><div class="informaltable"><table style="border: none;"><colgroup><col><col></colgroup><tbody><tr><td style=""><code class="literal">AG</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.agent.dm</code></td></tr><tr><td style=""><code class="literal">DE</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.deployer.core</code></td></tr><tr><td style=""><code class="literal">HD</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.deployer.hot</code></td></tr><tr><td style=""><code class="literal">HR</code></td><td style=""><code class="literal">org.eclipse.virgo.apps.repository.core</code></td></tr><tr><td style=""><code class="literal">KE</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.core</code></td></tr><tr><td style=""><code class="literal">KS</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.services</code></td></tr><tr><td style=""><code class="literal">OF</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.osgi</code></td></tr><tr><td style=""><code class="literal">RP</code></td><td style=""><code class="literal">org.eclipse.virgo.repository</code></td></tr><tr><td style=""><code class="literal">TC</code></td><td style=""><code class="literal">org.eclipse.virgo.web.tomcat</code></td></tr><tr><td style=""><code class="literal">UR</code></td><td style=""><code class="literal">org.eclipse.virgo.kernel.userregion</code></td></tr><tr><td style=""><code class="literal">WE</code></td><td style=""><code class="literal">org.eclipse.virgo.web.core</code></td></tr></tbody></table></div><p>
-
-</p><p>
-The four-digit numbers identify the message text (with placeholders for inserted values). These are not listed here, but can be discovered by examining the files called
-<code class="literal">EventLogMessages.properties</code>, found in the relevant packages.
-</p><p>
-The single-digit level code is one of:
-</p><div class="informaltable"><table style="border: none;"><colgroup><col><col></colgroup><tbody><tr><td style=""><code class="literal">E</code></td><td style="">Error level: enabled if level is <code class="literal">ERROR</code>.</td></tr><tr><td style=""><code class="literal">W</code></td><td style="">Warning level: enabled if level is <code class="literal">WARNING</code> or above.</td></tr><tr><td style=""><code class="literal">I</code></td><td style="">Info level: enabled if level is <code class="literal">INFO</code> or above.</td></tr><tr><td style=""><code class="literal">D</code></td><td style="">Debug level: enabled if level is <code class="literal">DEBUG</code> or above.</td></tr><tr><td style=""><code class="literal">T</code></td><td style="">Trace level: always enabled.</td></tr></tbody></table></div><p>
-There are never two messages with the same prefix and number, but with different levels.
-</p></div></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="known-issues"></a>Appendix B. Known Issues</h2></div></div></div><p>This section describes known issues that you might run into, along with corresponding workarounds. </p><p>For the full list of known issues, see <a class="ulink" href="https://bugs.eclipse.org/bugs/buglist.cgi?query_format=advanced;order=Importance;classification=RT;product=Virgo" target="_top">Virgo bugs in Eclipse Bugzilla</a>. The bugs are organised by component as well as by release. You can also use bugzilla to enter a new issue if you cannot find an existing issue that describes the problem you are running into, but it's probably worth asking on the <a class="ulink" href="http://www.eclipse.org/forums/index.php?t=thread&frm_id=159" target="_top">Virgo community forum</a> first.</p><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-firewall-timeout"></a>B.1 Timeout During Startup Due to Firewall Settings</h2></div></div></div><p>
- The VWS will fail to start correctly if it is prevented from
- connecting to needed ports by the firewall. Typically this manifests
- as error <code class="literal">SPPM0003E</code> . Configuring the firewall to
- allow the VWS process to bind to the necessary ports will prevent
- this error from occurring.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="known-issues-perm-gen-sun-vm"></a>B.2 OutOfMemoryError: PermGen space running on Sun VM</h2></div></div></div><p>
- As a result of Sun Java bug
- <a class="ulink" href="http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4957990" target="_top">4957990</a>,
- the Virgo Web Server may consume more PermGen space than expected when running with the
- server HotSpot compiler. This problem may be resolved by configuring the
- <code class="literal">JAVA_OPTS</code> environment variable to specify an increased
- <code class="literal">MaxPermSize</code>, for example <code class="literal">-XX:MaxPermSize=128M</code>.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="alternate-serviceability-work"></a>B.3 Alternate <code class="literal">serviceability</code> and <code class="literal">work</code> Directories</h2></div></div></div><p>
- Although an alternate <code class="literal">config</code> directory may be specified on startup, there is no way to specify
- alternate <code class="literal">serviceability</code> or <code class="literal">work</code> directories. This is covered by
- <a class="ulink" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=307737" target="_top">bug 307737</a> which also describes a workaround.
- </p></div><div class="section" lang="en"><div class="titlepage"><div><div><h2 class="title" style="clear: both"><a name="web-application-context-configuration"></a>B.4 Web Application Context Configuration File Copying</h2></div></div></div><p>If a web application, packaged as an archive rather than a directory, includes context configuration in <code class="literal">META-INF/context.xml</code>,
- Virgo copies this file to <code class="literal">$SERVER_HOME/config/[enginename]/[hostname]/[contextpath].xml</code>.
- If the application is redeployed, the copy of the context configuration overrides any updated context configuration included in
- <code class="literal">META-INF/context.xml</code>. To use the updated context configuration, the user must delete the copy of the file before redeploying.
- This is covered by
- <a class="ulink" href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=328683" target="_top">bug 328683</a>.
- </p></div></div><div class="appendix" lang="en"><div class="titlepage"><div><div><h2 class="title"><a name="furtherreading"></a>Appendix C.
- Further Reading
- </h2></div></div></div><p>
- <a class="ulink" href="../../virgo-programmer-guide/html/index.html" target="_top">
- Virgo Web Server Programmer Guide
- </a>
- </p><p>
- <a class="ulink" href="http://static.springframework.org/spring/docs/2.5.x/reference/index.html" target="_top">
- Spring Framework Reference Guide
- </a>
- </p><p>
- <a class="ulink" href="http://static.springframework.org/osgi/docs/current/reference/html/" target="_top">
- Spring Dynamic Modules Reference Guide
- </a>
- </p><p>
- <a class="ulink" href="http://logback.qos.ch/manual" target="_top">
- The Logback Manual
- </a>
- </p></div></div><!--Begin LoopFuse code--><script src="http://loopfuse.net/webrecorder/js/listen.js" type="text/javascript"></script><script type="text/javascript">
- _lf_cid = "LF_48be82fa";
- _lf_remora();
- </script><!--End LoopFuse code--></body></html>
\ No newline at end of file