http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/developers-guide/karaf-maven-plugin-features-validate-descriptor.conf
----------------------------------------------------------------------
diff --git 
a/manual/src/main/webapp/developers-guide/karaf-maven-plugin-features-validate-descriptor.conf
 
b/manual/src/main/webapp/developers-guide/karaf-maven-plugin-features-validate-descriptor.conf
deleted file mode 100644
index e08c7bc..0000000
--- 
a/manual/src/main/webapp/developers-guide/karaf-maven-plugin-features-validate-descriptor.conf
+++ /dev/null
@@ -1,50 +0,0 @@
-h2. Goal {{karaf:features-validate-descriptor}}
-
-The {{karaf:features-validate-descriptor}} goal validates a features XML 
descriptor by checking if all the required imports for the bundles defined in 
the features can be matched to a provided export.
-
-By default, the plugin tries to add the Karaf core features (standard and 
enterprise) in the repositories set.
-It means that it's not required to explicitly define the Karaf features 
descriptor in the repository section of your features descriptor.
-
-h3. Example
-The example below validates the features defined in the 
{{target/features.xml}} by checking all the imports and exports.  It reads the 
definition for the packages that are exported by the system bundle from the 
{{src/main/resources/config.properties}} file.
-{pygmentize:xml}
-<project>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.karaf.tooling</groupId>
-        <artifactId>karaf-maven-plugin</artifactId>
-        <version>${project.version}</version>
-          <executions>
-            <execution>
-              <id>validate</id>
-              <phase>process-resources</phase>
-              <goals>
-                <goal>features-validate-descriptor</goal>
-              </goals>
-              <configuration>
-                <file>target/features.xml</file>
-                <karafConfig>src/main/resources/config.properties</karafConfig>
-              </configuration>
-            </execution>
-          </executions>
-          <dependencies>
-            <dependency>
-              <groupId>org.slf4j</groupId>
-              <artifactId>slf4j-simple</artifactId>
-              <version>1.4.3</version>
-               </dependency>
-          </dependencies>
-        </plugin>
-    </plugins>
-  </build>
-</project>
-{pygmentize}
-
-h3. Parameters
-|| Name || Type || Description ||
-| {{file}} | {{File}} | The features XML descriptor file to validate. \\ 
Default value: {{${project.build.directory}/classes/features.xml}} |
-| {{karafConfig}} | {{String}} | The Karaf {{config.properties}} file to use 
during the validation process \\ Default value: {{config.properties}} |
-| {{jreVersion}} | {{String}} | The JRE version that is used during the 
validation process \\ Default value: {{jre-1.5}) |
-| {{karafVersion}} | {{String}} | The target Karaf version used to get the 
Karaf core features (standard and enterprise) \\ Default is the version of the 
plugin |
-| {{repositories}} | {{String[]}} | Additional features XML descriptors that 
will be used during the validation process |
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/developers-guide/karaf-maven-plugin-instance-create-archive.conf
----------------------------------------------------------------------
diff --git 
a/manual/src/main/webapp/developers-guide/karaf-maven-plugin-instance-create-archive.conf
 
b/manual/src/main/webapp/developers-guide/karaf-maven-plugin-instance-create-archive.conf
deleted file mode 100644
index 4b3a8a3..0000000
--- 
a/manual/src/main/webapp/developers-guide/karaf-maven-plugin-instance-create-archive.conf
+++ /dev/null
@@ -1,43 +0,0 @@
-h2. Goal {{karaf:archive}}
-
-Normally this is run as part of the karaf-assembly packaging.
-
-The {{karaf:archive}} goal packages a Karaf instance archive from a given 
assembled instance.
-
-Both tar.gz and zip formats are generated in the destination folder.
-
-h3. Example
-The example below create archives for the given Karaf instance:
-{pygmentize:xml}
-<project>
-  <build>
-    <plugins>
-      <plugin>
-        <groupId>org.apache.karaf.tooling</groupId>
-        <artifactId>karaf-maven-plugin</artifactId>
-        <version>${project.version}</version>
-          <executions>
-            <execution>
-              <id>generate</id>
-              <phase>package</phase>
-              <goals>
-                <goal>archive</goal>
-              </goals>
-              <configuration>
-                <destDir>${project.build.directory}</destDir>
-                
<targetServerDirectory>${project.build.directory}/assembly</targetServerDirectory>
-                <targetFile>${project.file}</targetFile>
-              </configuration>
-            </execution>
-          </executions>
-        </plugin>
-    </plugins>
-  </build>
-</project>
-{pygmentize}
-
-h3. Parameters
-|| Name || Type || Description ||
-| {{destDir}} | {{File}} | The target directory of the project. \\ Default 
value: ${project.build.directory} |
-| {{targetServerDirectory}} | {{File}} | The location of the server 
repository. \\ Default value: ${project.build.directory}/assembly |
-| {{targetFile}} | {{File}} | The target file to set as the project's 
artifact. \\ Default value: ${project.file} |

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/developers-guide/karaf-maven-plugin.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/developers-guide/karaf-maven-plugin.conf 
b/manual/src/main/webapp/developers-guide/karaf-maven-plugin.conf
deleted file mode 100644
index c00516b..0000000
--- a/manual/src/main/webapp/developers-guide/karaf-maven-plugin.conf
+++ /dev/null
@@ -1,70 +0,0 @@
-h1. Using the karaf-maven-plugin
-
-The Karaf Maven plugin allows you:
-
-    * to work with Karaf features: validate a features descriptor, add 
features bundle into a repository, create a KAR archive from a features 
descriptor, etc.
-    * to create Karaf commands help: it generates help from Karaf commands
-    * to modify Karaf instances and create distributions
-
-h2. Packagings
-The most generally useful features of the karaf-maven-plugin are exposed as 
packagings.  To use the packagings the pom or an ancestor must configure the 
karaf-maven-plugin with extensions:
-
-{code}
-    <build>
-        <pluginManagement>
-            <plugins>
-                <plugin>
-                    <groupId>org.apache.karaf.tooling</groupId>
-                    <artifactId>karaf-maven-plugin</artifactId>
-                    <version>${project.version}</version>
-                    <extensions>true</extensions>
-                </plugin>
-            </plugins>
-        </pluginManagement>
-        <plugins>
-            <plugin>
-                <groupId>org.apache.karaf.tooling</groupId>
-                <artifactId>karaf-maven-plugin</artifactId>
-            </plugin>
-        </plugins>
-    </build>
-{code}
-
-Then specify the packaging in your project as usual, e.g.
-
-{code}
-    <packaging>kar</packaging>
-{code}
-
-|| Packaging || Description ||
-| feature | The feature packaging generates a features.xml descriptor using 
the 
{{[karaf:features-generate-descriptor|karaf-maven-plugin-features-generate-descriptor]}}
 |
-| kar | The kar packaging generates a features.xml descriptor using the 
{{[karaf:features-generate-descriptor|karaf-maven-plugin-features-generate-descriptor]}}
 and then packages a kar using the 
{{[karaf:features-create-kar|karaf-maven-plugin-features-create-kar]}} |
-| {{[karaf-assembly|custom-distribution]}} | Assembles a Karaf server based on 
the features descriptors and kar files listed as Maven dependencies. |
-
-h2. Commands goals
-
-The {{karaf-maven-plugin}} is able to generate documentation for Karaf 
commands:
-
-|| Goal || Description ||
-| {{[karaf:commands-generate-help|karaf-maven-plugin-commands-generate-help]}} 
| Generates help for Karaf commands. |
-
-h2. Features goals
-
-Normally you should use the features or kar packagings instead of these 
individual goals.
-The {{karaf-maven-plugin}} provides several goals to help you create and 
validate features XML descriptors as well as leverage your features to create a 
custom Karaf distribution.
-
-|| Goal || Description ||
-| 
{{[karaf:features-generate-descriptor|karaf-maven-plugin-features-generate-descriptor]}}
 | Generates a features XML descriptor for a set of bundles.  Used in feature 
and kar packagings. |
-| 
{{[karaf:features-validate-descriptor|karaf-maven-plugin-features-validate-descriptor]}}
 | Validate a features XML descriptor by checking if all the required imports 
can be matched to exports |
-| {{[karaf:kar|karaf-maven-plugin-features-create-kar]}} | Assemble a KAR 
archive from a features XML descriptor. Used in kar packaging.|
-
-
-h2. Instances and distributions goals
-
-Normally you should use the karaf-assembly packaging instead of this 
individual goal.
-The {{karaf-maven-plugin}} helps you to build custom Karaf distributions or 
archives existing Karaf instances:
-
-|| Goal || Description ||
-| {{karaf:assembly}} | Assemble a server from Maven feature-repo and kar 
dependencies. Used in karaf-assembly packaging.  See 
{{[karaf-assembly|custom-distribution]}}. |
-| {{[karaf:archive|karaf-maven-plugin-instance-create-archive]}} | Package a 
server archive from an assembled server. . Used in karaf-assembly packaging.  
See also {{[karaf-assembly|custom-distribution]}}.|
-| 
{{[karaf:features-add-to-repository|karaf-maven-plugin-features-add-to-repository]}}
 | (old style manual assemblies) Copies all the bundles required for a given 
