You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@karaf.apache.org by jb...@apache.org on 2016/01/05 15:02:29 UTC
[04/15] karaf git commit: KARAF-3679 - Switch user guide to asciidoc
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/http.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/http.conf b/manual/src/main/webapp/users-guide/http.conf
deleted file mode 100644
index 8ec92ad..0000000
--- a/manual/src/main/webapp/users-guide/http.conf
+++ /dev/null
@@ -1,60 +0,0 @@
-h1. Http Service
-
-The Karaf http feature enables the Pax Web implementation of the OSGi HTTPService.
-
-h2. Installing the HTTP feature
-
-{code}
-root@karaf> feature:install http
-{code}
-
-Test the HTTP service is up by pointing your browser to [http://localhost:8080/].
-
-h2. Configuring the HTTPService
-
-By default the HTTPService listens on port 8181 you can change the port by creating a file {{etc/org.ops4j.pax.web.cfg}} with the following content:
-
-{code}
-org.osgi.service.http.port=8080
-{code}
-
-or by typing:
-{code}
-root@karaf> config:property-set -p org.ops4j.pax.web org.osgi.service.http.port 8080
-{code}
-
-If the http feature is already installed the change will take effect immediately.
-
-h2. Registering a servlet with the HttpService manually
-
-See [Apache Felix HTTP Service|http://felix.apache.org/site/apache-felix-http-service.html].
-
-h2. Using the Pax Web whiteboard extender
-
-The Pax Web whiteboard extender is an enhancement of the http feature. So use the following command to install:
-
-{code}
-root@karaf> feature:install http-whiteboard
-{code}
-
-The [Pax Web whiteboard|http://team.ops4j.org/wiki/display/ops4j/Pax+Web+Extender+-+Whiteboard] extender listens to services
-of interface type HttpServlet and Filter.
-It will register each of these interfaces with the HttpService and remove them as soon as the service goes down.
-So it is much more convenient than registering with the HttpService directly.
-
-{code}
-<blueprint xmlns="http://www.osgi.org/xmlns/blueprint/v1.0.0">
- <service interface="javax.servlet.http.HttpServlet">
- <service-properties>
- <entry key="alias" value="/myservlet"/>
- </service-properties>
- <bean id="myServlet" class="com.example.MyServlet"/>
- </service>
-</blueprint>
-{code}
-
-The above snippet publishes the Servlet MyServlet on http://localhost:8080/myServlet.
-
-Please keep in mind that the Whiteboard pattern for Servlets is not standardized and only works with Pax Web.
-
-For commands take a look at the command section in the [webcontainer|webcontainer] chapter.
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/index.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/index.conf b/manual/src/main/webapp/users-guide/index.conf
deleted file mode 100644
index 11b24dc..0000000
--- a/manual/src/main/webapp/users-guide/index.conf
+++ /dev/null
@@ -1,30 +0,0 @@
-h1. Users Guide
-
-* [Installation|installation]
-* [Directory structure|directory-structure]
-* [Start, stop, restart, connect|start-stop]
-* [Integration in the operating system: the Service Wrapper|wrapper]
-* [Console|console]
-* [Remote|remote]
-* [Log|log]
-* [Configuration|configuration]
-* [Artifacts repositories and URLs|urls]
-* [Provisioning and features|provisioning]
-* [Deployers|deployers]
-* [KAR|kar]
-* [Instances|instances]
-* [Security|security]
-* [OBR|obr]
-* [Enterprise|enterprise]
-** [WebContainer (JSP/Servlet)|webcontainer]
-** [Naming (JNDI)|jndi]
-** [Transaction (JTA)|jta]
-** [DataSource (JDBC)|jdbc]
-** [MOM (JMS)|jms]
-** [Persistence (JPA)|jpa]
-** [EJB|ejb]
-** [CDI|cdi]
-** [HA/failover and cluster|failover]
-* [Monitoring and Management using JMX|monitoring]
-* [WebConsole|webconsole]
-* [Tuning|tuning]
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/installation.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/installation.conf b/manual/src/main/webapp/users-guide/installation.conf
deleted file mode 100644
index cceea79..0000000
--- a/manual/src/main/webapp/users-guide/installation.conf
+++ /dev/null
@@ -1,129 +0,0 @@
-h1. Installation
-
-Apache Karaf is a lightweight container, very easy to install and administrate, on both Unix and Windows platforms.
-
-h2. Requirements
-
-*Hardware:*
-* 50 MB of free disk space for the Apache Karaf binary distribution.
-
-*Operating Systems:*
-* Windows: Windows 8, Windows 7, Windows 2003, Windows Vista, Windows XP SP2, Windows 2000.
-* Unix: RedHat Enterprise Linux, Debian, SuSE/OpenSuSE, CentOS, Fedora, Ubuntu, MacOS, AIX, HP-UX, Solaris, any Unix platform that supports Java.
-
-*Environment:*
-* Java SE 1.7.x or greater ([http://www.oracle.com/technetwork/java/javase/]).
-* The JAVA_HOME environment variable must be set to the directory where the Java runtime is installed,
-
-h2. Using Apache Karaf binary distributions
-
-Apache Karaf is available in two distributions, both as a tar.gz and zip archives.
-
-
-The "default" distribution is a "ready to use" distribution.
-The "default" distribution provides the following features enabled.
-
-The "minimal" distribution is like the minimal distributions that you can find for most of Unix distributions.
-Only the core layer is packaged, most of the features and bundles are downloaded from Internet at bootstrap.
-It means that Apache Karaf minimal distribution requires an Internet connection to start correctly.
-The features provided by the "minimal" distribution are exactly the same as in the "default" distribution, the difference
-is that the minimal distribution will download the features from Internet.
-
-h3. Installation on Windows platform
-
-NB: the JAVA_HOME environment variable has to be correctly defined. To accomplish that, press Windows key and Break key together, switch to "Advanced" tab and click on "Environment Variables".
-
-# From a browser, navigate to [http://karaf.apache.org/index/community/download.html].
-# Download Apache Karaf binary distribution in the zip format: {{apache-karaf-3.0.0.zip}}.
-# Extract the files from the zip file into a directory of your choice (it's the {{KARAF_HOME}}.
-NB: remember the restrictions concerning illegal characters in Java paths, e.g. \!, % etc.
-# Apache Karaf is now installed.
-
-{tip:title=Handy Hint}
-In case you have to install Karaf into a very deep path or a path containing illegal characters for Java paths, e.g. \!, % etc., you may add a bat file to _start \-> startup_ that executes
-{noformat}
-subst S: "C:\your very % problematic path!\KARAF"
-{noformat}
-so your Karaf root directory is S: --- which works for sure and is short to type.
-{tip}
-
-h3. Installation on Unix platforms
-
-NB: the JAVA_HOME environment variable has to be correctly defined. Check the current value using
-{code}
-echo $JAVA_HOME
-{code}
-If it's not correct, fix it using:
-{code}
-export JAVA_HOME=....
-{code}
-
-# From a browser, navigate to [http://karaf.apache.org/index/community/download.html].
-# Download Apache Karaf binary distribution in the tar.gz format: {{apache-karaf-3.0.0.tar.gz}}.
-# Extract the files from the tar.gz file into a directory of your choice (it's the {{KARAF_HOME}}). For example:
-{code}
-gunzip apache-karaf-3.0.0.tar.gz
-tar xvf apache-karaf-3.0.0.tar
-{code}
-NB: remember the restrictions concerning illegal characters in Java paths, e.g. \!, % etc.
-# Apache Karaf is now installed.
-
-h2. Post-Installation steps
-
-Thought it is not always required, it is strongly advised to set up the {{JAVA_HOME}} environment property to point to the JDK you want Apache Karaf to use before starting it.
-This property is used to locate the {{java}} executable and should be configured to point to the home directory of the Java SE 7 installation.
-
-By default, all Apache Karaf files are "gather" in one directory: the {{KARAF_HOME}}.
-
-You can define your own directory layout, by using some Karaf environment variables:
-
-* {{KARAF_DATA}} is the location of the data folder, where Karaf stores temporary files.
-* {{KARAF_ETC}} is the location of the etc folder, where Karaf stores configuration files.
-* {{KARAF_BASE}} is the Karaf base folder. By default {{KARAF_BASE}} is the same as {{KARAF_HOME}}.
-
-h2. Building from Sources
-
-If you intend to build Apache Karaf from the sources, the requirements are a bit different:
-
-*Hardware:*
-* 500 MB of free disk space for the Apache Karaf source distributions or SVN checkout, the Maven build and the dependencies Maven downloads.
-
-*Environment:*
-* Java SE Development Kit 1.7.x or greater ([http://www.oracle.com/technetwork/java/javase/]).
-* Apache Maven 3.0.4 ([http://maven.apache.org/download.html]).
-
-h3. Building on Windows platform
-
-# You can get the Apache Karaf sources from:
-* the sources distribution {{apache-karaf-3.0.0-src.zip}} available at [http://karaf.apache.org/index/community/download.html]. Extract the files in the directory of your choice.
-* by checkout of the git repository:
-{code}
-git clone https://git-wip-us.apache.org/repos/asf/karaf.git karaf
-{code}
-# Use Apache Maven to build Apache Karaf:
-{code}
-mvn clean install
-{code}
-NB: you can speed up the build by bypassing the unit tests:
-{code}
-mvn clean install -DskipTests
-{code}
-# You can find the built binary distribution in {{assemblies\apache-karaf\target\apache-karaf-3.0.0.zip}}. You can install and use it as explained in the "Using Apache Karaf binary distributions" section.
-
-h3. Building on Unix platforms
-
-# You can get the Apache Karaf sources from:
-* the sources distribution {{apache-karaf-3.0.0-src.tar.gz}} available at [http://karaf.apache.org/index/community/download.html]. Extract the files in the directory of your choice.
-* by checkout of the git repository:
-{code}
-git clone https://git-wip-us.apache.org/repos/asf/karaf.git karaf
-{code}
-# Use Apache Maven to build Apache Karaf:
-{code}
-mvn clean install
-{code}
-NB: you can speed up the build by bypassing the unit tests:
-{code}
-mvn clean install -DskipTests
-{code}
-# You can find the built binary distribution in {{assemblies/apache-karaf/target/apache-karaf-3.0.0.tar.gz}}. You can install and use it as explained in the "Using Apache Karaf binary distributions" section.
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/instances.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/instances.conf b/manual/src/main/webapp/users-guide/instances.conf
deleted file mode 100644
index 6dcef91..0000000
--- a/manual/src/main/webapp/users-guide/instances.conf
+++ /dev/null
@@ -1,365 +0,0 @@
-h1. Instances
-
-A instance is a complete new Apache Karaf runtime, isolated from the other ones.
-
-The purpose is to easily create and manage a new Apache Karaf runtime without installing a complete distribution.
-
-A instance is a new instance that you can launch separately from the root one, and deploy applications into. It means that each instance is run on a different JVM.
-
-A instance does not contain a full copy of the Apache Karaf distribution, but only a set of the configuration files and data folder which contains all the runtime information, logs and temporary files.
-
-h2. Using the instance commands
-
-The *instance* commands allow you to create and manage instances.
-
-h3. Creating instances
-
-You create a new runtime instance by typing [{{instance:create}}|/commands/instance-create] in the Karaf console.
-
-As shown in the following example, {{instance:create}} causes the runtime to create a new runtime installation in the active runtime's {{instances/[name]} directory. The new instance is a new Karaf instance and is assigned an SSH port number based on an incremental count starting at 8101 and a RMI registry port number based on an incremental count starting at 1099.
-
-{code}
-karaf@root()> instance:create test
-{code}
-
-The new instance is fresh Apache Karaf instance. It uses default configuration files set, as you install a fresh Karaf distribution.
-
-You can enable the verbose mode for the {{instance:create}} command using the {{-v}} option:
-
-{code}
-karaf@root()> instance:create -v test
-Creating new instance on SSH port 8103 and registry port 1101 / RMI server port 44446 at: /opt/karaf/instances/test
-Creating dir: /opt/karaf/instances/test/bin
-Creating dir: /opt/karaf/instances/test/etc
-Creating dir: /opt/karaf/instances/test/system
-Creating dir: /opt/karaf/instances/test/deploy
-Creating dir: /opt/karaf/instances/test/data
-Creating file: /opt/karaf/instances/test/etc/config.properties
-Creating file: /opt/karaf/instances/test/etc/jre.properties
-Creating file: /opt/karaf/instances/test/etc/custom.properties
-Creating file: /opt/karaf/instances/test/etc/java.util.logging.properties
-Creating file: /opt/karaf/instances/test/etc/org.apache.felix.fileinstall-deploy.cfg
-Creating file: /opt/karaf/instances/test/etc/org.apache.karaf.features.obr.cfg
-Creating file: /opt/karaf/instances/test/etc/org.apache.karaf.features.repos.cfg
-Creating file: /opt/karaf/instances/test/etc/org.apache.karaf.log.cfg
-Creating file: /opt/karaf/instances/test/etc/org.ops4j.pax.logging.cfg
-Creating file: /opt/karaf/instances/test/etc/org.ops4j.pax.url.mvn.cfg
-Creating file: /opt/karaf/instances/test/etc/users.properties
-Creating file: /opt/karaf/instances/test/etc/keys.properties
-Creating file: /opt/karaf/instances/test/etc/org.apache.karaf.features.cfg
-Creating file: /opt/karaf/instances/test/etc/system.properties
-Creating file: /opt/karaf/instances/test/etc/org.apache.karaf.shell.cfg
-Creating file: /opt/karaf/instances/test/etc/org.apache.karaf.management.cfg
-Creating file: /opt/karaf/instances/test/bin/karaf
-Creating file: /opt/karaf/instances/test/bin/start
-Creating file: /opt/karaf/instances/test/bin/stop
-{code}
-
-You can manually configure the different ports, the location of the instance, the Apache Karaf features URLs using different options of the {{instance:create}} command.
-You can have details about these options using the {{--help}} option.
-
-h3. Cloning an instance
-
-Instead of creating a fresh instance, you can clone an existing instance using {{instance:clone}}.
-
-The {{instance:clone}} command reuse the files from the source instance:
-
-{code}
-karaf@root()> instance:clone root test
-{code}
-
-You can have details about the cloning options using the {{--help}} option.
-
-h3. Changing the instance location
-
-By default, the new instances storage is in the {{KARAF_HOME/instance}} directory.
-You find a directory with the name of the instance storing the different instance files.
-
-You can change the location of the instance using the {{-l}} option to the {{instance:create}} and {{instance:clone}} commands:
-
-{code}
-karaf@root()> instance:create -v -l /tmp/test test
-Creating new instance on SSH port 8102 and registry port 1100 / RMI server port 44445 at: /tmp/test
-Creating dir: /tmp/test/bin
-Creating dir: /tmp/test/etc
-Creating dir: /tmp/test/system
-Creating dir: /tmp/test/deploy
-Creating dir: /tmp/test/data
-Creating file: /tmp/test/etc/config.properties
-Creating file: /tmp/test/etc/jre.properties
-Creating file: /tmp/test/etc/custom.properties
-Creating file: /tmp/test/etc/java.util.logging.properties
-Creating file: /tmp/test/etc/org.apache.felix.fileinstall-deploy.cfg
-Creating file: /tmp/test/etc/org.apache.karaf.features.obr.cfg
-Creating file: /tmp/test/etc/org.apache.karaf.features.repos.cfg
-Creating file: /tmp/test/etc/org.apache.karaf.log.cfg
-Creating file: /tmp/test/etc/org.ops4j.pax.logging.cfg
-Creating file: /tmp/test/etc/org.ops4j.pax.url.mvn.cfg
-Creating file: /tmp/test/etc/users.properties
-Creating file: /tmp/test/etc/keys.properties
-Creating file: /tmp/test/etc/org.apache.karaf.features.cfg
-Creating file: /tmp/test/etc/system.properties
-Creating file: /tmp/test/etc/org.apache.karaf.shell.cfg
-Creating file: /tmp/test/etc/org.apache.karaf.management.cfg
-Creating file: /tmp/test/bin/karaf
-Creating file: /tmp/test/bin/start
-Creating file: /tmp/test/bin/stop
-{code}
-
-Careful, it's not possible to change the location of an instance once it has been created.
-
-NB: {{instance:destroy}} will remove the instance location for you. You don't have to remove the instance location "by hand".
-
-h3. Changing instance ports
-
-You can change the SSH port number assigned to an instance using the {{instance:ssh-port-change}} command:
-
-{code}
-karaf@root()> instance:ssh-port-change test 8104
-{code}
-
-where test is the instance name and 8104 is the new SSH port number to use for the test instance.
-
-You can change the RMI Registry port number (used by JMX) of an instance using the {{instance:rmi-registry-port-change}} command:
-
-{code}
-karaf@root()> instance:rmi-registry-port-change test 1102
-{code}
-
-where test is the instance name and 1102 is the new RMI Registry port number to use for the test instance.
-
-You can also change the RMI Server port number (used by JMX too) of an instance using the {{instance:rmi-server-port-change}} command:
-
-{code}
-karaf@root()> instance:rmi-server-port-change test 44447
-{code}
-
-where test is the instance name and 44447 is the new RMI Server port number to use for the test instance.
-
-NB: the instance has to be stopped to be able to change the port numbers.
-
-h3. Starting instances
-
-New instances are created in a stopped state.
-
-To start an instance, you can use the {{instance:start}} command:
-
-{code}
-karaf@root()> instance:start test
-{code}
-
-where test is the instance name.
-
-h3. Listing instances
-
-To list the instances and their current status, you can use the {{instance:list}} command:
-
-{code}
-karaf@root()> instance:list
-SSH Port | RMI Registry | RMI Server | State | PID | Name
--------------------------------------------------------------
- 8101 | 1099 | 44444 | Started | 19652 | root
- 8104 | 1101 | 44446 | Stopped | 0 | test
-{code}
-
-An instance can be in the following status:
-
-- Stopped: the instance is stopped.
-- Starting: the instance is starting.
-- Started: the instance is up and running. You can connect and use it.
-
-h3. Status of an instance
-
-You can get directly the status of a given instance using the {{instance:status}} command:
-
-{code}
-karaf@root()> instance:status test
-Started
-{code}
-
-where test is the instance name.
-
-h3. Connecting to an instance
-
-You can connect to a running instance directly from the root one using the {{instance:connect}} command:
-
-{code}
-karaf@root()> instance:connect test
-{code}
-
-where 'test' is the instance name where to connect to.
-
-By default, this command will use the same username used on the root instance, and the password will be prompted.
-
-You can use a different username using the {{-u}} or {{--username}} option. You can also provide the password using the
-{{-p}} or {{--password}} option.
-
-If you don't provide any argument, you will logon on the instance:
-
-{code}
-karaf@test()>
-{code}
-
-Note the name of instance in the shell prompt (@test).
-
-You can logoff from the instance and return back to the root instance using the {{logout}} command or CTRL-D key binding:
-
-{code}
-karaf@test()> logout
-karaf@root()>
-{code}
-
-The {{instance:connect}} command accepts shell commands as argument. It allows you to directly execute commands or scripts on the instance:
-
-{code}
-karaf@root()> instance:connect test feature:list
-Name | Version | Installed | Repository | Description
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-standard | 3.0.0 | x | standard-3.0.0 | Karaf standard feature
-aries-annotation | 3.0.0 | | standard-3.0.0 | Aries Annotations
-wrapper | 3.0.0 | | standard-3.0.0 | Provide OS integration
-service-wrapper | 3.0.0 | | standard-3.0.0 | Provide OS integration (alias to wrapper feature)
-obr | 3.0.0 | | standard-3.0.0 | Provide OSGi Bundle Repository (OBR) support
-config | 3.0.0 | x | standard-3.0.0 | Provide OSGi ConfigAdmin support
-region | 3.0.0 | x | standard-3.0.0 | Provide Region Support
-...
-{code}
-
-h3. Stop an instance
-
-To stop an instance, you can connect to the instance (using {{instance:connect}}) and execute the {{system:shutdown}}
-command.
-
-You can also use the [{{instance:stop}}|/commands/instance-stop] command:
-
-{code}
-karaf@root()> instance:stop test
-{code}
-
-where test is the instance name.
-
-The instance will go to the "Stopped" state.
-
-h3. Destroy an instance
-
-You can completely delete a stopped instance using the {{instance:destroy}} command:
-{code}
-karaf@root()> instance:destroy test
-{code}
-
-where test is the instance name.
-
-NB: the {{instance:destroy}} deletes the instance store (the location where the instance files are stored).
-
-h3. Rename an instance
-
-You can change the name of a stopped instance using the {{instance:rename}} command:
-
-{code}
-karaf@root()> instance:rename test newTest
-{code}
-
-where test is the current instance name, and newTest the new instance name.
-
-h2. Instance script
-
-The {{instance:*}} commands require the root instance running.
-
-But, you can also administrate directly instances without the root instance, using the {{bin/instance}} Unix script
-(or {{bin/instance.bat}} script on Windows).
-
-You find the same actions that you can do with the {{instance:*}} commands in the {{instance[.bat]}} script:
-
-{code}
-bin/instance
-Available commands:
- clone - Clones an existing container instance.
- create - Creates a new container instance.
- destroy - Destroys an existing container instance.
- list - Lists all existing container instances.
- opts-change - Changes the Java options of an existing container instance.
- rename - Rename an existing container instance.
- rmi-registry-port-change - Changes the RMI registry port (used by management layer) of an existing container instance.
- rmi-server-port-change - Changes the RMI server port (used by management layer) of an existing instance.
- ssh-port-change - Changes the secure shell port of an existing container instance.
- start - Start an existing container instance.
- status - Check the current status of an instance.
- stop - Stop an existing container instance.
-Type 'command --help' for more help on the specified command.
-{code}
-
-For instance, to list all the instances, you can use the {{instance}} script with the {{list}} command:
-
-{code}
-bin/instance list
-SSH Port | RMI Registry | RMI Server | State | PID | Name
------------------------------------------------------------
- 8101 | 1099 | 44444 | Stopped | 0 | root
- 8102 | 1100 | 44445 | Stopped | 0 | test
-{code}
-
-It's exactly the same as executing {{instance:list}} in the root instance.
-
-You can obtain details about commands options and arguments using the {{--help}} option. For instance:
-
-{code}
-bin/instance rename --help
-DESCRIPTION
- instance:rename
-
- Rename an existing container instance.
-
-SYNTAX
- instance:rename [options] name new-name
-
-ARGUMENTS
- name
- The name of the container instance to rename
- new-name
- The new name of the container instance
-
-OPTIONS
- --help
- Display this help message
- -v, --verbose
- Display actions performed by the command (disabled by default)
-
-{code}
-
-h2. JMX InstanceMBean
-
-On the JMX layer, you have a MBean dedicated to the management of the instances: the InstanceMBean.
-
-The ObjectName to use is {{org.apache.karaf:type=instance,name=*}}.
-
-h3. Attributes
-
-The {{Instances}} attribute is a tabular data attribute providing details about the instances:
-
-* {{Is Root}} (boolean): if true, the instance is the root instance, false else.
-* {{JavaOpts}} (string): it contains the JVM arguments used by the instance.
-* {{Location}} (string): it's the path to the instance storage.
-* {{Name}} (string): it's the name of the instance.
-* {{Pid}} (long): it's the current system process ID (PID) of the instance process.
-* {{RMI Registry Port}} (int): it's the port number of the instance RMI Registry (JMX).
-* {{RMI Server Port}} (int): it's the port number of the instance RMI Server (JMX).
-* {{SSH Port}} (int): it's the port number of the instance SSH Server.
-* {{State}} (string): it's the current status of the instance (Stopped, Starting, Started).
-
-h3. Operations
-
-The InstanceMBean provides the following operations, corresponding to the previous {{instance:*}} commands:
-* {{createInstance(instanceName, sshPort, rmiRegistryPort, rmiServerPort, location, javaOpts, features, featuresUrls)}}: create a new instance.
-* {{changeSshPort(instanceName, port)}}: change the SSH port of an instance.
-* {{changeRmiServerPort(instanceName, port)}}: change the RMI server port of an instance.
-* {{changeRmiRegistry(instanceName, port)}}: change the RMI registry port of an instance.
-* {{changeJavaOpts(instanceName, javaOpts)}}: change the Java options of an instance.
-* {{destroyInstance(instanceName)}}: destroy an instance.
-* {{startInstance(instanceName)}}: start an instance.
-* {{startInstance(instanceName, options)}}: start an instance with the given Java options.
-* {{startInstance(instanceName, options, wait, debug)}}: start an instance with the given Java options.
- If wait is true, this operation is waiting for the instance is in "Started" state. If debug is true, the instance is started in debug mode.
-* {{stopInstance(instanceName)}}: stop an instance.
-* {{renameInstance(instanceName, newInstanceName)}}: rename an instance.
-* {{renameInstance(instanceName, newInstanceName, verbose)}}: rename an instance. If verbose is true, this operation provides details in the log.
-* {{cloneInstance(instanceName, cloneName, sshPort, rmiRegistryPort, rmiServerPort, location, javaOpts)}}: clone an existing instance.
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/jdbc.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/jdbc.conf b/manual/src/main/webapp/users-guide/jdbc.conf
deleted file mode 100644
index 302a9fc..0000000
--- a/manual/src/main/webapp/users-guide/jdbc.conf
+++ /dev/null
@@ -1,212 +0,0 @@
-h1. DataSources (JDBC)
-
-The Apache Karaf DataSources (JDBC) is an optional enterprise feature.
-
-You have to install the {{jdbc}} feature first:
-
-{code}
-karaf@root()> feature:install jdbc
-{code}
-
-This feature provides an OSGi service to create/delete JDBC datasources in the container and perform database operations (SQL queries).
-
-This JDBC OSGi service can be manipulated programmatically (see the developer guide for details), using the {{jdbc:*}} commands, or using the JDBC MBean.
-
-h2. Commands
-
-h3. {{jdbc:create}}
-
-The {{jdbc:create}} command automatically creates a datasource definition file in the Apache Karaf {{deploy}} folder.
-
-The {{jdbc:create}} accepts a set of options and the name argument:
-
-{code}
-karaf@root()> jdbc:create --help
-DESCRIPTION
- jdbc:create
-
- Create a JDBC datasource
-
-SYNTAX
- jdbc:create [options] name
-
-ARGUMENTS
- name
- The JDBC datasource name
-
-OPTIONS
- -u, --username
- The database username
- -v, --version
- The version of the driver to use
- -t, --type
- The JDBC datasource type (generic, MySQL, Oracle, Postgres, H2, HSQL, Derby, MSSQL)
- -url
- The JDBC URL to use
- -p, --password
- The database password
- -i, --install-bundles
- Try to install the bundles providing the JDBC driver
- -d, --driver
- The classname of the JDBC driver to use. NB: this option is used only the type generic
- --help
- Display this help message
-
-{code}
-
-* the {{name}} argument is required. It's the name of the datasource. The name is used to identify the datasource, and to create the datasource definition file ({{deploy/datasource-[name].xml}}).
-* the {{-u}} option is optional. It defines the database username.
-* the {{-v}} option is optional. It "forces" a given JDBC driver version (only used with the {{-i}} option).
-* the {{-t}} option is required. It defines the JDBC datasource type. Accepted values are: MySQL, Oracle, Postgres, Derby, H2, HSQL, MSSQL, Generic. Generic is a generic configuration file using DBCP to create a pooled datasource. When using generic, it's up to you to install the JDBC driver and configure the {{deploy/datasource-[name].xml}} datasource file.
-* the {{-url}} option is optional. It defines the JDBC URL to access to the database.
-* the {{-p}} option is optional. It defines the database password.
-* the {{-d}} option is optional. It defines the JDBC driver classname to use (only used with the generic type).
-* the {{-i}} option is optional. If specified, the command will try to automatically install the OSGi bundles providing the JDBC driver (depending of the datasource type specified by the {{-t}} option).
-
-For instance, to create an embedded Apache Derby database in Apache Karaf, you can do:
-
-{code}
-karaf@root()> jdbc:create -t derby -u test -i test
-{code}
-
-We can note that the Derby bundle has been installed automatically, and the datasource has been created:
-
-{code}
-karaf@root()> la
-...
-87 | Active | 80 | 10.8.2000002.1181258 | Apache Derby 10.8
-88 | Active | 80 | 0.0.0 | datasource-test.xml
-{code}
-
-We can see the {{deploy/datasource-test.xml}} datasource file.
-
-h2. {{jdbc:delete}}
-
-The {{jdbc:delete}} command deletes a datasource by removing the {{deploy/datasource-[name].xml}} datasource file:
-
-{code}
-karaf@root()> jdbc:delete test
-{code}
-
-{warning}
-The {{jdbc:delete}} does not uninstall the JDBC driver bundles and does not remove the files created by the JDBC driver (or the database in case of embedded database).
-It's up to you to remove it.
-{warning}
-
-h2. {{jdbc:datasources}}
-
-The {{jdbc:datasources}} command lists the JDBC datasources:
-
-{code}
-karaf@root()> jdbc:datasources
-Name | Product | Version | URL
-------------------------------------------------------------------
-/jdbc/test | Apache Derby | 10.8.2.2 - (1181258) | jdbc:derby:test
-{code}
-
-h2. {{jdbc:info}}
-
-The {{jdbc:info}} command provides details about a JDBC datasource:
-
-{code}
-karaf@root()> jdbc:info /jdbc/test
-Property | Value
---------------------------------------------------
-driver.version | 10.8.2.2 - (1181258)
-username | APP
-db.version | 10.8.2.2 - (1181258)
-db.product | Apache Derby
-driver.name | Apache Derby Embedded JDBC Driver
-url | jdbc:derby:test
-{code}
-
-h2. {{jdbc:execute}}
-
-The {{jdbc:execute}} command executes a SQL query that doesn't return any result on a given JDBC datasource.
-
-Typically, you can use the {{jdbc:execute}} command to create tables, insert values into tables, etc.
-
-For instance, we can create a {{person}} table on our {{test}} datasource:
-
-{code}
-karaf@root()> jdbc:execute /jdbc/test "create table person(name varchar(100), nick varchar(100))"
-{code}
-
-And we can insert some records in the {{person}} table:
-
-{code}
-karaf@root()> jdbc:execute /jdbc/test "insert into person(name, nick) values('foo','bar')"
-karaf@root()> jdbc:execute /jdbc/test "insert into person(name, nick) values('test','test')"
-{code}
-
-h2. {{jdbc:query}}
-
-The {{jdbc:query}} command is similar to the {{jdbc:execute}} one but it displays the query result.
-
-For instance, to display the content of the {{person}} table, we can do:
-
-{code}
-karaf@root()> jdbc:query /jdbc/test "select * from person"
-NICK | NAME
---------------------------------
-bar | foo
-test | test
-{code}
-
-h2. {{jdbc:tables}}
-
-The {{jdbc:tables}} command displays all tables available on a given JDBC datasource:
-
-{code}
-karaf@root()> jdbc:tables /jdbc/test
-REF_GENERATION | TYPE_NAME | TABLE_NAME | TYPE_CAT | REMARKS | TYPE_SCHEM | TABLE_TYPE | TABLE_SCHEM | TABLE_CAT | SELF_REFERENCING_COL_NAME
-----------------------------------------------------------------------------------------------------------------------------------------------------
- | | SYSALIASES | | | | SYSTEM TABLE | SYS | |
- | | SYSCHECKS | | | | SYSTEM TABLE | SYS | |
- | | SYSCOLPERMS | | | | SYSTEM TABLE | SYS | |
- | | SYSCOLUMNS | | | | SYSTEM TABLE | SYS | |
- | | SYSCONGLOMERATES | | | | SYSTEM TABLE | SYS | |
- | | SYSCONSTRAINTS | | | | SYSTEM TABLE | SYS | |
- | | SYSDEPENDS | | | | SYSTEM TABLE | SYS | |
- | | SYSFILES | | | | SYSTEM TABLE | SYS | |
- | | SYSFOREIGNKEYS | | | | SYSTEM TABLE | SYS | |
- | | SYSKEYS | | | | SYSTEM TABLE | SYS | |
- | | SYSPERMS | | | | SYSTEM TABLE | SYS | |
- | | SYSROLES | | | | SYSTEM TABLE | SYS | |
- | | SYSROUTINEPERMS | | | | SYSTEM TABLE | SYS | |
- | | SYSSCHEMAS | | | | SYSTEM TABLE | SYS | |
- | | SYSSEQUENCES | | | | SYSTEM TABLE | SYS | |
- | | SYSSTATEMENTS | | | | SYSTEM TABLE | SYS | |
- | | SYSSTATISTICS | | | | SYSTEM TABLE | SYS | |
- | | SYSTABLEPERMS | | | | SYSTEM TABLE | SYS | |
- | | SYSTABLES | | | | SYSTEM TABLE | SYS | |
- | | SYSTRIGGERS | | | | SYSTEM TABLE | SYS | |
- | | SYSVIEWS | | | | SYSTEM TABLE | SYS | |
- | | SYSDUMMY1 | | | | SYSTEM TABLE | SYSIBM | |
- | | PERSON | | | | TABLE | APP | |
-{code}
-
-h2. JMX JDBC MBean
-
-The JMX JDBC MBean provides the JDBC datasources, and the operations to manipulate datasources and database.
-
-The object name to use is {{org.apache.karaf:type=jdbc,name=*}}.
-
-h3. Attributes
-
-The {{Datasources}} attribute provides a tabular data of all JDBC datasource, containing:
-
-* {{name}} is the JDBC datasource name
-* {{product}} is the database product backend
-* {{url}} is the JDBC URL used by the datasource
-* {{version}} is the database version backend.
-
-h3. Operations
-
-* {{create(name, type, jdbcDriverClassName, version, url, user, password, installBundles)}} creates a JDBC datasource (the arguments correspond to the options of the {{jdbc:create}} command).
-* {{delete(name)}} deletes a JDBC datasource.
-* {{info(datasource)}} returns a Map (String/String) of details about a JDBC {{datasource}}.
-* {{tables(datasource)}} returns a tabular data containing the tables available on a JDBC {{datasource}}.
-* {{execute(datasource, command}} executes a SQL command on the given JDBC {{datasource}}.
-* {{query(datasource, query}} executes a SQL query on the given JDBC {{datasource}} and return the execution result as tabular data.
-
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/jms.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/jms.conf b/manual/src/main/webapp/users-guide/jms.conf
deleted file mode 100644
index e1fd626..0000000
--- a/manual/src/main/webapp/users-guide/jms.conf
+++ /dev/null
@@ -1,300 +0,0 @@
-h1. MOM (JMS)
-
-The Apache Karaf MOM (Messaging Oriented Middleware/JMS) is an optional enterprise feature.
-
-You have to install the {{jms}} feature first:
-
-{code}
-karaf@root()> feature:install jms
-{code}
-
-The {{jms}} feature doesn't install a JMS broker: it just installs the OSGi service, commands, and MBean to interact with
-a JMS broker (not the broker itself).
-
-It means that you have to install a JMS broker itself.
-
-This JMS broker can be available:
-
-* outside of Apache Karaf, as a standalone broker. In that case, Apache Karaf JMS will remotely connect to the JMS broker.
- For instance, you can use this topology with Apache ActiveMQ or IBM WebsphereMQ.
-* embedded in Apache Karaf. With this topology, Apache Karaf itself provides a JMS broker service. Apache ActiveMQ provides
- a native support in Apache Karaf.
-
-For instance, you can install Apache ActiveMQ directly in Apache Karaf:
-
-{code}
-karaf@root()> feature:repo-add activemq
-Adding feature url mvn:org.apache.activemq/activemq-karaf/LATEST/xml/features
-karaf@root()> feature:install activemq-broker
-{code}
-
-The {{activemq-broker}} feature installs:
-
-* a Apache ActiveMQ broker directly in Apache Karaf, bind to the {{61616}} port number by default.
-* the Apache ActiveMQ WebConsole bound to {{http://0.0.0.0:8181/activemqweb}} by default.
-
-The Apache Karaf {{jms}} feature provides an OSGi service to create/delete JMS connection factories in the container
-and perform JMS operations (send or consume messages, get information about a JMS broker, list the destinations, ...).
-
-This JMS OSGi service can be manipulated programmatically (see the developer guide for details), using the {{jms:*}} commands, or using the JMS MBean.
-
-h2. Commands
-
-h3. {{jms:create}}
-
-The {{jms:create}} command creates a JMS connection factory in the Apache Karaf container. It automatically creates a
-blueprint XML file in the {{deploy}} folder containing the JMS connection factory definition corresponding
-to the type that you mentioned.
-
-The {{jms:create}} command accepts different arguments and options:
-
-{code}
-karaf@root()> jms:create --help
-DESCRIPTION
- jms:create
-
- Create a JMS connection factory.
-
-SYNTAX
- jms:create [options] name
-
-ARGUMENTS
- name
- The JMS connection factory name
-
-OPTIONS
- -t, --type
- The JMS connection factory type (ActiveMQ or WebsphereMQ)
- (defaults to ActiveMQ)
- -u, --username
- Username to connect to the JMS broker
- (defaults to karaf)
- --help
- Display this help message
- --url
- URL of the JMS broker. For WebsphereMQ type, the URL is hostname/port/queuemanager/channel
- (defaults to tcp://localhost:61616)
- -p, --password
- Password to connect to the JMS broker
- (defaults to karaf)
-
-{code}
-
-* the {{name}} argument is required. It's the name of the JMS connection factory. The name is used to identify the connection factory, and to create the connection factory definition file ({{deploy/connectionfactory-[name].xml}}).
-* the {{-t}} ({{--type}}) option is required. It's the type of the JMS connection factory. Currently on {{activemq}} and {{webspheremq}} type are supported. If you want to use another type of JMS connection factory, you can create the {{deploy/connectionfactory-[name].xml}} file by hand (using one as template).
-* the {{--url}} option is required. It's the URL used by the JMS connection factory to connect to the broker. If the type is {{activemq}}, the URL looks like {{tcp://localhost:61616}}. If the type is {{webspheremq}}, the URL looks like {{host/port/queuemanager/channel}}.
-* the {{-u}} ({{--username}}) option is optional (karaf by default). In the case of the broker requires authentication, it's the username used.
-* the {{-p}} ({{--password}}) option is optional (karaf by default). In the case of the broker requires authentication, it's the password used.
-
-For instance, to create a JMS connection factory for a Apache ActiveMQ broker, you can do:
-
-{code}
-karaf@root()> jms:create -t activemq --url tcp://localhost:61616 test
-{code}
-
-{warning}
-The {{jms:create}} command doesn't install any feature or bundle providing the JMS connection factory classes (and dependencies).
-You have to install the required features (for instance {{activemq-broker}} feature for Apache ActiveMQ), or bundles (for IBM WebsphereMQ) providing the JMS connection factory packages and classes.
-{warning}
-
-In the previous example, we assume that you previously installed the {{activemq-broker}} feature.
-
-We can see the created JMS connection factory:
-
-{code}
-karaf@root()> la
-...
-151 | Active | 80 | 0.0.0 | connectionfactory-test.xml
-{code}
-
-The {{connectionfactory-test.xml}} file has been created in the {{deploy}} folder.
-
-By default, the {{jms:create}} command constructs a JNDI name for the connection factory: {{/jms/[name]}}.
-
-It means that the connection factory name to use for the other {{jms:*}} commands is {{/jms/[name]}}.
-
-h3. {{jms:delete}}
-
-The {{jms:delete}} command deletes a JMS connection factory. The {{name}} argument is the name that you used at creation time:
-
-{code}
-karaf@root()> jms:delete test
-{code}
-
-h3. {{jms:connectionfactories}}
-
-The {{jms:connectionfactories}} command lists the JMS connection factories:
-
-{code}
-karaf@root()> jms:connectionfactories
-JMS Connection Factory
-----------------------
-/jms/test
-{code}
-
-h3. {{jms:info}}
-
-The {{jms:info}} command provides details about the JMS connection factory:
-
-{code}
-karaf@root()> jms:info /jms/test
-Property | Value
--------------------
-product | ActiveMQ
-version | 5.9.0
-{code}
-
-You can see the JMS broker product and version.
-
-If the JMS broker requires an authentication, you can use the {{-u}} ({{--username}}) and {{-p}} ({{--password}}) options.
-
-h3. {{jms:queues}}
-
-The {{jms:queues}} command lists the JMS queues available on a JMS broker. For instance:
-
-{code}
-karaf@root()> jms:queues /jms/test
-JMS Queues
-----------
-MyQueue
-{code}
-
-where {{/jms/test}} is the name of the JMS connection factory.
-
-If the JMS broker requires an authentication, you can use the {{-u}} ({{--username}}) and {{-p}} ({{--password}}) options.
-
-{warning}
-Depending of the JMS connection factory type, this command may not work.
-For now, the command works only with Apache ActiveMQ.
-{warning}
-
-h3. {{jms:topics}}
-
-The {{jms:topics}} command lists the JMS topics available on a JMS broker. For instance:
-
-{code}
-karaf@root()> jms:topics /jms/test
-JMS Topics
-----------
-MyTopic
-{code}
-
-where {{/jms/test}} is the name of the JMS connection factory.
-
-If the JMS broker requires an authentication, you can use the {{-u}} ({{--username}}) and {{-p}} ({{--password}}) options.
-
-{warning}
-Depending of the JMS connection factory type, this command may not work.
-For now, the command works only with Apache ActiveMQ.
-{warning}
-
-h3. {{jms:send}}
-
-The {{jms:send}} command sends a message to a given JMS queue.
-
-For instance, to send a message containing {{Hello World}} in the {{MyQueue}} queue, you can do:
-
-{code}
-karaf@root()> jms:send /jms/test MyQueue "Hello World"
-{code}
-
-If the JMS broker requires an authentication, you can use the {{-u}} ({{--username}}) and {{-p}} ({{--password}}) options.
-
-h3. {{jms:consume}}
-
-The {{jms:consume}} command consumes messages from a JMS queue.
-
-For instance, to consume all messages from {{MyQueue}}, you can do:
-
-{code}
-karaf@root()> jms:consume /jms/test MyQueue
-2 message(s) consumed
-{code}
-
-If you want to consume only some messages, you can define a selector using the {{-s}} ({{--selector}}) option.
-
-If the JMS broker requires an authentication, you can use the {{-u}} ({{--username}}) and {{-p}} ({{--password}}) options.
-
-{warning}
-The {{jms:consume}} command just consumes (so removes) messages from a JMS queue. It doesn't display the messages.
-If you want to see the details of messages, you can use the {{jms:browse}} command.
-{warning}
-
-h3. {{jms:count}}
-
-The {{jms:count}} command counts the number of pending messages into a JMS queue.
-
-For instance, if you want to know the number of messages on {{MyQueue}}, you can do:
-
-{code}
-karaf@root()> jms:count /jms/test MyQueue
-Messages Count
---------------
-8
-{code}
-
-If the JMS broker requires an authentication, you can use the {{-u}} ({{--username}}) and {{-p}} ({{--password}}) options.
-
-h3. {{jms:browse}}
-
-The {{jms:browse}} command browses a JMS queue and display details about messages.
-
-For instance, to browse the {{MyQueue}} queue:
-
-{code}
-karaf@root()> jms:browse /jms/test MyQueue
-Message ID | Content | Charset | Type | Correlation ID | Delivery Mode | Destination | Expiration | Priority | Redelivered | ReplyTo | Timestamp
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-ID:vostro-59602-1387462183019-3:1:1:1:1 | Hello World | UTF-8 | | | Persistent | queue://MyQueue | Never | 4 | false | | Thu Dec 19 15:10:12 CET 2013
-ID:vostro-59602-1387462183019-3:2:1:1:1 | Hello ActiveMQ | UTF-8 | | | Persistent | queue://MyQueue | Never | 4 | false | | Thu Dec 19 15:10:16 CET 2013
-ID:vostro-59602-1387462183019-3:3:1:1:1 | Hello Karaf | UTF-8 | | | Persistent | queue://MyQueue | Never | 4 | false | | Thu Dec 19 15:10:19 CET 2013
-{code}
-
-By default, the messages properties are not displayed. You can use the {{-v}} ({{--verbose}}) option to display the properties:
-
-{code}
-karaf@root()> jms:browse -v /jms/test MyQueue
-Message ID | Content | Charset | Type | Correlation ID | Delivery Mode | Destination | Expiration | Priority | Redelivered | ReplyTo | Timestamp | Properties
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
-ID:vostro-59602-1387462183019-3:1:1:1:1 | Hello World | UTF-8 | | | Persistent | queue://MyQueue | Never | 4 | false | | Thu Dec 19 15:10:12 CET 2013 |
-ID:vostro-59602-1387462183019-3:2:1:1:1 | Hello ActiveMQ | UTF-8 | | | Persistent | queue://MyQueue | Never | 4 | false | | Thu Dec 19 15:10:16 CET 2013 |
-ID:vostro-59602-1387462183019-3:3:1:1:1 | Hello Karaf | UTF-8 | | | Persistent | queue://MyQueue | Never | 4 | false | | Thu Dec 19 15:10:19 CET 2013 |
-{code}
-
-If you want to browse only some messages, you can define a selector using the {{-s}} ({{--selector}}) option.
-
-If the JMS broker requires an authentication, you can use the {{-u}} ({{--username}}) and {{-p}} ({{--password}}) options.
-
-h3. {{jms:move}}
-
-The {{jms:move}} command consumes all messages from a JMS queue and send it to another one.
-
-For instance, to move all messages from {{MyQueue}} queue to {{AnotherQueue}} queue, you can do:
-
-{code}
-karaf@root()> jms:move /jms/test MyQueue AnotherQueue
-3 message(s) moved
-{code}
-
-h2. JMX JMS MBean
-
-The JMX JMS MBean provides the attributes and operations to manipulate the JMS connection factories and JMS messages.
-
-The object name to use is {{org.apache.karaf:type=jms,name=*}}.
-
-h3. Attributes
-
-The {{Connectionfactories}} attribute provides the list of all JMS connection factories names.
-
-h3. Operations
-
-* {{create(name, type, url)}} creates a JMS connection factory.
-* {{delete(name)}} deletes a JMS connection factory.
-* {{Map<String, String> info(connectionFactory, username, password)}} gets details about a JMS connection factory and broker.
-* {{int count(connectionFactory, queue, username, password)}} counts the number of pending messages on a JMS queue.
-* {{List<String> queues(connectionFactory, username, password)}} lists the JMS queues available on the JMS broker.
-* {{List<String> topics(connectionFactory, username, password)}} lists the JMS topics available on the JMS broker.
-* {{TabularData browse(connectionFactory, queue, selector, username, password)}} browses a JMS queue and provides a table of JMS messages.
-* {{send(connectionFactory, queue, content, replyTo, username, password)}} sends a JMS message to a target queue.
-* {{int consume(connectionFactory, queue, selector, username, password)}} consumes JMS messages from a JMS queue.
-* {{int move(connectionFactory, source, destination, selector, username, password)}} moves messages from a JMS queue to another.
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/jndi.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/jndi.conf b/manual/src/main/webapp/users-guide/jndi.conf
deleted file mode 100644
index af40bf5..0000000
--- a/manual/src/main/webapp/users-guide/jndi.conf
+++ /dev/null
@@ -1,205 +0,0 @@
-h1. Naming (JNDI)
-
-The Apache Karaf Naming (JNDI) is an optional enterprise feature.
-
-You have to install the {{jndi}} feature first:
-
-{code}
-karaf@root()> feature:install jndi
-{code}
-
-Apache Karaf provides a complete JNDI support.
-
-You have two parts in the Apache Karaf JNDI support:
-
-* a fully compliant implementation of the OSGi Alliance JNDI Service specification.
-* a more "regular" JNDI context, containing different names that you can administrate.
-
-h2. OSGi Services Registry and JNDI
-
-The OSGi Service Registry provides a centralized register/query capabilities for OSGi services.
-
-A common pattern outside of OSGi is to make use of JNDI API to access services from a directory system.
-The OSGi service registry can be viewed as an example of such a system.
-
-Apache Karaf supports the {{osgi:service}} lookup scheme as defined by the JNDI Service Specification.
-
-The schema is:
-
-{code}
-osgi:service/<interface>[/<filter>]
-{code}
-
-For instance, you can directly use JNDI to get a OSGi service:
-
-{code}
-Context ctx = new InitialContext();
-Runnable r = (Runnable) ctx.lookup("osgi:service/java.lang.Runnable");
-{code}
-
-h2. JNDI service
-
-Apache Karaf also supports regular JNDI, including a directoy system where you can register name bindings, sub-context, etc.
-
-It supports the standard JNDI API:
-
-{code}
-Context ctx = new InitialContext();
-Runnable r = (Runnable) ctx.lookup("this/is/the/name");
-{code}
-
-It also allows you to bind some OSGi services as "pure" JNDI name. In that case, you don't have to use the specific
-{{osgi:service}} scheme.
-
-h2. Commands
-
-Apache Karaf provides specific commands to manipulate the JNDI service.
-
-h3. {{jndi:names}}
-
-The {{jndi:names}} command lists all JNDI names. It groups both the JNDI names from the {{osgi:service}} scheme and the
-regular JNDI names:
-
-{code}
-karaf@root()> jndi:names
-JNDI Name | Class Name
-------------------------------------------------------------------
-osgi:service/jndi | org.apache.karaf.jndi.internal.JndiServiceImpl
-jndi/service | org.apache.karaf.jndi.internal.JndiServiceImpl
-{code}
-
-We can see here the {{osgi:service/jndi}} name (using the {{osgi:service}} scheme) and {{jndi/service}} name (using the
-regular JNDI service).
-
-The {{jndi:names}} command accepts an optional {{context}} argument to list names on the given context.
-
-For instance, you can list only names in the {{jndi}} sub-context:
-
-{code}
-karaf@root()> jndi:names jndi
-JNDI Name | Class Name
-----------------------------------------------------------
-service | org.apache.karaf.jndi.internal.JndiServiceImpl
-{code}
-
-{warning}
-The {{jndi:names}} lists only names (the full qualified name). It means that the empty JNDI sub-contexts are not displayed.
-To display all JNDI sub-contexts (empty or not), you can use the {{jndi:contexts}} command.
-{warning}
-
-h3. {{jndi:contexts}}
-
-The {{jndi:contexts}} command lists all JNDI sub-contexts:
-
-{code}
-karaf@root()> jndi:contexts
-JNDI Sub-Context
-----------------
-other/context
-foo/bar
-{code}
-
-h3. {{jndi:create}}
-
-The {{jndi:create}} command creates a new JNDI sub-context:
-
-{code}
-karaf@root()> jndi:create my/company
-{code}
-
-h3. {{jndi:delete}}
-
-The {{jndi:delete}} command deletes a JNDI sub-context:
-
-{code}
-karaf@root()> jndi:delete my/company
-{code}
-
-h3. {{jndi:alias}}
-
-The {{jndi:alias}} command creates a new JNDI name (alias) with an existing one.
-
-The existing JNDI name can be a regular one:
-
-{code}
-karaf@root()> jndi:alias bean/services/jndi aliases/services/jndi
-karaf@root()> jndi:names
-JNDI Name | Class Name
-----------------------------------------------------------------------
-osgi:service/jndi | org.apache.karaf.jndi.internal.JndiServiceImpl
-bean/services/jndi | org.apache.karaf.jndi.internal.JndiServiceImpl
-aliases/services/jndi | org.apache.karaf.jndi.internal.JndiServiceImpl
-{code}
-
-or a name from the {{osgi:service}} schema:
-
-{code}
-karaf@root()> jndi:alias osgi:service/jndi alias/jndi/service
-karaf@root()> jndi:names
-JNDI Name | Class Name
--------------------------------------------------------------------
-osgi:service/jndi | org.apache.karaf.jndi.internal.JndiServiceImpl
-alias/jndi/service | org.apache.karaf.jndi.internal.JndiServiceImpl
-{code}
-
-NB: the {{jndi:alias}} automatically creates all required JNDI sub-contexts.
-
-h3. {{jndi:bind}}
-
-The {{jndi:bind}} command binds an OSGi service with a JNDI name.
-
-The {{jndi:bind}} command requires an OSGi service ID and a JNDI name. The OSGi service ID can be found using the {{service:list}} command.
-
-For instance, we can bind the OSGi service with ID 344 with the JNDI name {{services/kar}}:
-
-{code}
-karaf@root()> jndi:bind 344 services/kar
-karaf@root()> jndi:names
-JNDI Name | Class Name
--------------------------------------------------------------------------------
-osgi:service/jndi | org.apache.karaf.jndi.internal.JndiServiceImpl
-services/kar | org.apache.karaf.kar.internal.KarServiceImpl
-{code}
-
-h3. {{jndi:unbind}}
-
-The {{jndi:unbind}} command unbind a given JNDI name:
-
-{code}
-karaf@root()> jndi:names
-JNDI Name | Class Name
--------------------------------------------------------------------------------
-osgi:service/jndi | org.apache.karaf.jndi.internal.JndiServiceImpl
-services/kar | org.apache.karaf.kar.internal.KarServiceImpl
-karaf@root()> jndi:unbind services/kar
-karaf@root()> jndi:names
-JNDI Name | Class Name
--------------------------------------------------------------------------------
-osgi:service/jndi | org.apache.karaf.jndi.internal.JndiServiceImpl
-{code}
-
-{warning}
-It's not possible to unbind a name from the {{osgi:service}} schema, as it's linked to a OSGi service.
-{warning}
-
-h2. JMX JndiMBean
-
-The JMX JndiMBean provides the JNDI names, and the operations to manipulate the JNDI service.
-
-The object name to use is {{org.apache.karaf:type=jndi,name=*}}.
-
-h3. Attributes
-
-The {{Names}} attribute provides a map containing all JNDI names and class names from both {{osgi:service}} scheme
-and the regular JNDI service.
-
-The {{Contexts}} attribute provides a list containing all JNDI sub-contexts.
-
-h3. Operations
-
-* {{getNames(context)}} provides a map containing JNDI names and class names in a given JNDI sub-context.
-* {{create(context)}} creates a new JNDI sub-context.
-* {{delete(context)}} deletes a JNDI sub-context.
-* {{alias(name, alias}} creates a JNDI name (alias) for a given one.
-* {{bind(serviceId, name}} binds a JNDI name using an OSGi service (identified by its ID).
-* {{unbind(name)}} unbinds a JNDI name.
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/jpa.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/jpa.conf b/manual/src/main/webapp/users-guide/jpa.conf
deleted file mode 100644
index 1e3d6fb..0000000
--- a/manual/src/main/webapp/users-guide/jpa.conf
+++ /dev/null
@@ -1,26 +0,0 @@
-h1. Persistence (JPA)
-
-Apache Karaf provides JPA persistence providers (such as Apache OpenJPA) to be easy to use (in a OSGi way) and provide
-container managed persistence for applications (using Blueprint).
-
-Apache Karaf embeds Aries JPA, providing a very easy way to develop applications that use JPA persistence.
-
-See the developer guide for details about developing applications that use JPA.
-
-h2. Persistence engine features
-
-Apache Karaf provides a set of ready to use persistence engine features:
-
-* Apache OpenJPA. The {{openjpa}} feature installs the {{jpa}} feature with the Apache OpenJPA as persistence engine:
-
-{code}
-karaf@root()> feature:install openjpa
-{code}
-
-* Hibernate. The {{hibernate}} feature installs the {{jpa}} feature with the Hibernate persistence engine:
-
-{code}
-karaf@root()> feature:install hibernate
-{code}
-
-* EclipseLink. The {{eclipselink}} feature will be available in the next Apache Karaf release.
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/jta.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/jta.conf b/manual/src/main/webapp/users-guide/jta.conf
deleted file mode 100644
index 3a21b5d..0000000
--- a/manual/src/main/webapp/users-guide/jta.conf
+++ /dev/null
@@ -1,105 +0,0 @@
-h1. Transaction (JTA)
-
-Apache Karaf provides container managed transactions, available as OSGi services.
-
-As most of the enterprise features, it's an optional feature that you can install with:
-
-{code}
-karaf@root()> feature:install transaction
-{code}
-
-However, the {{transaction}} feature is installed (as a transitive dependency) when installing enterprise features
-(like {{jdbc}} or {{jms}} features for instance).
-
-h2. Apache Aries Transaction and ObjectWeb HOWL
-
-The {{transaction}} feature uses Apache Aries and ObjectWeb HOWL. Aapache Aries Transaction "exposes" the transaction
-manager as OSGi service. The actual implementation of the transaction manager is ObjectWeb HOWL.
-
-ObjectWeb HOWL is a logger implementation providing features required by the ObjectWeb JOTM project, with a public API
-that is generally usable by any Transaction Manager.
-ObjectWeb HOWL uses unformatted binary logs to maximize performance and specifies a journalization API with methods
-necessary to support JOTM recovery operations.
-
-ObjectWeb HOWL is intended to be used for logging of temporary data such as XA transaction events.
-It is not a replacement for traditional log kits such as LOG4J and Java SE Logging.
-
-In Apache Karaf, ObjectWeb HOWL (High-speed ObjectWeb Logger) is used to implement TransactionLog (in Aries Transaction),
-providing a very performant transaction manager in an OSGi way.
-
-h2. Configuration
-
-The installation of the {{transaction}} feature installs a new configuration: {{org.apache.aries.transaction}}.
-
-You can see the configuration properties using:
-
-{code}
-karaf@root()> config:list "(service.pid=org.apache.aries.transaction)"
-----------------------------------------------------------------
-Pid: org.apache.aries.transaction
-BundleLocation: mvn:org.apache.aries.transaction/org.apache.aries.transaction.manager/1.1.0
-Properties:
- aries.transaction.recoverable = true
- aries.transaction.timeout = 600
- service.pid = org.apache.aries.transaction
- org.apache.karaf.features.configKey = org.apache.aries.transaction
- aries.transaction.howl.maxBlocksPerFile = 512
- aries.transaction.howl.maxLogFiles = 2
- aries.transaction.howl.logFileDir = /opt/apache-karaf-3.0.0/data/txlog
- aries.transaction.howl.bufferSizeKBytes = 4
-{code}
-
-* {{aries.transaction.recoverable}} property is a flag to enable support of recoverable resource or not. A recoverable
- resource is a transactional object whose state is saved to stable storage if the transaction is committed, and whose
- state can be reset to what it was at the beginning of the transaction if the transaction is rolled back.
- At commit time, the transaction manager uses the two-phase XA protocol when communicating with the recoverable resource
- to ensure transactional integrity when more than one recoverable resource is involved in the transaction being committed.
- Transactional databases and message brokers like Apache ActiveMQ are examples of recoverable resources.
- A recoverable resource is represented using the javax.transaction.xa.XAResource interface in JTA.
- Default is {{true}}.
-* {{aries.transaction.timeout}} property is the transaction timeout. If a transaction has a lifetime longer than this timeout
- a transaction exception is raised and the transaction is rollbacked. Default is {{600}} (10 minutes).
-* {{aries.transaction.howl.logFileDir}} property is the directory where the transaction logs (journal) are stored.
- Default is {{KARAF_DATA/txlog}}.
-* {{aries.transaction.howl.maxLogFiles}} property is the maximum number of transaction log files to retain. Combined with the
- {{aries.transaction.howl.maxBlocksPerFile}}, it defines the transaction retention.
-
-You can change the configuration directly using the {{config:*}} commands, or the Config MBean.
-
-For instance, to increase the transaction timeout, you can do:
-
-{code}
-karaf@root()> config:edit org.apache.aries.transaction
-karaf@root()> config:property-set aries.transaction.timeout 1200
-karaf@root()> config:update
-karaf@root()> config:list "(service.pid=org.apache.aries.transaction)"
-----------------------------------------------------------------
-Pid: org.apache.aries.transaction
-BundleLocation: mvn:org.apache.aries.transaction/org.apache.aries.transaction.manager/1.1.0
-Properties:
- aries.transaction.recoverable = true
- aries.transaction.timeout = 1200
- service.pid = org.apache.aries.transaction
- org.apache.karaf.features.configKey = org.apache.aries.transaction
- aries.transaction.howl.maxBlocksPerFile = 512
- aries.transaction.howl.maxLogFiles = 2
- aries.transaction.howl.logFileDir = /opt/apache-karaf-3.0.0/data/txlog
- aries.transaction.howl.bufferSizeKBytes = 4
-{code}
-
-{warning}
-The {{transaction}} feature defines the configuration in memory by default. It means that changes that you can do will
-be lost in case of Apache Karaf restart.
-If you want to define your own transaction configuration at startup, you have to create a {{etc/org.apache.aries.transaction.cfg}}
-configuration file and set the properties and values in the file. For instance:
-
-{code}
-# etc/org.apache.aries.transaction.cfg
-aries.transaction.recoverable = true
-aries.transaction.timeout = 1200
-aries.transaction.howl.maxBlocksPerFile = 512
-aries.transaction.howl.maxLogFiles = 2
-aries.transaction.howl.logFileDir = /opt/apache-karaf-3.0.0/data/txlog
-aries.transaction.howl.bufferSizeKBytes = 4
-{code}
-{warning}
http://git-wip-us.apache.org/repos/asf/karaf/blob/9f08eb9e/manual/src/main/webapp/users-guide/kar.conf
----------------------------------------------------------------------
diff --git a/manual/src/main/webapp/users-guide/kar.conf b/manual/src/main/webapp/users-guide/kar.conf
deleted file mode 100644
index 57c06a3..0000000
--- a/manual/src/main/webapp/users-guide/kar.conf
+++ /dev/null
@@ -1,297 +0,0 @@
-h1. KAR
-
-As described in the [Provisioning section|provisioning], Apache Karaf features describe applications.
-
-A feature defines different resources to resolve using URL (for instance, bundles URLs, or configuration files URLs).
-As described in the [Artifacts repositories and URLs section|urls], Apache Karaf looks for artifacts (bundles,
-configuration files, ...) in the artifact repositories.
-Apache Karaf may require to download artifacts from remote repositories.
-
-Apache Karaf provides a special type of artifact that package a features XML and all resources described in the features
-of this XML. This artifact is named a KAR (KAraf aRchive).
-
-A KAR file is a zip archive containing the
-
-Basically, the kar format is a jar (so a zip file) which contains a set of feature descriptor and bundle jar files.
-
-A KAR file contains a {{repository}} folder containing:
-
-* a set of features XML files
-* the artifacts following the Maven directory structure ({{groupId/artifactId/version/artifactId-version.type}}).
-
-For instance, the {{spring-3.0.0.kar}} contains:
-
-{code}
-~$ unzip -l spring-3.0.0.kar
-Archive: spring-3.0.0.kar
- Length Date Time Name
---------- ---------- ----- ----
- 143 2013-12-06 10:52 META-INF/MANIFEST.MF
- 12186 2013-12-06 10:52 repository/org/apache/karaf/features/spring/3.0.0/spring-3.0.0-features.xml
- 575389 2013-12-06 10:52 repository/commons-collections/commons-collections/3.2.1/commons-collections-3.2.1.jar
- 232019 2013-12-06 10:52 repository/commons-beanutils/commons-beanutils/1.8.3/commons-beanutils-1.8.3.jar
- 673109 2013-12-06 10:52 repository/org/apache/servicemix/bundles/org.apache.servicemix.bundles.struts/1.3.10_1/org.apache.servicemix.bundles.struts-1.3.10_1.jar
- 37084 2013-12-06 10:52 repository/org/springframework/org.springframework.web.struts/3.2.4.RELEASE/org.springframework.web.struts-3.2.4.RELEASE.jar
- 7411 2013-12-06 10:52 repository/org/springframework/org.springframework.instrument/3.2.4.RELEASE/org.springframework.instrument-3.2.4.RELEASE.jar
- 246881 2013-12-06 10:52 repository/org/springframework/org.springframework.transaction/3.2.4.RELEASE/org.springframework.transaction-3.2.4.RELEASE.jar
- 16513 2013-12-06 10:52 repository/org/apache/servicemix/bundles/org.apache.servicemix.bundles.aopalliance/1.0_6/org.apache.servicemix.bundles.aopalliance-1.0_6.jar
- 881124 2013-12-06 10:52 repository/org/springframework/org.springframework.core/3.2.4.RELEASE/org.springframework.core-3.2.4.RELEASE.jar
- 199240 2013-12-06 10:52 repository/org/springframework/org.springframework.expression/3.2.4.RELEASE/org.springframework.expression-3.2.4.RELEASE.jar
- 614646 2013-12-06 10:52 repository/org/springframework/org.springframework.beans/3.2.4.RELEASE/org.springframework.beans-3.2.4.RELEASE.jar
- 340841 2013-12-06 10:52 repository/org/springframework/org.springframework.aop/3.2.4.RELEASE/org.springframework.aop-3.2.4.RELEASE.jar
- 877369 2013-12-06 10:52 repository/org/springframework/org.springframework.context/3.2.4.RELEASE/org.springframework.context-3.2.4.RELEASE.jar
- 130224 2013-12-06 10:52 repository/org/springframework/org.springframework.context.support/3.2.4.RELEASE/org.springframework.context.support-3.2.4.RELEASE.jar
- 30640 2013-12-06 10:52 repository/org/apache/karaf/deployer/org.apache.karaf.deployer.spring/3.0.0/org.apache.karaf.deployer.spring-3.0.0.jar
- 51951 2013-12-06 10:52 repository/org/springframework/org.springframework.aspects/3.2.4.RELEASE/org.springframework.aspects-3.2.4.RELEASE.jar
- 411175 2013-12-06 10:52 repository/org/springframework/org.springframework.jdbc/3.2.4.RELEASE/org.springframework.jdbc-3.2.4.RELEASE.jar
- 48049 2013-12-06 10:52 repository/javax/portlet/portlet-api/2.0/portlet-api-2.0.jar
- 190883 2013-12-06 10:52 repository/org/springframework/org.springframework.web.portlet/3.2.4.RELEASE/org.springframework.web.portlet-3.2.4.RELEASE.jar
- 635680 2013-12-06 10:52 repository/org/springframework/org.springframework.web/3.2.4.RELEASE/org.springframework.web-3.2.4.RELEASE.jar
- 645946 2013-12-06 10:52 repository/org/springframework/org.springframework.web.servlet/3.2.4.RELEASE/org.springframework.web.servlet-3.2.4.RELEASE.jar
- 464911 2013-12-06 10:52 repository/org/springframework/org.springframework.test/3.2.4.RELEASE/org.springframework.test-3.2.4.RELEASE.jar
- 69784 2013-12-06 10:52 repository/org/springframework/osgi/spring-osgi-web/1.2.1/spring-osgi-web-1.2.1.jar
- 16030 2013-12-06 10:52 repository/org/apache/geronimo/specs/geronimo-jta_1.1_spec/1.1.1/geronimo-jta_1.1_spec-1.1.1.jar
- 32359 2013-12-06 10:52 repository/org/apache/geronimo/specs/geronimo-jms_1.1_spec/1.1.1/geronimo-jms_1.1_spec-1.1.1.jar
- 208684 2013-12-06 10:52 repository/org/springframework/org.springframework.jms/3.2.4.RELEASE/org.springframework.jms-3.2.4.RELEASE.jar
- 75672 2013-12-06 10:52 repository/org/springframework/org.springframework.oxm/3.2.4.RELEASE/org.springframework.oxm-3.2.4.RELEASE.jar
- 393607 2013-12-06 10:52 repository/org/springframework/org.springframework.orm/3.2.4.RELEASE/org.springframework.orm-3.2.4.RELEASE.jar
- 338559 2013-12-06 10:52 repository/org/apache/servicemix/bundles/org.apache.servicemix.bundles.cglib/3.0_1/org.apache.servicemix.bundles.cglib-3.0_1.jar
- 35859 2013-12-06 10:52 repository/org/springframework/osgi/spring-osgi-io/1.2.1/spring-osgi-io-1.2.1.jar
- 362889 2013-12-06 10:52 repository/org/springframework/osgi/spring-osgi-core/1.2.1/spring-osgi-core-1.2.1.jar
- 120822 2013-12-06 10:52 repository/org/springframework/osgi/spring-osgi-extender/1.2.1/spring-osgi-extender-1.2.1.jar
- 24231 2013-12-06 10:52 repository/org/springframework/osgi/spring-osgi-annotation/1.2.1/spring-osgi-annotation-1.2.1.jar
- 12597 2013-12-06 10:52 repository/org/apache/karaf/bundle/org.apache.karaf.bundle.springstate/3.0.0/org.apache.karaf.bundle.springstate-3.0.0.jar
- 31903 2013-12-06 10:52 repository/org/eclipse/gemini/blueprint/gemini-blueprint-io/1.0.0.RELEASE/gemini-blueprint-io-1.0.0.RELEASE.jar
- 578205 2013-12-06 10:52 repository/org/eclipse/gemini/blueprint/gemini-blueprint-core/1.0.0.RELEASE/gemini-blueprint-core-1.0.0.RELEASE.jar
- 178525 2013-12-06 10:52 repository/org/eclipse/gemini/blueprint/gemini-blueprint-extender/1.0.0.RELEASE/gemini-blueprint-extender-1.0.0.RELEASE.jar
---------- -------
- 9803140 38 files
-{code}
-
-As a KAR file is a simple zip file, you can create the KAR file by hand.
-
-For instance, the following Unix commands create a very simple KAR file:
-
-{code}
-~$ mkdir repository
-~$ cp /path/to/features.xml repository/features.xml
-~$ cp /path/to/my.jar repository/my/project/my/1.0.0/my-1.0.0.jar
-~$ zip -r my.kar repository
-updating: repository/ (stored 0%)
- adding: repository/my/project/my/1.0.0/my-1.0.0.jar (deflated 0%)
-{code}
-
-You can create KAR files using Apache Maven, or directly in the Apache Karaf console.
-
-h2. Maven
-
-Apache Karaf provides a Maven plugin: {{karaf-maven-plugin}}.
-
-The Apache Karaf Maven plugin provides the {{features-create-kar}} goal.
-
-The {{features-create-kar}} goal does:
-1. Reads all features specified in the features XML.
-2. For each feature described in the features XML, the goal resolves the bundles described in the feature.
-3. The goal finally packages the features XML, and the resolved bundles in a zip file.
-
-You can also use the Karaf maven plugin. The features maven plugin provides an features-create-kar goal.
-
-The features-create-kar goal:
-1. Reads all features specified in the features descriptor.
-2. For each feature, it resolves the bundles defined in the feature.
-3. All bundles are packaged into the kar archive.
-
-For instance, the following Maven POM create {{my-kar.kar}}
-
-For instance, you can use the following POM to create a kar:
-
-{code:lang=xml}
-<?xml version="1.0" encoding="UTF-8"?>
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
-
- <modelVersion>4.0.0</modelVersion>
-
- <groupId>my.groupId</groupId>
- <artifactId>my-kar</artifactId>
- <version>1.0</version>
- <packaging>pom</packaging>
-
- <build>
- <plugins>
- <plugin>
- <groupId>org.apache.karaf.tooling</groupId>
- <artifactId>karaf-maven-plugin</artifactId>
- <version>3.0.0</version>
- <executions>
- <execution>
- <id>features-create-kar</id>
- <goals>
- <goal>features-create-kar</goal>
- </goals>
- <configuration>
- <featuresFile>src/main/resources/features.xml</featuresFile>
- </configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
-
-</project>
-{code}
-
-To create the KAR file, simply type:
-
-{code}
-~$ mvn install
-{code}
-
-Uou will have your kar in the {{target}} directory.
-
-h2. Commands
-
-Apache Karaf provides {{kar:*}} commands to manage KAR archives.
-
-h3. {{kar:list}}
-
-The {{kar:list}} command lists the installed KAR archives.
-
-{code}
-karaf@root()> kar:list
-KAR Name
--------------------
-my-kar-1.0-SNAPSHOT
-{code}
-
-A KAR is identified by its name.
-
-h3. {{kar:create}}
-
-Instead of using the {{karaf-maven-plugin}} or create the KAR archive by hand, you can use the {{kar:create}} command.
-
-The {{kar:create}} command creates a KAR file using a registered features repository.
-
-For instance, you want to create a KAR file for the Pax Web repository.
-
-The {{feature:repo-list}} command gives you the list of registered features repositories:
-
-{code}
-karaf@root()> feature:repo-list
-Repository | URL
--------------------------------------------------------------------------------------------------------
-standard-3.0.0 | mvn:org.apache.karaf.features/standard/3.0.0/xml/features
-enterprise-3.0.0 | mvn:org.apache.karaf.features/enterprise/3.0.0/xml/features
-spring-3.0.0 | mvn:org.apache.karaf.features/spring/3.0.0/xml/features
-org.ops4j.pax.web-3.0.5 | mvn:org.ops4j.pax.web/pax-web-features/3.0.5/xml/features
-{code}
-
-You can use one of these features repositories to create the kar file:
-
-{code}
-karaf@root()> kar:create org.ops4j.pax.web-3.0.5
-Adding feature pax-war
-Adding feature pax-http-whiteboard
-Adding feature pax-jetty
-Adding feature pax-tomcat
-Adding feature pax-http
-Kar file created : /opt/apache-karaf-3.0.0/data/kar/org.ops4j.pax.web-3.0.5.kar
-{code}
-
-You can see that the KAR file has been created in the {{KARAF_DATA/kar}} folder.
-
-By default, the {{kar:create}} command creates a KAR file, packaging all features in the features descriptor.
-
-You can provide the list of features that you want to package into the KAR file:
-
-{code}
-karaf@root()> kar:create org.ops4j.pax.web-3.0.5 pax-jetty pax-tomcat
-Adding feature pax-jetty
-Adding feature pax-tomcat
-Kar file created : /opt/apache-karaf-3.0.0/data/kar/org.ops4j.pax.web-3.0.5.kar
-{code}
-
-h3. {{kar:install}}
-
-You can deploy a KAR file using {{kar:install}} command.
-
-The {{kar:install}} command expects the KAR URL. Any URL described in the [Artifacts repositories and URLs section|urls]
-is supported by the {{kar:install}} command:
-
-{code}
-karaf@root()> kar:install file:/tmp/my-kar-1.0-SNAPSHOT.kar
-{code}
-
-The KAR file is uncompressed and populated the {{KARAF_BASE/system}} folder.
-
-The Apache Karaf KAR service is looking for features XML files in the KAR file, registers the features XML and automatically
-installs all features described in the features repositories present in the KAR file.
-
-h3. {{kar:uninstall}}
-
-The {{kar:uninstall}} command uninstall a KAR file (identified by a name).
-
-By uninstall, it means that:
-
-* the features previously installed by the KAR file are uninstalled
-* delete (from the {{KARAF_DATA/system}} repository) all files previously "populated" by the KAR file
-
-For instance, to uninstall the previously installed {{my-kar-1.0-SNAPSHOT.kar}} KAR file:
-
-{code}
-karaf@root()> kar:uninstall my-kar-1.0-SNAPSHOT
-{code}
-
-h2. Deployer
-
-Apache Karaf also provides a KAR deployer. It means that you can drop a KAR file directly in the {{deploy}} folder.
-
-Apache Karaf will automatically install KAR files from the {{deploy}} folder.
-
-You can change the behaviours of the KAR deployer in the {{etc/org.apache.karaf.kar.cfg}}:
-
-{code}
-################################################################################
-#
-# 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.
-#
-################################################################################
-
-#
-# Enable or disable the refresh of the bundles when installing
-# the features contained in a KAR file
-#
-noAutoRefreshBundles=false
-{code}
-
-By default, when the KAR deployer install features, by default, it refresh the bundles already installed.
-You can disable the automatic bundles refresh by setting the {{noAutoRefreshBundles}} property to {{false}}.
-
-h2. JMX KarMBean
-
-On the JMX layer, you have a MBean dedicated to the management of the KAR files.
-
-The ObjectName to use is {{org.apache.karaf:type=kar,name=*}}.
-
-h3. Attributes
-
-The {{Kars}} attributes provides the list of KAR files (name) installed.
-
-h3. Operations
-
-* {{install(url)}} installs the KAR file at the given {{url}}.
-* {{create(repository, features)}} creates a KAR file using the given features {{repository}} name, and optionally the
-list of {{features}} to include in the KAR file.
-* {{uninstall(name)}} uninstalls a KAR file with the given {{name}}.
\ No newline at end of file