blob: 23db8f20cb8d9bbace321d6a9bcf76e16ba9dc73 [file] [log] [blame]
[[introduction]]
== Introduction
This Guide covers Virgo Snaps and assumes you are already
familiar with OSGi and Eclipse Virgo. See link:#further-reading[here].
[[introduction-concepts]]
=== Concepts
Using Virgo Snaps, or VS for short, you
can construct a web application from multiple OSGi bundles, each of
which serves up content for a distinct sub-portion of your application's
URL space. VS applications are arranged in a
parent/child structure, with each application having at most one
top-level parent, and zero or more children/grand children and so on.
Parents are referred to as the hosts, children as snaps.
image::images/snapsAndHosts.png[]
Here you see that any `HTTP` requests for '/app' will be dealt with by
the host bundle while '/app/orders' and '/app/billing' will be dealt
with by their respective snaps bundles. Each host/snap can use
completely different web technologies to deal with the requests,
Virgo Snaps places no restrictions on your choices. The
developer decides how to split the application up and how closely to
couple the host and various snaps. VS has been
designed to be as un-invasive as possible while still making it easy to
share information between the host and its snaps.
[[introduction-prereqs]]
=== Prerequisites
VS requires Virgo Server for Apache Tomcat and Java SE 6
or later to be installed. Java is available from http://www.java.com/
and elsewhere. Virgo Server for Apache Tomcat is available from
http://www.eclipse.org/virgo/download/[here].