set of features into a directory \\ (e.g. for creating your own Karaf-based 
distribution) |

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/developers-guide/scripting.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/developers-guide/scripting.conf 
b/manual/src/main/webapp/developers-guide/scripting.conf
deleted file mode 100644
index 9fce440..0000000
--- a/manual/src/main/webapp/developers-guide/scripting.conf
+++ /dev/null
@@ -1,305 +0,0 @@
-h1. Scripting
-
-In the console section of the users guide, we introduced the scripting support.
-
-h2. Assignation
-
-You already know the first usage of scripting: execution of command.
-
-{code}
-karaf@root()> echo hello world
-hello world
-{code}
-
-You can also assign value to session variables:
-
-{code}
-karaf@root()> msg = "hello world"
-hello world
-{code}
-
-Once you have assigned a value to a variable, you can display this value using 
the "resolved" variable name:
-
-{code}
-karaf@root()> echo $msg
-hello world
-{code}
-
-The () are execution quotes (like the backquotes when you use bash on Unix).
-
-{code}
-karaf@root()> ($.context bundle 1) location
-mvn:org.apache.karaf.jaas/org.apache.karaf.jaas.modules/3.0.1-SNAPSHOT
-{code}
-
-The {{$.context}} access the context variables in the current session.
-We access to the {{bundle}} variable (an array containing all bundles), and we 
want to display the bundle location for
-the bundle at the index 1 in the bundle array.
-
-h2. Expressions
-
-The shell has a built-in expression parser.  Expressions must be enclosed with 
the {{%(...)}} syntax.
-
-Examples:
-{code}
-karaf@root()> %(1+2)
-3
-karaf@root()> a = 0
-0
-karaf@root()> %(a+=1)
-1
-karaf@root()> %(a+=1)
-2
-karaf@root()> b=1
-1
-karaf@root()> %(SQRT(a^2 + b^2))
-1.7320508
-{code}
-
-h3. Mathematical Operators
-|| Operator || Description ||
-| + | Additive operator |
-| - | Subtraction operator |
-| * | Multiplication operator |
-| / | Division operator |
-| % | Remainder operator (Modulo) |
-| ^ | Power operator |
-
-h3. Boolean Operators
-|| Operator || Description ||
-| =    | Equals |
-| ==   | Equals |
-| !=   | Not equals |
-| <>   | Not equals |
-| <    | Less than |
-| <=   | Less than or equal to |
-| >    | Greater than |
-| >=   | Greater than or equal to |
-| &&   | Boolean and |
-| \|\| | Boolean or |
-
-h3. Supported Functions
-|| Function || Description ||
-| NOT(_expression_)             | Boolean negation, 1 (means true) if the 
expression is not zero |
-| IF(_condition_,_value_if_true_,_value_if_false_) | Returns one value if the 
condition evaluates to true or the other if it evaluates to false |
-| RANDOM()                      | Produces a random number between 0 and 1 |
-| MIN(_e1_,_e2_)                | Returns the smaller of both expressions |
-| MAX(_e1_,_e2_)                | Returns the bigger of both expressions |
-| ABS(_expression_)             | Returns the absolute (non-negative) value of 
the expression |
-| ROUND(_expression_,precision) | Rounds a value to a certain number of 
digits, uses the current rounding mode |
-| FLOOR(_expression_)           | Rounds the value down to the nearest integer 
|
-| CEILING(_expression_)         | Rounds the value up to the nearest integer |
-| LOG(_expression_)             | Returns the natural logarithm (base e) of an 
expression |
-| SQRT(_expression_)            | Returns the square root of an expression |
-| SIN(_expression_)             | Returns the trigonometric sine of an angle 
(in degrees) |
-| COS(_expression_)             | Returns the trigonometric cosine of an angle 
(in degrees) |
-| TAN(_expression_)             | Returns the trigonometric tangens of an 
angle (in degrees) |
-| SINH(_expression_)            | Returns the hyperbolic sine of a value |
-| COSH(_expression_)            | Returns the hyperbolic cosine of a value |
-| TANH(_expression_)            | Returns the hyperbolic tangens of a value |
-| RAD(_expression_)             | Converts an angle measured in degrees to an 
approximately equivalent angle measured in radians |
-| DEG(_expression_)             | Converts an angle measured in radians to an 
approximately equivalent angle measured in degrees |
-
-Functions names are case insensitive.
-
-h3. Supported Constants
-
-|| Constant || Description ||
-| PI        | The value of _PI_, exact to 100 digits |
-| TRUE      | The value one |
-| FALSE     | The value zero |
-
-h2. List, maps, pipes and closures
-
-Using [], you can define array variable:
-
-{code}
-karaf@root()> list = [1 2 a b]
-1
-2
-a
-b
-
-{code}
-
-You can also create a map if you put variables assignation in the array:
-
-{code}
-karaf@root()> map = [Jan=1 Feb=2 Mar=3]
-Jan                 1
-Feb                 2
-Mar                 3
-{code}
-
-Using the | character, you can pipe output from a command as an input to 
another one.
-
-For instance, you can access to the bundles context variables and send it as 
input to the grep command:
-
-{code}
-karaf@root()> ($.context bundles) | grep -i felix
-    0|Active     |    0|org.apache.felix.framework (4.2.1)
-   21|Active     |   11|org.apache.felix.fileinstall (3.2.6)
-   43|Active     |   10|org.apache.felix.configadmin (1.6.0)
-   51|Active     |   30|org.apache.felix.gogo.runtime (0.10.0)
-{code}
-
-You can assign name to script execution. It's what we use for alias:
-
-{code}
-karaf@root()> echo2 = { echo xxx $args yyy }
-echo xxx $args yyy
-karaf@root()> echo2 hello world
-xxx hello world yyy
-{code}
-
-h2. Startup
-
-The {{etc/shell.init.script}} file is executed at startup in each shell 
session, allowing the definition of additional
-variables or aliases or even complex functions. It's like the bashrc or 
profile on Unix.
-
-h2. Constants and variables
-
-Apache Karaf console provides a set of implicit constants and variables that 
you can use in your script.
-
-* {{$.context}} to access a bundle context
-* {{$.variables}} to access the list of defined variables
-* {{$.commands}} to access the list of defined commands
-
-The variables starting with a # that are defined as Function (such as 
closures) will be executed automatically:
-
-{code}
-karaf@root> \#inc = { var = "${var}i" ; $var }
-var = "${var}i" ; $var
-karaf@root> echo $inc
-i
-karaf@root> echo $inc
-ii
-karaf@root>
-{code}
-
-h2. Built-in variables and commands
-
-Apache Karaf console provides built-in variable very useful for scripting:
-
-* {{$args}} retrieves the list of script parameters, given to the closure 
being executed
-* {{$1 .. $999}} retrieves the nth argument of the closure
-* {{$it}} (same as {{$1}}) is used in a loop to access the current iterator 
value
-
-Apache Karaf console provides commands for scripting:
-
-* {{shell:if}}
-* {{shell:new}}
-* {{shell:each}}
-* ...
-
-See the [full list of {{shell}} commands|/commands/commands].
-
-h2. Leveraging existing Java capabilities (via reflection)
-
-Apache Karaf console supports loading and execution of Java classes.
-
-The {{$karaf.lastException}} implicit variable contains the latest Exception 
thrown.
-
-
-{code}
-karaf@root()> ($.context bundle) loadClass foo
-Error executing command: foo not found by org.apache.karaf.shell.console [17]
-karaf@root()> $karaf.lastException printStackTrace
-java.lang.ClassNotFoundException: foo not found by 
org.apache.karaf.shell.console [17]
-       at 
org.apache.felix.framework.BundleWiringImpl.findClassOrResourceByDelegation(BundleWiringImpl.java:1460)
-       at 
org.apache.felix.framework.BundleWiringImpl.access$400(BundleWiringImpl.java:72)
-       at 
org.apache.felix.framework.BundleWiringImpl$BundleClassLoader.loadClass(BundleWiringImpl.java:1843)
-       at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
-       at org.apache.felix.framework.Felix.loadBundleClass(Felix.java:1723)
-       at org.apache.felix.framework.BundleImpl.loadClass(BundleImpl.java:926)
-       at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
-       at 
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
-       at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
-       at java.lang.reflect.Method.invoke(Method.java:597)
-       at org.apache.felix.gogo.runtime.Reflective.invoke(Reflective.java:137)
-       at org.apache.felix.gogo.runtime.Closure.executeMethod(Closure.java:527)
-       at 
org.apache.felix.gogo.runtime.Closure.executeStatement(Closure.java:403)
-       at org.apache.felix.gogo.runtime.Pipe.run(Pipe.java:108)
-       at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:183)
-       at org.apache.felix.gogo.runtime.Closure.execute(Closure.java:120)
-       at 
org.apache.felix.gogo.runtime.CommandSessionImpl.execute(CommandSessionImpl.java:89)
-       at org.apache.karaf.shell.console.jline.Console.run(Console.java:166)
-       at java.lang.Thread.run(Thread.java:680)
-{code}
-
-It's possible to create objects to create commands "on the fly":
-
-{code}
-karaf@root()> addcommand system (($.context bundle) loadClass java.lang.System)
-karaf@root()> system:getproperty karaf.name
-root
-{code}
-
-It means that you can create object using the {{new}} directive, and call 
methods on the objects:
-
-{code}
-karaf@root> map = (new java.util.HashMap)
-karaf@root> $map put 0 0
-karaf@root> $map
-0                   0
-{code}
-
-h2. Examples
-
-The following examples show some scripts defined in {{etc/shell.init.script}}.
-
-The first example show a script to add a value into a configuration list:
-
-{code}
-#
-# Add a value at the end of a property in the given OSGi configuration
-#
-# For example:
-# > config-add-to-list org.ops4j.pax.url.mvn 
org.ops4j.pax.url.mvn.repositories http://scala-tools.org/repo-releases
-#
-config-add-to-list = {
-  config:edit $1 ;
-  a = (config:property-list | grep --color never $2 | tac) ;
-  b = (echo $a | grep --color never "\b$3\b" | tac) ;
-  if { ($b trim) isEmpty } {
-    if { $a isEmpty } {
-      config:property-set $2 $3
-    } {
-      config:property-append $2 ", $3"
-    } ;
-    config:update
-  } {
-    config:cancel
-  }
-}
-{code}
-
-This second example shows a script to wait for an OSGi service, up to a given 
timeout, and combine this script in
-other scripts:
-
-{code}
-#
-# Wait for the given OSGi service to be available
-#
-wait-for-service-timeout = {
-  _filter = $.context createFilter $1 ;
-  _tracker = shell:new org.osgi.util.tracker.ServiceTracker $.context $_filter 
null ;
-  $_tracker open ;
-  _service = $_tracker waitForService $2 ;
-  $_tracker close
-}
-#
-# Wait for the given OSGi service to be available with a timeout of 10 seconds
-#
-wait-for-service = {
-  wait-for-service-timeout $1 10000
-}
-#
-# Wait for the given command to be available with a timeout of 10 seconds
-# For example:
-# > wait-for-command dev watch
-#
-wait-for-command = {
-  wait-for-service 
"(&(objectClass=org.apache.felix.service.command.Function)(osgi.command.scope=$1)(osgi.command.function=$2))"
-}
-{code}

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/developers-guide/security-framework.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/developers-guide/security-framework.conf 
b/manual/src/main/webapp/developers-guide/security-framework.conf
deleted file mode 100644
index d5da72b..0000000
--- a/manual/src/main/webapp/developers-guide/security-framework.conf
+++ /dev/null
@@ -1,695 +0,0 @@
-
-
-h1. Security framework
-
-Karaf supports 
[JAAS|http://download.oracle.com/javase/6/docs/technotes/guides/security/jaas/JAASRefGuide.html]
 with some enhancements to allow JAAS to work nicely in an OSGi environment.  
This framework also features an OSGi keystore manager with the ability to 
deploy new keystores or truststores at runtime.  
-
-h2. Overview
-
-This feature allows runtime deployment of JAAS based configuration for use in 
various parts of the application. This
-includes the remote console login, which uses the {{karaf}} realm, but which 
is configured with a dummy login module
-by default. These realms can also be used by the NMR, JBI components or the 
JMX server to authenticate users logging in
-or sending messages into the bus.
-
-In addition to JAAS realms, you can also deploy keystores and truststores to 
secure the remote shell console, setting up HTTPS connectors or using 
certificates for WS-Security.
-
-A very simple XML schema for spring has been defined, allowing the deployment 
of a new realm or a new keystore very easily.
-
-h2. Schema
-
-To override or deploy a new realm, you can use the following XSD which is 
supported by a Spring namespace handler and can thus be defined in a Spring xml 
configuration file.
-
-Following is the XML Schema to use when defining Karaf realms:
-{snippet:url=../jaas/blueprint/config/src/main/resources/org/apache/karaf/jaas/blueprint/config/karaf-jaas-1.1.0.xsd|lang=xml|pygmentize=true}
-{snippet}
-
-You can find the schema at the following 
[location|http://karaf.apache.org/xmlns/jaas/v1.1.0].
-
-Here are two examples using this schema:
-{pygmentize:xml}
-<?xml version="1.0" encoding="UTF-8"?> 
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
-           xmlns:jaas="http://karaf.apache.org/xmlns/jaas/v1.0.0";
-           
xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0";>
-
-    <!-- Bean to allow the $[karaf.base] property to be correctly resolved -->
-    <ext:property-placeholder placeholder-prefix="$[" placeholder-suffix="]"/>
-
-    <jaas:config name="myrealm">
-        <jaas:module 
className="org.apache.karaf.jaas.modules.properties.PropertiesLoginModule" 
-                     flags="required">
-            users = $[karaf.base]/etc/users.properties
-        </jaas:module>
-    </jaas:config>
-
-</blueprint>
-{pygmentize}
-
-{pygmentize:xml}
-<jaas:keystore xmlns:jaas="http://karaf.apache.org/xmlns/jaas/v1.1.0";
-               name="ks"
-               rank="1"
-               path="classpath:privatestore.jks"
-               keystorePassword="keyStorePassword"
-               keyPasswords="myalias=myAliasPassword">
-</jaas:keystore>
-{pygmentize}
-
-The {{id}} attribute is the blueprint id of the bean, but it will be used by 
default as the name of the realm if no
-{{name}} attribute is specified. Additional attributes on the {{config}} 
elements are a {{rank}}, which is an integer.
-When the LoginContext looks for a realm for authenticating a given user, the 
realms registered in the OSGi registry are
-matched against the required name. If more than one realm is found, the one 
with the highest rank will be used, thus
-allowing the override of some realms with new values.  The last attribute is 
{{publish}} which can be set to false to
-not publish the realm in the OSGi registry, thereby disabling the use of this 
realm.
-
-Each realm can contain one or more module definitions. Each module identifies 
a LoginModule and the {{className}}
-attribute must be set to the class name of the login module to use. Note that 
this login module must be available from
-the bundle classloader, so either it has to be defined in the bundle itself, 
or the needed package needs to be correctly
-imported. The {{flags}} attribute can take one of four values that are 
explained on the [JAAS 
documentation|http://svn.apache.org/repos/asf/karaf/tags/karaf-2.0.0/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/ProxyLoginModule.java].
-The content of the {{module}} element is parsed as a properties file and will 
be used to further configure the login module.
-
-Deploying such a code will lead to a 
[JaasRealm|http://svn.apache.org/repos/asf/karaf/tags/karaf-2.0.0/jaas/config/src/main/java/org/apache/karaf/jaas/config/JaasRealm.java]
 object in the OSGi registry, which will then be used when using the JAAS login 
module.
-
-h3. Configuration override and use of the {{rank}} attribute
-
-The {{rank}} attribute on the {{config}} element is tied to the ranking of the 
underlying OSGi service.  When the JAAS
-framework performs an authentication, it will use the realm name to find a 
matching JAAS configuration.  If multiple
-configurations are used, the one with the highest {{rank}} attribute will be 
used.
-So if you want to override the default security configuration in Karaf (which 
is used by the ssh shell, web console and
-JMX layer), you need to deploy a JAAS configuration with the name 
{{name="karaf"}} and {{rank="1"}}.
-
-{pygmentize:xml}
-<?xml version="1.0" encoding="UTF-8"?>
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
-           xmlns:jaas="http://karaf.apache.org/xmlns/jaas/v1.1.0";
-           
xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0";>
-
-    <!-- Bean to allow the $[karaf.base] property to be correctly resolved -->
-    <ext:property-placeholder placeholder-prefix="$[" placeholder-suffix="]"/>
-
-    <jaas:config name="karaf" rank="1">
-        <jaas:module 
className="org.apache.karaf.jaas.modules.properties.PropertiesLoginModule"
-                     flags="required">
-            users = $[karaf.base]/etc/users.properties
-            ...
-        </jaas:module>
-    </jaas:config>
-
-</blueprint>
-{pygmentize}
-
-
-h2. Architecture
-
-Due to constraints in the JAAS specification, one class has to be available 
for all bundles.
-This class is called 
[ProxyLoginModule|http://svn.apache.org/repos/asf/karaf/tags/karaf-2.0.0/jaas/boot/src/main/java/org/apache/karaf/jaas/boot/ProxyLoginModule.java]
 and is a LoginModule that acts as a proxy for an OSGi defines LoginModule.  If 
you plan to integrate this feature into another OSGi runtime, this class must 
be made available from the system classloader and the related package be part 
of the boot delegation classpath (or be deployed as a fragment attached to the 
system bundle).
-
-The xml schema defined above allows the use of a simple xml (leveraging spring 
xml extensibility) to configure and
-register a JAAS configuration for a given realm.  This configuration will be 
made available into the OSGi registry as a
-[JaasRealm|http://svn.apache.org/repos/asf/karaf/tags/karaf-2.0.0/jaas/config/src/main/java/org/apache/karaf/jaas/config/JaasRealm.java]
 and the OSGi specific Configuration will look for such services.
-Then the proxy login module will be able to use the information provided by 
the realm to actually load the class from
-the bundle containing the real login module.
-
-Karaf itself provides a set of login modules ready to use, depending of the 
authentication backend that you need.
-
-In addition of the login modules, Karaf also support backend engine. The 
backend engine is coupled to a login module and
-allows you to manipulate users and roles directly from Karaf (adding a new 
user, delete an existing user, etc).
-The backend engine is constructed by a backend engine factory, registered as 
an OSGi service.
-Some login modules (for security reason for instance) don't provide backend 
engine.
-
-h2. Available realm and login modules
-
-Karaf comes with a default realm named "karaf" using login modules.
-
-Karaf also provides a set of login modules and backend engines to handle 
authentication needs for your environment.
-
-h3. PropertiesLoginModule
-
-| LoginModule           | 
org.apache.karaf.jaas.modules.properties.PropertiesLoginModule            |
-| BackendEngineFactory  | 
org.apache.karaf.jaas.modules.properties.PropertiesBackendEngineFactory   |
-
-This login module is the one configured by default. It uses a properties text 
file to load the users, passwords and roles.
-
-|| Name             || Description |
-| {{users}}          | location of the properties file |
-
-This file uses the [properties file 
format|http://download.oracle.com/javase/6/docs/api/java/util/Properties.html#load(java.io.Reader)].
-The format of the properties is as follows, with each line defining a user, 
its password and associated roles:
-{code}
-user=password[,role][,role]...
-{code}
-
-{pygmentize:xml}
-<jaas:config name="karaf">
-    <jaas:module 
className="org.apache.karaf.jaas.modules.properties.PropertiesLoginModule" 
-                 flags="required">
-        users = ${karaf.etc}/users.properties
-    </jaas:module>
-</jaas:config>
-{pygmentize}
-
-The PropertiesLoginModule provides a backend engine allowing:
-* add a new user
-* delete an existing user
-* list the users, groups, and roles
-* add a new role to an user
-* delete a role from an user
-* add an user into a group
-* remove an user from a group
-* add a role to a group
-* delete a role from a group
-
-To enable the backend engine, you have to register the corresponding OSGi 
service. For instance, the following blueprint
-shows how to register the PropertiesLoginModule and the corresponding backend 
engine:
-
-{pygmentize:xml}
-<?xml version="1.0" encoding="UTF-8"?>
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
-           xmlns:jaas="http://karaf.apache.org/xmlns/jaas/v1.1.0";
-           
xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0";>
-
-    <jaas:config name="karaf" rank="-1">
-        <jaas:module 
className="org.apache.karaf.jaas.modules.properties.PropertiesLoginModule"
-                     flags="required">
-            users = ${karaf.etc}/users.properties
-        </jaas:module>
-    </jaas:config>
-
-    <service interface="org.apache.karaf.jaas.modules.BackingEngineFactory">
-        <bean 
class="org.apache.karaf.jaas.modules.properties.PropertiesBackingEngineFactory"/>
-    </service>
-
-</blueprint>
-{pygmentize}
-
-h3. OsgiConfigLoginModule
-
-| LoginModule           | 
org.apache.karaf.jaas.modules.osgi.OsgiConfigLoginModule  |
-| BackendEngineFactory  | N/A                                                  
     |
-
-The OsgiConfigLoginModule uses the OSGi ConfigurationAdmin service to provide 
the users, passwords and roles.
-
-|| Name           || Description |
-| {{pid}}          | the PID of the configuration containing user definitions |
-
-The format of the configuration is the same than for the 
{{PropertiesLoginModule}} with properties prefixed with {{user.}}.
-
-For instance, in the Karaf etc folder, we create a file 
{{org.apache.karaf.authentication.cfg}} containing:
-
-{code}
-user.karaf=karaf,admin
-user.user=password,role
-{code}
-
-The following blueprint shows how to use this configuration:
-
-{pygmentize:xml}
-<?xml version="1.0" encoding="UTF-8"?>
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
-           xmlns:jaas="http://karaf.apache.org/xmlns/jaas/v1.1.0";>
-
-    <jaas:config name="karaf" rank="-1">
-        <jaas:module 
className="org.apache.karaf.jaas.modules.osgi.OsgiConfigLoginModule"
-                     flags="required">
-            pid = org.apache.karaf.authentication
-        </jaas:module>
-    </jaas:config>
-
-</blueprint>
-{pygmentize}
-
-NB: the OsgiConfigLoginModule doesn't provide a backend engine.
-
-h3. JDBCLoginModule
-
-| LoginModule           | org.apache.karaf.jaas.modules.jdbc.JDBCLoginModule   
         |
-| BackendEngineFactory  | 
org.apache.karaf.jaas.modules.jdbc.JDBCBackendEngineFactory   |
-
-The JDBCLoginModule uses a database to load the users, passwords and roles 
from a provided data source _(normal or XA)_.
-The data source and the queries for password and role retrieval are 
configurable using the following parameters.
-
-|| Name                   || Description ||
-| {{datasource}}           | The datasource as on OSGi ldap filter or as JDNI 
name|
-| {{query.password}}       | The SQL query that retries the password of the 
user |
-| {{query.role}}           | The SQL query that retries the roles of the user |
-
-+Passing a data source as an OSGi ldap filter+
-
-To use an OSGi ldap filter, the prefix osgi: needs to be provided, as shown 
below:
-
-{pygmentize:xml}
-<jaas:config name="karaf">
-    <jaas:module 
className="org.apache.karaf.jaas.modules.jdbc.JDBCLoginModule" 
-                 flags="required">
-        datasource = 
osgi:javax.sql.DataSource/(osgi.jndi.service.name=jdbc/karafdb)
-        query.password = SELECT PASSWORD FROM USERS WHERE USERNAME=?
-        query.role = SELECT ROLE FROM ROLES WHERE USERNAME=?
-    </jaas:module>
-</jaas:config>
-{pygmentize}
-
-+Passing a data source as a JNDI name+
-
-To use an JNDI name, the prefix jndi: needs to be provided. The example below 
assumes the use of Aries jndi to expose
-services via JNDI.
-
-{pygmentize:xml}
-<jaas:config name="karaf">
-    <jaas:module 
className="org.apache.karaf.jaas.modules.jdbc.JDBCLoginModule" 
-                 flags="required">
-        datasource = 
jndi:aries:services/javax.sql.DataSource/(osgi.jndi.service.name=jdbc/karafdb)
-        query.password = SELECT PASSWORD FROM USERS WHERE USERNAME=?
-        query.role = SELECT ROLE FROM ROLES WHERE USERNAME=?
-    </jaas:module>
-</jaas:config>
-{pygmentize}
-
-The JDBCLoginModule provides a backend engine allowing:
-* add a new user
-* delete an user
-* list users, roles
-* add a new role to an user
-* remove a role from an user
-
-NB: the groups are not fully supported by the JDBCBackingEngine.
-
-The following blueprint shows how to define the JDBCLoginModule with the 
corresponding backend engine:
-
-{pygmentize:xml}
-<?xml version="1.0" encoding="UTF-8"?>
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
-           xmlns:jaas="http://karaf.apache.org/xmlns/jaas/v1.1.0";>
-
-    <jaas:config name="karaf">
-        <jaas:module 
className="org.apache.karaf.jaas.modules.jdbc.JDBCLoginModule"
-                 flags="required">
-            datasource = 
jndi:aries:services/javax.sql.DataSource/(osgi.jndi.service.name=jdbc/karafdb)
-            query.password = SELECT PASSWORD FROM USERS WHERE USERNAME=?
-            query.role = SELECT ROLE FROM ROLES WHERE USERNAME=?
-            insert.user = INSERT INTO USERS(USERNAME,PASSWORD) VALUES(?,?)
-            insert.role = INSERT INTO ROLES(ROLE,USERNAME) VALUES(?,?)
-            delete.user = DELETE FROM USERS WHERE USERNAME=?
-        </jaas:module>
-    </jaas:config>
-
-    <service interface="org.apache.karaf.jaas.modules.BackingEngineFactory">
-        <bean 
class="org.apache.karaf.jaas.modules.jdbc.JDBCBackingEngineFactory"/>
-    </service>
-
-</blueprint>
-{pygmentize}
-
-h3. LDAPLoginModule
-
-| LoginModule           | org.apache.karaf.jaas.modules.ldap.LDAPLoginModule   
         |
-| BackendEngineFactory  | N/A                                                  
         |
-
-The LDAPLoginModule uses LDAP to load the users and roles and bind the users 
on the LDAP to check passwords.
-
-The LDAPLoginModule supports the following parameters:
-
-|| Name                      || Description ||
-| {{connection.url}}          | The LDAP connection URL, e.g. ldap://hostname |
-| {{connection.username}}     | Admin username to connect to the LDAP. This 
parameter is optional, if it's not provided, the LDAP connection will be 
anonymous. |
-| {{connection.password}}     | Admin password to connect to the LDAP. Only 
used if the {{connection.username}} is specified. |
-| {{user.base.dn}}            | The LDAP base DN used to looking for user, 
e.g. ou=user,dc=apache,dc=org |
-| {{user.filter}}             | The LDAP filter used to looking for user, e.g. 
(uid=%u) where %u will be replaced by the username. |
-| {{user.search.subtree}}     | If "true", the user lookup will be recursive 
(SUBTREE). If "false", the user lookup will be performed only at the first 
level (ONELEVEL). |
-| {{role.base.dn}}            | The LDAP base DN used to looking for roles, 
e.g. ou=role,dc=apache,dc=org |
-| {{role.filter}}             | The LDAP filter used to looking for user's 
role, e.g. (member:=uid=%u) |
-| {{role.name.attribute}}     | The LDAP role attribute containing the role 
string used by Karaf, e.g. cn |
-| {{role.search.subtree}}     | If "true", the role lookup will be recursive 
(SUBTREE). If "false", the role lookup will be performed only at the first 
level (ONELEVEL). |
-| {{role.mapping}}            | Define a mapping between roles defined in the 
LDAP directory for the user, and corresponding roles in Karaf. The format is 
ldapRole1=karafRole1,karafRole2;ldapRole2=karafRole3,karafRole4. |
-| {{authentication}}          | Define the authentication backend used on the 
LDAP server. The default is simple. |
-| {{initial.context.factory}} | Define the initial context factory used to 
connect to the LDAP server. The default is com.sun.jndi.ldap.LdapCtxFactory |
-| {{ssl}}                     | If "true" or if the protocol on the 
{{connection.url}} is {{ldaps}}, an SSL connection will be used |
-| {{ssl.provider}}            | The provider name to use for SSL |
-| {{ssl.protocol}}            | The protocol name to use for SSL (SSL for 
example)|
-| {{ssl.algorithm}}           | The algorithm to use for the KeyManagerFactory 
and TrustManagerFactory  (PKIX for example) |
-| {{ssl.keystore}}            | The key store name to use for SSL.  The key 
store must be deployed using a {{jaas:keystore}} configuration.  |
-| {{ssl.keyalias}}            | The key alias to use for SSL |
-| {{ssl.truststore}}          | The trust store name to use for SSL.  The 
trust store must be deployed using a {{jaas:keystore}} configuration.  |
-
-A example of LDAPLoginModule usage follows:
-
-{pygmentize:xml}
-<jaas:config name="karaf">
-  <jaas:module className="org.apache.karaf.jaas.modules.ldap.LDAPLoginModule" 
flags="required">
-        connection.url = ldap://localhost:389
-        user.base.dn = ou=user,dc=apache,dc=org
-        user.filter = (cn=%u)
-        user.search.subtree = true
-        role.base.dn = ou=group,dc=apache,dc=org
-        role.filter = (member:=uid=%u)
-        role.name.attribute = cn
-        role.search.subtree = true
-        authentication = simple
-  </jaas:module>
-</jaas:config>
-{pygmentize}
-
-If you wish to use an SSL connection, the following configuration can be used 
as an example:
-{pygmentize:xml}
-<ext:property-placeholder />
-
-<jaas:config name="karaf" rank="1">
-    <jaas:module 
className="org.apache.karaf.jaas.modules.ldap.LDAPLoginModule" flags="required">
-        connection.url = ldaps://localhost:10636
-        user.base.dn = ou=users,ou=system
-        user.filter = (uid=%u)
-        user.search.subtree = true
-        role.base.dn = ou=groups,ou=system
-        role.filter = (uniqueMember=uid=%u)
-        role.name.attribute = cn
-        role.search.subtree = true
-        authentication = simple
-        ssl.protocol=SSL
-        ssl.truststore=ks
-        ssl.algorithm=PKIX
-    </jaas:module>
-</jaas:config>
-
-<jaas:keystore name="ks"
-               path="file:///${karaf.home}/etc/trusted.ks"
-               keystorePassword="secret" />
-{pygmentize}
-
-The LDAPLoginModule supports the following patterns that you can use in the 
filter (user and role filters):
-
-* {{%u}} is replaced by the user
-* {{%dn}} is replaced by the user DN
-* {{%fqdn}} is replaced by the user full qualified DN ({{userDNNamespace}}).
-
-For instance, the following configuration will work properly with 
ActiveDirectory (adding the ActiveDirectory to the
-default {{karaf}} realm):
-
-{code}
-<jaas:config name="karaf" rank="2">
-  <jaas:module className="org.apache.karaf.jaas.modules.ldap.LDAPLoginModule" 
flags="required">
-    initialContextFactory=com.sun.jndi.ldap.LdapCtxFactory
-    connection.username=admin
-    connection.password=xxxxxxx
-    connection.protocol=
-    connection.url=ldap://activedirectory_host:389
-    user.base.dn=ou=Users,ou=there,DC=local
-    user.filter=(sAMAccountName=%u)
-    user.search.subtree=true
-    role.base.dn=ou=Groups,ou=there,DC=local
-    role.name.attribute=cn
-    role.filter=(member=%fqdn)
-    role.search.subtree=true
-    authentication=simple
-  </jaas:module>
-</jaas:config>
-{code}
-
-NB: the LDAPLoginModule doesn't provide backend engine. It means that the 
administration of the users and roles should be
-performed directly on the LDAP backend.
-
-h3. SyncopeLoginModule
-
-| LoginModule           | 
org.apache.karaf.jaas.modules.syncope.SyncopeLoginModule            |
-| BackendEngineFactory  | 
org.apache.karaf.jaas.modules.syncope.SyncopeBackendEngineFactory   |
-
-The Syncope login module uses the Syncope REST API to authenticate users and 
retrieve the roles.
-
-The Syncope login module just requires one parameter:
-
-|| Name                      || Description ||
-| {{address}}                | Location of the Syncope REST API |
-| {{admin.user}}             | Admin username to administrate Syncope (only 
required by the backend engine) |
-| {{admin.password}}         | Admin password to administrate Syncope (only 
required by the backend engine) |
-
-The following snippet shows how to use Syncope with the karaf realm:
-
-{code}
-<jaas:config name="karaf" rank="2">
-  <jaas:module 
className="org.apache.karaf.jaas.modules.syncope.SyncopeLoginModule" 
flags="required">
-    address=http://localhost:9080/syncope/cxf
-    admin.user=admin
-    admin.password=password
-  </jaas:module>
-</jaas:config>
-{code}
-
-SyncopeLoginModule comes with a backend engine allowing to manipulate users 
and roles. You have to register the
-SyncopeBackendEngineFactory service.
-
-For security reason, the SyncopeLoginModule backend engine allows only to list 
users and roles. You can't create or delete
-users and roles directly from Karaf. To do it, you have to use the Syncope web 
console.
-
-For instance, the following blueprint descriptor enables the 
SyncopeLoginModule and the backend engine factory:
-
-{code}
-<?xml version="1.0" encoding="UTF-8"?>
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
-           xmlns:jaas="http://karaf.apache.org/xmlns/jaas/v1.1.0";
-           
xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0";>
-
-    <jaas:config name="karaf" rank="2">
-        <jaas:module 
className="org.apache.karaf.jaas.modules.syncope.SyncopeLoginModule"
-                     flags="required">
-           address=http://localhost:9080/syncope/cxf
-           admin.user=admin
-           admin.password=password
-        </jaas:module>
-    </jaas:config>
-
-    <service interface="org.apache.karaf.jaas.modules.BackingEngineFactory">
-        <bean 
class="org.apache.karaf.jaas.modules.syncope.SyncopeBackingEngineFactory"/>
-    </service>
-
-</blueprint>
-{code}
-
-h2. Encryption service
-
-The 
[EncryptionService|http://svn.apache.org/repos/asf/karaf/trunk/jaas/modules/src/main/java/org/apache/karaf/jaas/modules/EncryptionService.java]
 is a service registered in the OSGi registry providing means to encrypt and 
check encrypted passwords.  This service acts as a factory for 
[Encryption|http://svn.apache.org/repos/asf/karaf/trunk/jaas/modules/src/main/java/org/apache/karaf/jaas/modules/Encryption.java]
 objects actually performing the encryption.
-
-This service is used in all Karaf login modules to support encrypted passwords.
-
-h3. Configuring properties
-
-Each login module supports the following additional set of properties:
-|| Name                   || Description ||
-| {{encryption.name}}      | Name of the encryption service registered in OSGi 
(cf. paragraph [below|#Jasypt]) |
-| {{encryption.enabled}}   | Boolean used to turn on encryption |
-| {{encryption.prefix}}    | Prefix for encrypted passwords |
-| {{encryption.suffix}}    | Suffix for encrypted passwords |
-| {{encryption.algorithm}} | Name of an algorithm to be used for hashing, like 
"MD5" or "SHA-1" |
-| {{encryption.encoding}}  | Encrypted passwords encoding (can be 
{{hexadecimal}} or {{base64}}) |
-| {{role.policy}}          | A policy for identifying roles (can be {{prefix}} 
or {{group}}) [below|#Role discovery policies]) |
-| {{role.discriminator}}   | A discriminator value to be used by the role 
policy |
-
-A simple example follows:
-{pygmentize:xml}
-<jaas:config name="karaf">
-    <jaas:module 
className="org.apache.karaf.jaas.modules.properties.PropertiesLoginModule" 
-                 flags="required">
-        users = $[karaf.base]/etc/users.properties
-        encryption.enabled = true
-        encryption.algorithm = MD5
-        encryption.encoding = hexadecimal
-    </jaas:module>
-</jaas:config>
-{pygmentize}
-
-h3. Prefix and suffix
-
-The login modules have the ability to support both encrypted and plain 
passwords at the same time.  In some cases, some login modules may be able to 
encrypt the passwords on the fly and save them back in an encrypted form.
-
-h3. Jasypt
-
-Karaf default installation comes with a simple encryption service which 
usually fullfill simple needs. However, in some
-cases, you may want to install the [Jasypt|http://www.jasypt.org/] library 
which provides stronger encryption algorithms
-and more control over them.
-
-To install the Jasypt library, the easiest way is to install the available 
feature:
-{code}
-karaf@root> features:install jasypt-encryption
-{code}
-
-It will download and install the required bundles and also register an 
{{EncryptionService}} for Jasypt in the OSGi registry.
-
-When configuring a login module to use Jasypt, you need to specify the 
{{encryption.name}} property and set it to a value of {{jasypt}} to make sure 
the Jasypt encryption service will be used. 
-
-In addition to the standard properties above, the Jasypt service provides the 
following parameters:
-
-|| Name                     || Description ||
-| {{providerName}}           | Name of the {{java.security.Provider}} name to 
use for obtaining the digest algorithm |
-| {{providerClassName}}      | Class name for the security provider to be used 
for obtaining the digest algorithm |
-| {{iterations}}             | Number of times the hash function will be 
applied recursively |
-| {{saltSizeBytes}}          | Size of the salt to be used to compute the 
digest |
-| {{saltGeneratorClassName}} | Class name of the salt generator |
-
-A typical realm definition using Jasypt encryption service would look like:
-{pygmentize:xml}
-<jaas:config name="karaf">
-    <jaas:module 
className="org.apache.karaf.jaas.modules.properties.PropertiesLoginModule" 
-                 flags="required">
-        users = $[karaf.base]/etc/users.properties
-        encryption.enabled = true
-        encryption.name = jasypt
-        encryption.algorithm = SHA-256
-        encryption.encoding = base64
-        encryption.iterations = 100000
-        encryption.saltSizeBytes = 16
-    </jaas:module>
-</jaas:config>
-{pygmentize}
-
-h3. Using encrypted property placeholders
-
-When using blueprint framework for OSGi for configuring devices that requires 
passwords like JDBC datasources,
-it is undesirable to use plain text passwords in configuration files. To avoid 
this problem it is good to store database
-passwords in encrypted format and use encrypted property placeholders when 
ever possible.
-
-Encrypted properties can be stored in plain properties files. The encrypted 
content is wrapped by an ENC() function.
-
-{code}
-#db.cfg / db.properties
-db.url=localhost:9999
-db.username=admin
-db.password=ENC(zRM7Pb/NiKyCalroBz8CKw==)
-{code}
-
-The encrypted property placeholders can be used either by defining Apache 
Aries ConfigAdmin {{property-placeholder}}
-or by directly using the Apache Karaf {{property-placeholder}}. It has one 
child element {{encryptor}} that contains
-the actual Jasypt configuration. For detailed information on how to configure 
the different Jasypt encryptors, see the
-[Jasypt documentation|http://www.jasypt.org/general-usage.html].
-
-A typical definition using Jasypt encryption would look like:
-
-{pygmentize:xml}
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0";
-           
xmlns:cm="http://aries.apache.org/blueprint/xmlns/blueprint-cm/v1.1.0";
-           
xmlns:ext="http://aries.apache.org/blueprint/xmlns/blueprint-ext/v1.0.0";
-           xmlns:enc="http://karaf.apache.org/xmlns/jasypt/v1.0.0";>
-
-  <!-- Configuration via ConfigAdmin property-placeholder -->
-  <!-- the etc/*.cfg can contain encrypted values with ENC() function -->
-  <cm:property-placeholder persistent-id="db" update-strategy="reload">
-    <cm:default-properties>
-      <cm:property name="encoded" value="ENC(${foo})"/>
-    </cm:default-properties>
-  </cm:property-placeholder>
-
-  <!-- Configuration via properties file -->
-  <!-- Instead of ConfigAdmin, we can load "regular" properties file from a 
location -->
-  <!-- Again, the db.properties file can contain encrypted values with ENC() 
function -->
-  <ext:property-placeholder>
-    <ext:location>file:etc/db.properties</ext:location>
-  </ext:property-placeholder>
-
-  <enc:property-placeholder>
-    <enc:encryptor 
class="org.jasypt.encryption.pbe.StandardPBEStringEncryptor">
-      <property name="config">
-        <bean 
class="org.jasypt.encryption.pbe.config.EnvironmentStringPBEConfig">
-          <property name="algorithm" value="PBEWithMD5AndDES"/>
-          <property name="passwordEnvName" value="ENCRYPTION_PASSWORD"/>
-        </bean>
-      </property>
-    </enc:encryptor>
-  </enc:property-placeholder>
-
-  <!-- ... -->
-
-</blueprint>
-{pygmentize}
-
-Don't forget to install the jasypt feature to add the support of the enc 
namespace:
-
-{code}
-karaf@root()> feature:install jasypt-encryption
-{code}
-
-h2. Role discovery policies
-
-The JAAS specification does not provide means to distinguish between User and 
Role Principals without referring to the
-specification classes. In order to provide means to the application developer 
to decouple the application from Karaf
-JAAS implementation role policies have been created.
-
-A role policy is a convention that can be adopted by the application in order 
to identify Roles, without depending from the implementation. Each role policy 
can be cofigured by setting a "role.policy" and "role.discriminator" property 
to the login module configuration. Currently, Karaf provides two policies that 
can be applied to all Karaf Login Modules.
-
-# Prefixed Roles
-# Grouped Roles
-
-+Prefixed Roles+
-When the prefixed role policy is used the login module applies a configurable 
prefix _(property role.discriminator)_ to
-the role, so that the application can identify the role's principals by its 
prefix. Example:
-
-{pygmentize:xml}
-<jaas:config name="karaf">
-    <jaas:module 
className="org.apache.karaf.jaas.modules.properties.PropertiesLoginModule" 
-                 flags="required">
-        users = $[karaf.base]/etc/users.properties
-        role.policy = prefix
-        role.discriminator = ROLE_
-    </jaas:module>
-</jaas:config>
-{pygmentize}
-
-The application can identify the role principals using a snippet like this:
-
-{pygmentize:java}
-LoginContext ctx = new LoginContext("karaf", handler);
-ctx.login();
-authenticated = true;
-subject = ctx.getSubject();
-for (Principal p : subject.getPrincipals()) {
-       if (p.getName().startsWith("ROLE_")) {
-               roles.add((p.getName().substring("ROLE_".length())));
-       }
-}
-{pygmentize}
-
-+Grouped Roles+
-When the group role policy is used the login module provides all roles as 
members of a group with a configurable name _(property role.discriminator)_. 
Example:
-
-{pygmentize:xml}
-<jaas:config name="karaf">
-    <jaas:module 
className="org.apache.karaf.jaas.modules.properties.PropertiesLoginModule" 
-                 flags="required">
-        users = $[karaf.base]/etc/users.properties
-        role.policy = group
-        role.discriminator = ROLES
-    </jaas:module>
-</jaas:config>
-{pygmentize}
-
-{pygmentize:java}
-LoginContext ctx = new LoginContext("karaf", handler);
-ctx.login();
-authenticated = true;
-subject = ctx.getSubject();
-for (Principal p : subject.getPrincipals()) {
-    if ((p instanceof Group) && ("ROLES".equalsIgnoreCase(p.getName()))) {
-        Group g = (Group) p;
-        Enumeration<? extends Principal> members = g.members();
-        while (members.hasMoreElements()) {
-            Principal member = members.nextElement();
-            roles.add(member.getName());
-        }
-    }
-}
-{pygmentize}
-
-h2. Default role policies
-
-The previous section describes how to leverage role policies. However, Karaf 
provides a default role policy, based on the following class names:
-
-* org.apache.karaf.jaas.modules.UserPrincipal
-* org.apache.karaf.jaas.modules.RolePrincipal
-* org.apache.karaf.jaas.modules.GroupPrincipal
-
-It allows you to directly handling the role class:
-
-{pygmentize:java}
-String rolePrincipalClass = "org.apache.karaf.jaas.modules.RolePrincipal";
-
-for (Principal p : subject.getPrincipals()) {
-       if (p.getClass().getName().equals(rolePrincipalClass)) {
-               roles.add(p.getName());
-       }
-}
-{pygmentize}

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/developers-guide/services.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/developers-guide/services.conf 
b/manual/src/main/webapp/developers-guide/services.conf
deleted file mode 100644
index ab4e00e..0000000
--- a/manual/src/main/webapp/developers-guide/services.conf
+++ /dev/null
@@ -1 +0,0 @@
-h1. OSGi services
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/developers-guide/writing-tests.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/developers-guide/writing-tests.conf 
b/manual/src/main/webapp/developers-guide/writing-tests.conf
deleted file mode 100644
index e4c8f5a..0000000
--- a/manual/src/main/webapp/developers-guide/writing-tests.conf
+++ /dev/null
@@ -1,328 +0,0 @@
-h1. Writing integration tests
-
-We recommend using [PAX 
Exam|http://team.ops4j.org/wiki/display/paxexam/Pax+Exam] to write integration 
tests when developing applications using Karaf.
-
-Starting with Karaf 3.0 we've also included a component briding between Karaf 
and Pax Exam making it easier to write integration tests for Karaf or Karaf 
based Distributions such as [Servicemix|http://servicemix.apache.org] or 
[Geronimo|http://geronimo.apache.org].
-
-h2. Introduction
-
-To make use of this new framework simply add the following dependencies into 
your integration tests pom.xml:
-
-{pygmentize:xml}
-<!-- Karaf Test Framework Version -->
-<dependency>
-  <groupId>org.apache.karaf.tooling.exam</groupId>
-  <artifactId>org.apache.karaf.tooling.exam.container</artifactId>
-  <version>${project.version}</version>
-  <scope>test</scope>
-</dependency>
-<!-- Pax Exam version you would like to use. At least 2.2.x is required. -->
-<dependency>
-  <groupId>org.ops4j.pax.exam</groupId>
-  <artifactId>pax-exam-junit4</artifactId>
-  <version>${pax.exam.version}</version>
-  <scope>test</scope>
-</dependency>
-{pygmentize}
-
-As a next step you need to reference the distribution you want to run your 
tests on. For example, if you want to run your tests on Karaf the following 
section would be required in the integration tests pom.xml:
-
-{pygmentize:xml}
-<dependency>
-  <groupId>org.apache.karaf</groupId>
-  <artifactId>apache-karaf</artifactId>
-  <version>${project.version}</version>
-  <type>zip</type>
-  <scope>test</scope>
-</dependency>
-{pygmentize}
-
-If you want to make use of Exams "versionAsInProject" feature you also need to 
add the following section:
-
-{pygmentize:xml}
-<build>
-  <plugins>
-    <plugin>
-      <groupId>org.apache.servicemix.tooling</groupId>
-      <artifactId>depends-maven-plugin</artifactId>
-      <version>${plugin.depends.version}</version>
-      <executions>
-        <execution>
-          <id>generate-depends-file</id>
-          <goals>
-            <goal>generate-depends-file</goal>
-          </goals>
-        </execution>
-      </executions>
-    </plugin>
-  </plugins>
-</build>
-{pygmentize}
-
-With this done we can start writing our first test case:
-
-{pygmentize:java}
-import static junit.framework.Assert.assertTrue;
-import static 
org.apache.karaf.tooling.exam.options.KarafDistributionOption.karafDistributionConfiguration;
-import static org.ops4j.pax.exam.CoreOptions.maven;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-import org.ops4j.pax.exam.Option;
-import org.ops4j.pax.exam.junit.Configuration;
-import org.ops4j.pax.exam.junit.ExamReactorStrategy;
-import org.ops4j.pax.exam.junit.JUnit4TestRunner;
-import org.ops4j.pax.exam.spi.reactors.AllConfinedStagedReactorFactory;
-
-@RunWith(JUnit4TestRunner.class)
-@ExamReactorStrategy(AllConfinedStagedReactorFactory.class)
-public class VersionAsInProjectKarafTest {
-
-    @Configuration
-    public Option[] config() {
-        return new Option[]{ karafDistributionConfiguration().frameworkUrl(
-            
maven().groupId("org.apache.karaf").artifactId("apache-karaf").type("zip").versionAsInProject())
-            .karafVersion("2.2.4").name("Apache Karaf")};
-    }
-
-    @Test
-    public void test() throws Exception {
-        assertTrue(true);
-    }
-}
-{pygmentize}
-
-h2. Commands
-
-Basically the Pax Exam - Karaf bridge introduced with 3.0 should support all 
commands you know from Pax Exam 2.x. In addition we've added various additional 
commands to make your life easier. Those commands are listed and explained in 
this sub section.
-
-As a small remark: All of the Options explained here are also accessible via 
the static methods in the KarafDistributionOption class in the options package 
automatically on your classpath when you reference the container package.
-
-h3. KarafDistributionConfigurationOption
-
-The framework itself is non of the typical runtimes you define normally in 
PAXEXAM. Instead you define a packed distribution as zip or tar.gz. Those 
distributions have to follow the Karaf packaging style. Therefore instead of 
Karaf you can also enter Servicemix or Geronimo.
-
-{pygmentize:java}
-new KarafDistributionConfigurationOption(
-  "mvn:org.apache.karaf/apache-karaf/2.2.4/zip", // artifact to unpack and use
-  "karaf", // name; display only
-  "2.2.4") // the karaf version; this one is relevant since the startup script 
differs between versions
-{pygmentize}
-
-or for Servicemix e.g.
-
-{pygmentize:java}
-new KarafDistributionConfigurationOption(
-  "mvn:org.apache.servicemix/apache-servicemix/4.4.0/zip", // artifact to 
unpack and use
-  "servicemix", // name; display only
-  "2.2.4") // the karaf version; this one is relevant since the startup script 
differs between versions
-{pygmentize}
-
-As an alternative you can also use the maven url resolvers. Please keep in 
mind that this only works starting with karaf-3.0.0 since there will be 
problems with the pax-url version. In addition, if you want to make use of the 
versionAsInProject part you also need to define the following maven-plugin in 
the pom file of your integration tests:
-
-{pygmentize:xml}
-...
-<dependency>
-  <groupId>org.apache.karaf</groupId>
-  <artifactId>apache-karaf</artifactId>
-  <type>zip</type>
-  <classifier>bin</classifier>
-  <scope>test</scope>
-</dependency>
-...
-<plugin>
-  <groupId>org.apache.servicemix.tooling</groupId>
-  <artifactId>depends-maven-plugin</artifactId>
-  <executions>
-    <execution>
-      <id>generate-depends-file</id>
-      <goals>
-        <goal>generate-depends-file</goal>
-      </goals>
-    </execution>
-  </executions>
-</plugin>
-{pygmentize}
-
-{pygmentize:java}
-@Configuration
-    public Option[] config() {
-        return new Option[]{ karafDistributionConfiguration().frameworkUrl(
-            
maven().groupId("org.apache.karaf").artifactId("apache-karaf").type("zip")
-                .classifier("bin").versionAsInProject()) };
-    }
-{pygmentize}
-
-In addition to the framework specification options this option also includes 
various additional configuration options. Those options are used to configure 
the internal properties of the runtime environment.
-
-h4. Unpack Directory
-Paxexam-Karaf Testframework extracts the distribution you specify by default 
into the paxexam config directory. If you would like to unpack them into your 
target directory simply extend the KarafDistributionConfigurationOption with 
the unpackDirectoryFile like shown in the next example:
-
-{pygmentize:java}
-@Configuration
-public Option[] config() {
-    return new Option[]{ 
karafDistributionConfiguration("mvn:org.apache.karaf/apache-karaf/${project.version}/zip")
-        .unpackDirectory(new File("target/paxexam/unpack/")) };
-}
-{pygmentize}
-
-h4. Use Deploy Folder
-
-Karaf distributions come by default with a deploy folder where you can simply 
drop artifacts to be deployed. In some distributions this folder might have 
been removed. To still be able to deploy your additional artifacts using 
default Pax Exam ProvisionOptions you can configure PaxExam Karaf to use a 
features.xml (which is directly added to your 
etc/org.apache.karaf.features.cfg) for those deploys. To use it instead of the 
deploy folder simply do the following:
-
-{pygmentize:java}
-@Configuration
-public Option[] config() {
-    return new Option[]{ 
karafDistributionConfiguration("mvn:org.apache.karaf/apache-karaf/${project.version}/zip")
-        .useDeployFolder(false)) };
-}
-{pygmentize}
-
-h3. KarafDistributionKitConfigurationOption
-
-The KarafDistributionKitConfigurationOption is almost equal to all variations 
of the KarafDistributionConfigurationOption with the exception that it requires 
to have set a platform and optionally the executable and the files which should 
be made executable additionally. By default it is bin/karaf for nix platforms 
and bin\karaf.bat for windows platforms. The executable option comes in handy 
if you like to e.g. embed an own java runtime. You should add a windows AND a 
linux Kit definition. The framework automatically takes the correct one then. 
The following shows a simple example for karaf:
-
-{pygmentize:java}
-@Configuration
-public Option[] config() {
-    return new Option[]{
-        new 
KarafDistributionKitConfigurationOption("mvn:org.apache.karaf/apache-karaf/${project.version}/zip",
-            
Platform.WINDOWS).executable("bin\\karaf.bat").filesToMakeExecutable("bin\\admin.bat"),
-        new 
KarafDistributionKitConfigurationOption("mvn:org.apache.karaf/apache-karaf/${project.version}/tar.gz",
 "karaf",
-            
Platform.NIX).executable("bin/karaf").filesToMakeExecutable("bin/admin") };
-}
-{pygmentize}
-
-h3. KarafDistributionConfigurationFilePutOption
-
-The option replaces or adds an option to one of Karaf's configuration files:
-
-{pygmentize:java}
-new KarafDistributionConfigurationFilePutOption(
-  "etc/config.properties", // config file to modify based on karaf.base
-  "karaf.framework", // key to add or change
-  "equinox") // value to add or change
-{pygmentize}
-
-This option could also be used in "batch-mode" via a property file. Therefore 
use the KarafDistributionOption#editConfigurationFilePut(final String 
configurationFilePath, File source, String... keysToUseFromSource) method. This 
option allows you to add all properties found in the file as 
KarafDistributionConfigurationFilePutOption. If you configure the 
"keysToUseFromSource" array only the keys specified there will be used. That 
way you can easily put an entire range of properties.
-
-h3. KarafDistributionConfigurationFileExtendOption
-
-This one does the same as the KarafDistributionConfigurationFilePutOption 
option with the one difference that it either adds or appends a specific 
property. This is especially useful if you do not want to store the entire 
configuration in the line in your code.
-
-This option could also be extended in "batch-mode" via a property file. 
Therefore use the KarafDistributionOption#editConfigurationFileExtend(final 
String configurationFilePath, File source, String... keysToUseFromSource) 
method. This option allows you to extend all properties found in the file as 
KarafDistributionConfigurationFileExtendOption. If you configure the 
"keysToUseFromSource" array only the keys specified there will be used. That 
way you can easily extend an entire range of properties.
-
-h3. KarafDistributionConfigurationFileReplacementOption
-
-The file replacement option allows you to simply replace a file in you Karaf 
distribution with a different file:
-
-{pygmentize:java}
-new KarafDistributionConfigurationFileReplacementOption("etc/tests.cfg", new 
File(
-    
"src/test/resources/BaseKarafDefaultFrameworkDuplicatedPropertyEntryTestSecondKey"));
-{pygmentize}
-
-h3. ProvisionOption
-
-The new test container fully supports the provision option. Feel free to use 
any option provided here by paxexam itself (e.g. Maven resolver). All those 
artifacts are copied into the deploy folder of your Karaf distribution before 
it is started. Therefore they all will be available after startup.
-
-h3. KarafDistributionConfigurationConsoleOption
-
-The test container supports options to configure if the localConsole and/or 
the remote shell should be started. Possible options to do so are shown in the 
following two examples:
-
-{pygmentize:java}
-@Configuration
-public Option[] config() {
-    return new Option[]{ 
karafDistributionConfiguration("mvn:org.apache.karaf/apache-karaf/${project.version}/zip"),
 
-        configureConsole().ignoreLocalConsole().startRemoteShell() };
-}
-{pygmentize}
-
-{pygmentize:java}
-@Configuration
-public Option[] config() {
-    return new Option[]{ 
karafDistributionConfiguration("mvn:org.apache.karaf/apache-karaf/${project.version}/zip"),
 
-        configureConsole().startLocalConsole(), 
configureConsole().ignoreRemoteShell() };
-}
-{pygmentize}
-
-h3. VMOption
-
-The Karaf container passes the vmOptions now through to the Karaf environment. 
They are directly passed to the startup of the container. In addition the 
KarafDistributionOption helper has two methods (debugConfiguration() and 
debugConfiguration(String port, boolean hold)) to activate debugging quickly.
-
-h3. LogLevelOption
-
-The Paxexam-Karaf specific log-level option allows an easy way to set a 
specific log-level for the Karaf based distribution. For example simply add the 
following to your Option[] array to get TRACE logging:
-
-{pygmentize:java}
-import static 
org.openengsb.labs.paxexam.karaf.options.KarafDistributionOption.logLevel;
-...
-@Configuration
-public Option[] config() {
-    return new Option[]{ 
karafDistributionConfiguration("mvn:org.apache.karaf/apache-karaf/${project.version}/zip"),
 
-        logLevel(LogLevel.TRACE) };
-}
-{pygmentize}
-
-h3. DoNotModifyLogOption
-
-The option to modify the logging behavior requires that the container 
automatically modifies the logging configuration file. If you would like to 
suppress this behavior simply set the doNotModifyLogConfiguration option as 
shown in the next example:
-
-{pygmentize:java}
-@Configuration
-public Option[] config() {
-    return new Option[]{ 
karafDistributionConfiguration("mvn:org.apache.karaf/apache-karaf/${project.version}/zip"),
 
-        doNotModifyLogConfiguration() };
-}
-{pygmentize}
-
-h3. KeepRuntimeFolderOption
-
-Per default the test container removes all test runner folders. If you want to 
keep them for any reasons (e.g. check why a test fails) set the following 
option:
-
-{pygmentize:java}
-@Configuration
-public Option[] config() {
-    return new Option[]{ 
karafDistributionConfiguration("mvn:org.apache.karaf/apache-karaf/${project.version}/zip"),
 
-        keepRuntimeFolder() };
-}
-{pygmentize}
-
-h3. FeaturesScannerProvisionOption
-
-The FeaturesScannerProvisionOption (e.g. CoreOption.scanFeature()) are 
directly supported by the Paxexam Karaf Testframework.
-
-h3. BootDelegationOption
-
-The BootDelegationOption as known from PaxExam is also supported added the 
boot delegation string directly into the correct property files.
-
-h3. SystemPackageOption
-
-The Standard Exam SystemPackageOption is implemented by adding those packages 
to "org.osgi.framework.system.packages.extra" of the config.properties file.
-
-h3. BootClasspathLibraryOption
-
-The BootClasspathLibraryOption is honored by copying the urls into the lib 
directory where they are automatically taken and worked on.
-
-h3. ExamBundlesStartLevel
-
-The ExamBundlesStartLevel can be used to configure the start lvl of the 
bundles provided by the test-frameworks features.xml. Simply use it as a new 
option like:
-
-{pygmentize:java}
-@Configuration
-public Option[] config() {
-    return new Option[]{ 
karafDistributionConfiguration("mvn:org.apache.karaf/apache-karaf/${project.version}/zip"),
-            useOwnExamBundlesStartLevel(4) };
-}
-{pygmentize}
-
-h2. Driver
-
-Drivers are the parts of the framework responsible for running the Karaf Based 
Distribution. By default the already in the overview explained 
KarafDistributionConfigurationOption uses a JavaRunner starting the 
distribution platform independent but not using the scripts in the 
distribution. If you like to test those scripts too an option is to to use the 
ScriptRunner via the KarafDistributionKitConfigurationOption instead.
-
-h3. JavaRunner
-
-The JavaRunner builds the entire command itself and executes Karaf in a new 
JVM. This behavior is more or less exactly what the default runner does. Simply 
use the KarafDistributionConfigurationOption as explained in the Commands 
section to use this.
-
-h3. ScriptRunner
-The script runner has the disadvantage over the java runner that it is also 
platform dependent. The advantage though is that you can also test your 
specific scripts. To use it follow the explanation of the 
KarafDistributionKitConfigurationOption in the Commands section.
-

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/asf-logo.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/asf-logo.png 
b/manual/src/main/webapp/images/asf-logo.png
deleted file mode 100644
index d824fab..0000000
Binary files a/manual/src/main/webapp/images/asf-logo.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/bg.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/bg.png 
b/manual/src/main/webapp/images/bg.png
deleted file mode 100644
index 878a84f..0000000
Binary files a/manual/src/main/webapp/images/bg.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/bg02-blue-left.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/bg02-blue-left.png 
b/manual/src/main/webapp/images/bg02-blue-left.png
deleted file mode 100644
index 057efdf..0000000
Binary files a/manual/src/main/webapp/images/bg02-blue-left.png and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/bg02-blue-right.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/bg02-blue-right.png 
b/manual/src/main/webapp/images/bg02-blue-right.png
deleted file mode 100644
index edf9a9d..0000000
Binary files a/manual/src/main/webapp/images/bg02-blue-right.png and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/bg02-white-left-nogr.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/bg02-white-left-nogr.png 
b/manual/src/main/webapp/images/bg02-white-left-nogr.png
deleted file mode 100644
index 1c5186c..0000000
Binary files a/manual/src/main/webapp/images/bg02-white-left-nogr.png and 
/dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/bg02-white-right-nogr.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/bg02-white-right-nogr.png 
b/manual/src/main/webapp/images/bg02-white-right-nogr.png
deleted file mode 100644
index 9734def..0000000
Binary files a/manual/src/main/webapp/images/bg02-white-right-nogr.png and 
/dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/big-bullet.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/big-bullet.png 
b/manual/src/main/webapp/images/big-bullet.png
deleted file mode 100644
index f036db5..0000000
Binary files a/manual/src/main/webapp/images/big-bullet.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/deployer.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/deployer.png 
b/manual/src/main/webapp/images/deployer.png
deleted file mode 100644
index 505eb3c..0000000
Binary files a/manual/src/main/webapp/images/deployer.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/jconsole_admin.jpg
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/jconsole_admin.jpg 
b/manual/src/main/webapp/images/jconsole_admin.jpg
deleted file mode 100644
index 93e8d0e..0000000
Binary files a/manual/src/main/webapp/images/jconsole_admin.jpg and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/jconsole_connect.jpg
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/jconsole_connect.jpg 
b/manual/src/main/webapp/images/jconsole_connect.jpg
deleted file mode 100644
index 6041ee1..0000000
Binary files a/manual/src/main/webapp/images/jconsole_connect.jpg and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/jconsole_features.jpg
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/jconsole_features.jpg 
b/manual/src/main/webapp/images/jconsole_features.jpg
deleted file mode 100644
index 233e5fa..0000000
Binary files a/manual/src/main/webapp/images/jconsole_features.jpg and 
/dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/jconsole_memory.jpg
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/jconsole_memory.jpg 
b/manual/src/main/webapp/images/jconsole_memory.jpg
deleted file mode 100644
index c9fbb29..0000000
Binary files a/manual/src/main/webapp/images/jconsole_memory.jpg and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/jconsole_overview.jpg
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/jconsole_overview.jpg 
b/manual/src/main/webapp/images/jconsole_overview.jpg
deleted file mode 100644
index b41a72b..0000000
Binary files a/manual/src/main/webapp/images/jconsole_overview.jpg and 
/dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/jconsole_summary.jpg
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/jconsole_summary.jpg 
b/manual/src/main/webapp/images/jconsole_summary.jpg
deleted file mode 100644
index 7245d12..0000000
Binary files a/manual/src/main/webapp/images/jconsole_summary.jpg and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/jconsole_threads.jpg
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/jconsole_threads.jpg 
b/manual/src/main/webapp/images/jconsole_threads.jpg
deleted file mode 100644
index b4c0cb2..0000000
Binary files a/manual/src/main/webapp/images/jconsole_threads.jpg and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/karaf-logo.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/karaf-logo.png 
b/manual/src/main/webapp/images/karaf-logo.png
deleted file mode 100644
index 066ab86..0000000
Binary files a/manual/src/main/webapp/images/karaf-logo.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/karaf.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/karaf.png 
b/manual/src/main/webapp/images/karaf.png
deleted file mode 100644
index f9fb4a4..0000000
Binary files a/manual/src/main/webapp/images/karaf.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/karaf2.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/karaf2.png 
b/manual/src/main/webapp/images/karaf2.png
deleted file mode 100644
index f9fb4a4..0000000
Binary files a/manual/src/main/webapp/images/karaf2.png and /dev/null differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/left-box-bottom.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/left-box-bottom.png 
b/manual/src/main/webapp/images/left-box-bottom.png
deleted file mode 100644
index 0495248..0000000
Binary files a/manual/src/main/webapp/images/left-box-bottom.png and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/left-box-right.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/left-box-right.png 
b/manual/src/main/webapp/images/left-box-right.png
deleted file mode 100644
index 2698074..0000000
Binary files a/manual/src/main/webapp/images/left-box-right.png and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/images/left-box-top.png
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/images/left-box-top.png 
b/manual/src/main/webapp/images/left-box-top.png
deleted file mode 100644
index e1fc26e..0000000
Binary files a/manual/src/main/webapp/images/left-box-top.png and /dev/null 
differ

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/index.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/index.conf 
b/manual/src/main/webapp/index.conf
deleted file mode 100644
index 4397cc1..0000000
--- a/manual/src/main/webapp/index.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-h1. Apache Karaf
-
-This project contains documentation about Apache Karaf.
-
-* [Karaf Overview|overview]
-* [Update Notes|update-notes]
-* [Quick Start|quick-start]
-* [Users Guide|users-guide/index]
-* [Developers Guide|developers-guide/index]
-* [Commands Reference|commands/commands]
-

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/manual.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/manual.conf 
b/manual/src/main/webapp/manual.conf
deleted file mode 100644
index de21749..0000000
--- a/manual/src/main/webapp/manual.conf
+++ /dev/null
@@ -1,87 +0,0 @@
-{attributes:layout=/WEB-INF/scalate/layouts/print.ssp}
-
-{div:class=title}
-!/images/karaf-logos.png!
-\\
-\\
-\\
-\\
-Apache Karaf
-Users' Guide
-\\
-\\
-\\
-\\
-{div}
-
-{div:class=copyright-section}
-Copyright 2008-2014 The Apache Software Foundation
-
-The PDF format of the Karaf Manual has been generated by Prince XML 
(http://www.princexml.com).
-{div}
-
-
-{div:class=toc-title}
-Table of contents
-{div}
-
-{toc:maxLevel=2}
-
-h1. Overview
-{include:overview.conf}
-
-h1. Quick Start
-{include:quick-start.conf}
-
-h1. Users Guide
-{include:users-guide/installation.conf}
-{include:users-guide/directory-structure.conf}
-{include:users-guide/start-stop.conf}
-{include:users-guide/wrapper.conf}
-{include:users-guide/console.conf}
-{include:users-guide/remote.conf}
-{include:users-guide/log}
-{include:users-guide/configuration.conf}
-{include:users-guide/urls.conf}
-{include:users-guide/provisioning.conf}
-{include:users-guide/deployers}
-{include:users-guide/kar}
-{include:users-guide/instances}
-{include:users-guide/security}
-{include:users-guide/obr}
-{include:users-guide/enterprise}
-{include:users-guide/webcontainer}
-{include:users-guide/jndi}
-{include:users-guide/jta}
-{include:users-guide/jdbc}
-{include:users-guide/jms}
-{include:users-guide/jpa}
-{include:users-guide/ejb}
-{include:users-guide/cdi}
-{include:users-guide/failover}
-{include:users-guide/monitoring}
-{include:users-guide/webconsole}
-{include:users-guide/tuning}
-
-h1. Developers Guide
-{include:developers-guide/developer-commands.conf}
-{include:developers-guide/scripting.conf}
-{include:developers-guide/connect.conf}
-{include:developers-guide/branding.conf}
-{include:developers-guide/extending.conf}
-{include:developers-guide/karaf-maven-plugin.conf}
-{include:developers-guide/karaf-maven-plugin-features-add-to-repository.conf}
-{include:developers-guide/karaf-maven-plugin-features-generate-descriptor.conf}
-{include:developers-guide/karaf-maven-plugin-features-validate-descriptor.conf}
-{include:developers-guide/karaf-maven-plugin-features-create-kar.conf}
-{include:developers-guide/karaf-maven-plugin-commands-generate-help.conf}
-{include:developers-guide/karaf-maven-plugin-instance-create-archive.conf}
-{include:developers-guide/custom-distribution.conf}
-{include:developers-guide/services.conf}
-{include:developers-guide/creating-bundles.conf}
-{include:developers-guide/archetypes.conf}
-{include:developers-guide/security-framework.conf}
-{include:developers-guide/debugging.conf}
-{include:developers-guide/writing-tests.conf}
-{include:developers-guide/github-contributions.conf}
-

http://git-wip-us.apache.org/repos/asf/karaf/blob/3de05ae9/manual/src/main/webapp/overview.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/overview.conf 
b/manual/src/main/webapp/overview.conf
deleted file mode 100644
index 1f9ba69..0000000
--- a/manual/src/main/webapp/overview.conf
+++ /dev/null
@@ -1,37 +0,0 @@
-h1. Apache Karaf Overview
-
-Apache Karaf is a modern and polymorphic container.
-
-It's a lightweight, powerful, and enterprise ready container powered by OSGi.
-You can deploy different kind of applications in Karaf, OSGi or non-OSGi.
-
-With this flexibility, Karaf is the perfect container for microservices, 
systems integration, big data, and much more.
-
-Apache Karaf uses either the Apache Felix or Eclipse Equinox OSGi frameworks, 
providing additional features on top of the framework.
-
-Apache Karaf can be scaled from a very lightweight container to a fully 
featured enterprise service: it's a very flexible and extensible container, 
covering all the major needs.
-
-Here is a short list of provided features:
-
-* *Hot deployment*: simply drop a file in the {{deploy}} directory, Apache 
Karaf will detect the type of the file and
- try to deploy it.
-* *Complete Console*: Apache Karaf provides a complete Unix-like console where 
you can completely manage the container.
-* *Dynamic Configuration*: Apache Karaf provides a set of commands focused on 
managing its own configuration.
- All configuration files are centralized in the {{etc}} folder. Any change in 
a configuration file is noticed and reloaded.
-* *Advanced Logging System*: Apache Karaf supports all the popular logging 
frameworks (slf4j, log4j, etc). Whichever
- logging framework you use, Apache Karaf centralizes the configuration in one 
file.
-* *Provisioning*: Apache Karaf supports a large set of URLs where you can 
install your applications (Maven repository, HTTP,
- file, etc). It also provides the concept of "Karaf Features" which is a way 
to describe your application.
-* *Management*: Apache Karaf is an enterprise-ready container, providing many 
management indicators and operations
- via JMX.
-* *Remote*: Apache Karaf embeds an SSHd server allowing you to use the console 
remotely. The management layer is also
- accessible remotely.
-* *Security*: Apache Karaf provides a complete security framework (based on 
JAAS), and provides a RBAC (Role-Based Access
- Control) mechanism for console and JMX access.
-* *Instances*: multiple instances of Apache Karaf can be managed directly from 
a main instance (root).
-* *OSGi frameworks*: Apache Karaf is not tightly coupled to one OSGi 
framework. By default, Apache Karaf runs with the Apache Felix
- Framework, but you can easily switch to Equinox (just change one property in 
a configuration file).
-
-!/images/karaf.png!
-
-

Reply via email to