Author: buildbot
Date: Fri Sep 19 10:30:56 2014
New Revision: 922817
Log:
Staging update by buildbot for sling
Added:
websites/staging/sling/trunk/content/documentation/development/slingstart.html
Modified:
websites/staging/sling/trunk/content/ (props changed)
Propchange: websites/staging/sling/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Fri Sep 19 10:30:56 2014
@@ -1 +1 @@
-1626030
+1626173
Added:
websites/staging/sling/trunk/content/documentation/development/slingstart.html
==============================================================================
---
websites/staging/sling/trunk/content/documentation/development/slingstart.html
(added)
+++
websites/staging/sling/trunk/content/documentation/development/slingstart.html
Fri Sep 19 10:30:56 2014
@@ -0,0 +1,182 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
+<html>
+<!--
+
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+
+ http://www.apache.org/licenses/LICENSE- 2.0
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+ <head>
+ <title>Apache Sling - Apache SlingStart</title>
+ <link rel="icon" href="/res/favicon.ico">
+ <link rel="stylesheet" href="/res/site.css" type="text/css" media="all">
+ <link rel="stylesheet" href="/res/codehilite.css" type="text/css"
media="all">
+ <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
+ </head>
+ <body>
+ <div class="title">
+ <div class="logo">
+ <a href="http://sling.apache.org/">
+ <img border="0" alt="Apache Sling" src="/res/logo.png">
+ </a>
+ </div>
+ <div class="header">
+ <a href="http://www.apache.org/">
+ <img border="0" alt="Apache" src="/res/apache.png">
+ </a>
+ </div>
+ </div>
+
+ <div class="menu">
+ <p><strong><a href="/documentation.html">Documentation</a></strong> <br
/>
+<a href="/documentation/getting-started.html">Getting Started</a> <br />
+<a href="/documentation/the-sling-engine.html">The Sling Engine</a> <br />
+<a href="/documentation/development.html">Development</a> <br />
+<a href="/documentation/bundles.html">Bundles</a> <br />
+<a href="/documentation/tutorials-how-tos.html">Tutorials & How-Tos</a>
<br />
+<a href="/documentation/configuration.html">Configuration</a> <br />
+<a href="http://s.apache.org/sling.wiki">Wiki</a> <br />
+<a href="http://s.apache.org/sling.faq">FAQ</a> <br />
+<a href="/sitemap.html">Site Map</a></p>
+<p><strong>API Docs</strong> <br />
+<a href="/apidocs/sling6/index.html">Sling 6</a> <br />
+<a href="/apidocs/sling5/index.html">Sling 5</a> </p>
+<p><strong>Project info</strong> <br />
+<a href="/downloads.cgi">Downloads</a> <br />
+<a href="http://www.apache.org/licenses/">License</a> <br />
+<a href="/contributing.html">Contributing</a> <br />
+<a href="/news.html">News</a> <br />
+<a href="/links.html">Links</a> <br />
+<a href="/project-information.html">Project Information</a> <br />
+<a href="https://issues.apache.org/jira/browse/SLING">Issue Tracker</a> <br />
+<a href="http://ci.apache.org/builders/sling-trunk">Build Server</a> <br />
+<a href="/project-information/security.html">Security</a> </p>
+<p><strong>Source</strong> <br />
+<a href="http://svn.apache.org/viewvc/sling/trunk">Subversion</a> <br />
+<a href="git://git.apache.org/sling.git">Git</a> <br />
+<a href="https://github.com/apache/sling">Github Mirror</a> </p>
+<p><strong>Sponsorship</strong> <br />
+<a href="http://www.apache.org/foundation/thanks.html">Thanks</a> <br />
+<a href="http://www.apache.org/foundation/sponsorship.html">Become a
Sponsor</a> <br />
+<a href="http://www.apache.org/foundation/buy_stuff.html">Buy Stuff</a> </p>
+<!-- no valid ads for now, we'll reactivate this when needed
+<iframe
+ src="http://www.apache.org/ads/button.html"
+ style="border-width:0; float: left" frameborder="0"
+ scrolling="no"
+ width="135"
+ height="135">
+</iframe>
+-->
+ </div>
+
+ <div class="main">
+ <div class="breadcrump" style="font-size: 80%;">
+ <a href="/">Home</a> » <a
href="/documentation.html">Documentation</a> » <a
href="/documentation/development.html">Development</a>
+ </div>
+
+
+
+ <h1>Apache SlingStart</h1>
+ <p>SlingStart defines a model to provision an OSGi based application. It
can also be used to define a partial application aka feature or subsystem.#</p>
+<p>The model is used by tooling, e.g. the slingstart-maven-plugin to build an
executable application or web application.</p>
+<h2 id="the-model">The Model</h2>
+<p>The model is a simple API consisting of data objects:</p>
+<ul>
+<li>Subsystem : this is the central object holding all the definitions. A
subsystem consists of properties and run modes.</li>
+<li>Subsystem properties: These properties can be used as variables for
version definitions of artifacts.</li>
+<li>Run Mode : A run mode contains artifacts, configurations, and settings.
The artifacts are divided into start levels.</li>
+<li>Start Level: A start level contains a set of artifacts (usually
bundles)</li>
+<li>Artifact: A deployable artifact </li>
+<li>Configuration: A OSGi configuration</li>
+<li>Settings : Framework settings for the OSGi framework</li>
+</ul>
+<h3 id="run-modes">Run Modes</h3>
+<p>The default run mode is always active, and all information provided there
will be used/started.
+Custom run modes can be used to configure for different situations. Depending
on which run mode is used to start the instance a different set of artifacts or
configurations is used.
+Each run mode is associated with a set of run mode names. Only if all listed
run modes are active, the definition is used.</p>
+<p>The model also supports special run modes, which are have special meaning.
By default, these pre defined special run modes are available:</p>
+<ul>
+<li>:base This run mode contains the dependency to Sling's launchpad artifact
to be used. This mode is required if Apache Sling Launchpad should be used to
start the application.</li>
+<li>:boot The artifacts that are installed before the framework is started.
They're used to bootstrap the system.</li>
+<li>:standalone Artifacts for the standalone application - in contrast to a
war.</li>
+<li>:webapp Artifacts for the webapp only</li>
+</ul>
+<p>Other special run modes can be defined by using a single run mode name
which starts with a colon, like :test. These run modes can be used by special
tooling.</p>
+<h3 id="start-levels">Start Levels</h3>
+<p>Each run mode has start levels. These start levels correspond to OSGi start
levels. The default start level has the level 0 and should be used for all non
bundle artifacts. If a non bundle artifact is configured with a start level,
it's still provisioned, however the start level information might not have any
meaning.</p>
+<h3 id="artifacts">Artifacts</h3>
+<p>An artifact is defined by maven coordinates, that is group id, artifact id
and version. Type and classifier can be specified, too. Type defaults to "jar".
Although the maven way of referring to an artifact is used, the model is in no
way tied to Maven and can be used with any tooling.</p>
+<h3 id="configurations">Configurations</h3>
+<p>A configuration has a pid, or a factory pid and an alias and of course the
properties of the configuration object.
+Special configurations can be marked with a leading ":" of the pid. Special
configurations are not added to the OSGi config admin. There are some
predefined special configurations</p>
+<ul>
+<li>:web.xml This configuration must be part of the :webapp runmode and
contains a complete web.xml for the web application</li>
+<li>:bootstrap This configuration must be part of either the :boot, :base,
:standalone, or :webapp run mode and define the contents for bootstrap command
file executed by Launchpad.</li>
+</ul>
+<h3 id="settings">Settings</h3>
+<p>Settings are key value pairs that are added to the framework properties.
For now, only settings for the run modes :boot, :base, :standalone, or :webapp
are supported.</p>
+<h2 id="xml-configuration">XML Configuration</h2>
+<p>The XML format to define a subsystem is not as strict as the model itself,
e.g. it allows to directly specify artifacts and configurations on the
subsystem level. These are added to the default run mode.
+This makes the XML more compact as usually subsystems do not use specific
start levels.</p>
+<p>A subsystem can be configured through an XML file:</p>
+<div class="codehilite"><pre><span class="cp"><?xml
version="1.0"?></span>
+<span class="nt"><subsystem></span>
+ <span class="nt"><properties></span>
+ eventadmin.version=1.0.0
+ metatype.version=1.2.0
+ <span class="nt"></properties></span>
+ <span class="nt"><runMode/></span>
+
+ <span class="nt"><artifact</span> <span class="na">groupId=</span><span
class="s">"org.apache.sling"</span> <span
class="na">artifactId=</span><span class="s">"eventadmin"</span>
<span class="na">version=</span><span class="s">"</span><span
class="cp">${</span><span class="n">eventadmin</span><span
class="o">.</span><span class="n">version</span><span class="cp">}</span><span
class="s">"/</span><span class="nt">></span>
+ <span class="nt"><artifact</span> <span class="na">groupId=</span><span
class="s">"org.apache.sling"</span> <span
class="na">artifactId=</span><span class="s">"metatype"</span> <span
class="na">version=</span><span class="s">"</span><span
class="cp">${</span><span class="n">metatype</span><span
class="o">.</span><span class="n">version</span><span class="cp">}</span><span
class="s">"/</span><span class="nt">></span>
+ <span class="nt"><artifact</span> <span class="na">groupId=</span><span
class="s">"org.apache.sling"</span> <span
class="na">artifactId=</span><span class="s">"coordinator"</span>
<span class="na">version=</span><span class="s">"3.0.0"/</span><span
class="nt">></span>
+
+ <span class="nt"><configuration</span> <span
class="na">pid=</span><span
class="s">"org.apache.sling.eventadmin"</span><span
class="nt">></span>
+ useQueue=true
+ ignoreTopics=["myTopic"]
+ <span class="nt"></configuration></span>
+<span class="nt"></subsystem></span>
+</pre></div>
+
+
+<p>A configuration for a run mode looks like this:</p>
+<div class="codehilite"><pre><span class="nt"><subsystem></span>
+ <span class="nt"><runMode</span> <span class="na">modes=</span><span
class="s">"mymode"</span><span class="nt">></span>
+
+ <span class="nt"><artifact</span> <span
class="na">groupId=</span><span class="s">"org.apache.sling"</span>
<span class="na">artifactId=</span><span class="s">"metatype"</span>
<span class="na">version=</span><span class="s">"</span><span
class="cp">${</span><span class="n">metatype</span><span
class="o">.</span><span class="n">version</span><span class="cp">}</span><span
class="s">"/</span><span class="nt">></span>
+ <span class="nt"><artifact</span> <span
class="na">groupId=</span><span class="s">"org.apache.sling"</span>
<span class="na">artifactId=</span><span
class="s">"coordinator"</span> <span class="na">version=</span><span
class="s">"3.0.0"/</span><span class="nt">></span>
+
+ <span class="nt"><configuration</span> <span
class="na">pid=</span><span
class="s">"org.apache.sling.eventadmin"</span><span
class="nt">></span>
+ useQueue=true
+ ignoreTopics=["myTopic"]
+ <span class="nt"></configuration></span>
+
+ <span class="nt"><startLevel</span> <span
class="na">level=</span><span class="s">"5"</span><span
class="nt">></span>
+ <span class="nt"><artifact</span> <span
class="na">groupId=</span><span class="s">"org.apache.sling"</span>
<span class="na">artifactId=</span><span
class="s">"eventadmin"</span> <span class="na">version=</span><span
class="s">"</span><span class="cp">${</span><span
class="n">eventadmin</span><span class="o">.</span><span
class="n">version</span><span class="cp">}</span><span
class="s">"/</span><span class="nt">></span>
+ <span class="nt"></startLevel></span>
+ <span class="nt"></runMode></span>
+<span class="nt"></subsystem></span>
+</pre></div>
+ <div class="timestamp" style="margin-top: 30px; font-size: 80%;
text-align: right;">
+ Rev. 1626173 by cziegeler on Fri, 19 Sep 2014 10:30:46 +0000
+ </div>
+ <div class="trademarkFooter">
+ Apache Sling, Sling, Apache, the Apache feather logo, and the Apache
Sling project
+ logo are trademarks of The Apache Software Foundation. All other marks
mentioned
+ may be trademarks or registered trademarks of their respective owners.
+ </div>
+ </div>
+ </body>
+</html>