Author: rafabene
Date: Wed Oct 29 17:59:23 2014
New Revision: 1635229
URL: http://svn.apache.org/r1635229
Log:
Site checkin for project Apache DeltaSpike - Documentation
Modified:
deltaspike/site/trunk/content/documentation/staging/build.html
deltaspike/site/trunk/content/documentation/staging/index.html
Modified: deltaspike/site/trunk/content/documentation/staging/build.html
URL:
http://svn.apache.org/viewvc/deltaspike/site/trunk/content/documentation/staging/build.html?rev=1635229&r1=1635228&r2=1635229&view=diff
==============================================================================
--- deltaspike/site/trunk/content/documentation/staging/build.html (original)
+++ deltaspike/site/trunk/content/documentation/staging/build.html Wed Oct 29
17:59:23 2014
@@ -7,7 +7,7 @@
<meta name="description" content="deltaspike-generate-pages">
<meta name="author" content="chm">
-<title>Build and Test DeltaSpike from Source</title>
+<title>Building DeltaSpike from source</title>
<!-- 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. -->
@@ -166,207 +166,205 @@ body {
<div class="row">
<div class="span12">
<div class="page-title">
- <h1>Build and Test DeltaSpike from Source</h1>
+ <h1>Building DeltaSpike from source</h1>
</div>
<div id="toc" class="toc">
<ul class="sectlevel1">
-<li><a href="#_build_without_cdi_implementation_tests">Build without CDI
Implementation Tests</a></li>
-<li><a href="#_build_and_test_with_a_cdi_implementation">Build and Test with a
CDI Implementation</a></li>
-<li><a href="#_build_and_test_with_cdi_containers">Build and Test with CDI
Containers</a></li>
-<li><a href="#_next">Next</a></li>
+<li><a href="#_introduction">Introduction</a>
+<ul class="sectlevel2">
+<li><a href="#_full_build">Full build</a></li>
+<li><a href="#_build_with_test">Build with test</a></li>
+<li><a href="#_integration_tests">Integration Tests</a>
+<ul class="sectlevel3">
+<li><a href="#_tomee">TomEE</a></li>
+<li><a href="#_jboss_as7">JBoss AS7</a></li>
+<li><a href="#_wildfly_8">WildFly 8</a></li>
+<li><a href="#_glassfish_3_1">GlassFish 3.1</a></li>
+<li><a href="#_glassfish_4">GlassFish 4</a></li>
+<li><a href="#_weblogic_12c">WebLogic 12c</a></li>
+</ul>
+</li>
+<li><a href="#_jenkins_builds">Jenkins Builds</a></li>
+<li><a href="#_sonar">Sonar</a></li>
+</ul>
+</li>
</ul>
<hr>
- <div id="preamble">
+ <div class="sect1">
+<h2 id="_introduction">Introduction</h2>
<div class="sectionbody">
<div class="paragraph">
-<p>The DeltaSpike source (modules and examples) is provided for inspection,
contribution and testing purposes. The source must be built with Maven, which
has been used to automate the compilation, testing and packaging processes.
Arquillian tests are automatically conducted when DeltaSpike is built and CDI
implementations or containers with which to carry out the tests can be
specified.</p>
+<p>Deltaspike uses <a href="http://maven.apache.org/">maven</a> build tool to
automate the compilation, testing and packaging of the project</p>
+</div>
+<div class="sect2">
+<h3 id="_full_build">Full build</h3>
+<div class="listingblock">
+<div class="content">
+<pre>mvn clean install</pre>
+</div>
+</div>
</div>
+<div class="sect2">
+<h3 id="_build_with_test">Build with test</h3>
+<div class="listingblock">
+<div class="content">
+<pre>mvn clean install -POWB //execute the unit tests with OpenWebBeans
+or
+mvn clean install -PWeld //execute the unit tests with Weld</pre>
+</div>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_integration_tests">Integration Tests</h3>
<div class="paragraph">
-<p>In all cases, to obtain the DeltaSpike source, <a
href="https://deltaspike.apache.org/download.html">download
<code>deltaspike-project-<version>-source-release.zip</code></a> and
extract the contents.</p>
+<p>With the unpack Maven-Plugin all Arquillian-Tests get copied to the
+integration-test module. Together with the special integration-tests
+they get executed via a remote container. Currently we have
+configurations for the following containers.</p>
</div>
+<div class="sect3">
+<h4 id="_tomee">TomEE</h4>
<div class="paragraph">
-<p><strong>Note:</strong> You can also obtain the DeltaSpike source from the
project Git repository. The repository is subject to change and it can be used
for contributing but should not be used in production environments. For more
information, see <a href="source.html">Get Source and compile it</a>.</p>
+<p><strong>Executing the Arquillian tests with Apache TomEE</strong></p>
</div>
+<div class="listingblock">
+<div class="content">
+<pre>mvn clean install -Ptomee-build-managed</pre>
</div>
</div>
-<div class="sect1">
-<h2 id="_build_without_cdi_implementation_tests">Build without CDI
Implementation Tests</h2>
-<div class="sectionbody">
+</div>
+<div class="sect3">
+<h4 id="_jboss_as7">JBoss AS7</h4>
+<div class="sect4">
+<h5 id="_without_existing_as7">Without existing AS7</h5>
<div class="paragraph">
-<p>DeltaSpike can be built without executing tests against a CDI
implementation, with the following commands:</p>
+<p><strong>Executing the Arquillian tests with JBoss AS7 (without AS7
installation)</strong></p>
</div>
<div class="listingblock">
<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">$ cd
/path/to/deltaspike-project-<version>/
-$ mvn clean install</code></pre>
+<pre>mvn clean install -Pjbossas-build-managed-7</pre>
</div>
</div>
</div>
+<div class="sect4">
+<h5 id="_with_existing_as7">With existing AS7</h5>
+<div class="paragraph">
+<p>Set JBoss_HOME</p>
</div>
-<div class="sect1">
-<h2 id="_build_and_test_with_a_cdi_implementation">Build and Test with a CDI
Implementation</h2>
-<div class="sectionbody">
<div class="paragraph">
-<p>Tests can be executed with both the JBoss Weld and Apache OpenWebBeans CDI
implementations.</p>
+<p><strong>Executing the Arquillian tests with JBoss AS7 (AS7 installation
+required)</strong></p>
</div>
-<table class="tableblock frame-all grid-all spread">
-<caption class="title">Table 1. Build Tests</caption>
-<colgroup>
-<col style="width: 33%;">
-<col style="width: 66%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Container</th>
-<th class="tableblock halign-left valign-top">Command to Execute Arquillian
Tests</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">JBoss
Weld</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">$ mvn clean install
-PWeld</code></pre>
-</div>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache
OpenWebBeans</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">$ mvn clean install
-POWB</code></pre>
-</div>
-</div></div></td>
-</tr>
-</tbody>
-</table>
+<div class="listingblock">
+<div class="content">
+<pre>mvn clean install -Pjbossas-managed-7</pre>
</div>
</div>
-<div class="sect1">
-<h2 id="_build_and_test_with_cdi_containers">Build and Test with CDI
Containers</h2>
-<div class="sectionbody">
+</div>
+</div>
+<div class="sect3">
+<h4 id="_wildfly_8">WildFly 8</h4>
+<div class="sect4">
+<h5 id="_without_existing_wf8">Without existing WF8</h5>
+<div class="paragraph">
+<p><strong>Executing the Arquillian tests with JBoss-WF8 (without WF8
installation)</strong></p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>mvn clean install -Pwildfly-build-managed</pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_with_existing_wf8">With existing WF8</h5>
+<div class="paragraph">
+<p>Set WILDFLY_HOME</p>
+</div>
+<div class="paragraph">
+<p><strong>Executing the Arquillian tests with JBoss-WF8 (WF8 installation
+required)</strong></p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>mvn clean install -Pwildfly-managed</pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_glassfish_3_1">GlassFish 3.1</h4>
+<div class="sect4">
+<h5 id="_without_existing_gf3">Without existing GF3</h5>
<div class="paragraph">
-<p>Tests can be executed with JBoss Weld and Apache OpenWebBeans through Java
EE 6+ application servers and containers. Configurations are currently provided
as details in the table here.</p>
+<p><strong>Executing the Arquillian tests with GF3 (without GF3
installation)</strong></p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre>mvn clean install -Pglassfish-build-managed-3</pre>
</div>
-<table class="tableblock frame-all grid-all spread">
-<caption class="title">Table 2. Integration Tests</caption>
-<colgroup>
-<col style="width: 40%;">
-<col style="width: 60%;">
-</colgroup>
-<thead>
-<tr>
-<th class="tableblock halign-left valign-top">Container</th>
-<th class="tableblock halign-left valign-top">Command to Execute Arquillian
Tests</th>
-</tr>
-</thead>
-<tbody>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Apache
TomEE</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">$ mvn clean install
-Ptomee-build-managed</code></pre>
-</div>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">JBoss AS7
(without AS7 installation)</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">$ mvn clean install
-Pjbossas-build-managed-7</code></pre>
-</div>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">JBoss AS7
(AS7 installation required)</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Set <code>JBoss_HOME</code></p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">$ mvn clean install
-Pjbossas-managed-7</code></pre>
-</div>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">JBoss
WildFly 8 (without WildFly 8 installation)</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">mvn clean install
-Pwildfly-build-managed</code></pre>
-</div>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">JBoss
WildFly 8 (WildFly 8 installation required)</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Set <code>WILDFLY_HOME</code></p>
-</div>
-<div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">$ mvn clean install
-Pwildfly-managed</code></pre>
-</div>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Oracle
GlassFish 3 (without GlassFish 3 installation)</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="listingblock">
-<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">mvn clean install
-Pglassfish-build-managed-3</code></pre>
-</div>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Oracle
GlassFish 3.1 (GlassFish 3.1 installation required)</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="paragraph">
+</div>
+</div>
+<div class="sect4">
+<h5 id="_with_existing_gf3">With existing GF3</h5>
+<div class="paragraph">
<p>Install GlassFish (default setup without admin-password) and start
-GlassFish with <code>asadmin start-domain</code> and <code>asadmin
start-database</code>.</p>
+GlassFish with asadmin start-domain <strong>and</strong> asadmin
start-database</p>
+</div>
+<div class="paragraph">
+<p><strong>Executing the Arquillian tests with Oracle Glassfish
3.1+</strong></p>
</div>
<div class="listingblock">
<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">$ mvn clean install
-Pglassfish-remote-3.1</code></pre>
+<pre>mvn clean install -Pglassfish-remote-3.1</pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_glassfish_4">GlassFish 4</h4>
+<div class="sect4">
+<h5 id="_without_existing_gf4">Without existing GF4</h5>
+<div class="paragraph">
+<p><strong>Executing the Arquillian tests with GF4 (without GF4
installation)</strong></p>
</div>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Oracle
GlassFish 4 (without Oracle GlassFish 4 installation)</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="listingblock">
+<div class="listingblock">
<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">mvn clean install
-Pglassfish-build-managed-4</code></pre>
+<pre>mvn clean install -Pglassfish-build-managed-4</pre>
+</div>
+</div>
+</div>
</div>
-</div></div></td>
-</tr>
-<tr>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Oracle
WebLogic 12c</p></td>
-<td class="tableblock halign-left valign-top"><div><div class="paragraph">
-<p>Install WebLogic 12c. Start Configuration Wizard to create a new basic
+<div class="sect3">
+<h4 id="_weblogic_12c">WebLogic 12c</h4>
+<div class="paragraph">
+<p>Install WebLogic 12c. Start Confiuration Wizard to create a new basic
WebLogic Domain. Default options and domain name = base_domain,
administrator user name = weblogic1, administrator password = weblogic1.
-Set <code>WLS_HOME</code> so that <code>%WLS_HOME%.jar</code> exists. Start
the domain.</p>
+Set WLS_HOME so that %WLS_HOME%.jar exists. Start the domain.</p>
+</div>
+<div class="paragraph">
+<p><strong>Executing the Arquillian tests with Oracle WebLogic 12c</strong></p>
</div>
<div class="listingblock">
<div class="content">
-<pre class="CodeRay highlight"><code data-lang="shell">$ mvn clean install
-Pwls-remote-12c</code></pre>
+<pre>mvn clean install -Pwls-remote-12c</pre>
</div>
-</div></div></td>
-</tr>
-</tbody>
-</table>
</div>
</div>
-<div class="sect1">
-<h2 id="_next">Next</h2>
-<div class="sectionbody">
-<div class="ulist">
-<ul>
-<li>
-<p>For analysis of the DeltaSpike source, see <a
href="https://analysis.apache.org/dashboard/index/org.apache.deltaspike:deltaspike-project"
class="bare">https://analysis.apache.org/dashboard/index/org.apache.deltaspike:deltaspike-project</a></p>
-</li>
-<li>
-<p>For information about DeltaSpike automated Jenkins builds, see <a
href="https://builds.apache.org/view/A-D/view/DeltaSpike/"
class="bare">https://builds.apache.org/view/A-D/view/DeltaSpike/</a></p>
-</li>
-</ul>
+</div>
+<div class="sect2">
+<h3 id="_jenkins_builds">Jenkins Builds</h3>
+<div class="paragraph">
+<p><a href="https://builds.apache.org/view/A-D/view/DeltaSpike/"
class="bare">https://builds.apache.org/view/A-D/view/DeltaSpike/</a></p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_sonar">Sonar</h3>
+<div class="paragraph">
+<p><a
href="https://analysis.apache.org/dashboard/index/org.apache.deltaspike:deltaspike-project"
class="bare">https://analysis.apache.org/dashboard/index/org.apache.deltaspike:deltaspike-project</a></p>
+</div>
</div>
</div>
</div>
Modified: deltaspike/site/trunk/content/documentation/staging/index.html
URL:
http://svn.apache.org/viewvc/deltaspike/site/trunk/content/documentation/staging/index.html?rev=1635229&r1=1635228&r2=1635229&view=diff
==============================================================================
--- deltaspike/site/trunk/content/documentation/staging/index.html (original)
+++ deltaspike/site/trunk/content/documentation/staging/index.html Wed Oct 29
17:59:23 2014
@@ -170,107 +170,913 @@ body {
</div>
<div id="toc" class="toc">
-
- <hr>
-
- <div class="ulist">
-<ul>
-<li>
-<p>Getting Started</p>
-<div class="ulist">
-<ul>
-<li>
-<p><a href="overview.html">Overview of DeltaSpike</a></p>
+ <ul class="sectlevel1">
+<li><a href="#_introduction">Introduction</a>
+<ul class="sectlevel2">
+<li><a href="#_what_is_a_portable_cdi_extension">What is a portable CDI
extension ?</a></li>
+<li><a href="#_deltaspike_in_a_nutshell">DeltaSpike in a nutshell</a>
+<ul class="sectlevel3">
+<li><a href="#_java_ee_7_without_java_ee_7">Java EE 7 without Java EE
7!</a></li>
+<li><a href="#_jsf_improvements">JSF Improvements</a></li>
+<li><a href="#_productivity_improvements">Productivity Improvements</a></li>
+</ul>
</li>
-<li>
-<p><a href="configure.html">Configure DeltaSpike in Your Projects</a></p>
+</ul>
</li>
-<li>
-<p><a href="cdiimp.html">Enable CDI For Your Java Environment</a></p>
+<li><a href="#_getting_started">Getting Started</a>
+<ul class="sectlevel2">
+<li><a href="#_project_configuration_without_maven">Project Configuration
without Maven</a></li>
+<li><a href="#_project_configuration_with_maven">Project Configuration with
Maven</a>
+<ul class="sectlevel3">
+<li><a href="#_configuration_of_deltaspike_core">Configuration of DeltaSpike
Core</a></li>
+<li><a href="#_configuration_of_deltaspike_modules">Configuration of
DeltaSpike Modules</a></li>
+<li><a href="#_with_java_se">With Java SE</a></li>
+<li><a href="#__for_apache_openwebbeans">…​ for Apache
OpenWebBeans</a></li>
+<li><a href="#__for_jboss_weld_ri">…​ for JBoss Weld (RI)</a></li>
+<li><a href="#_for_embedded_servlet_runtimes_you_can_add">For Embedded Servlet
Runtimes, you can add</a></li>
+<li><a href="#_testing_snapshots">Testing Snapshots</a></li>
+</ul>
</li>
-<li>
-<p><a href="examples.html">See DeltaSpike in Action</a></p>
+</ul>
</li>
+<li><a href="#_deployment_mode">Deployment mode</a>
+<ul class="sectlevel2">
+<li><a href="#_with_java_ee6">With Java EE6+</a></li>
+<li><a href="#_with_java_ee5_or_servlet_containers">With Java EE5 or Servlet
Containers</a></li>
+<li><a href="#_standard_java_se6">Standard Java SE6+</a></li>
</ul>
-</div>
</li>
-<li>
-<p>Using Individual Modules</p>
+<li><a href="#_start_a_cdi_container_using_java_se">Start a CDI container
using Java SE</a></li>
+<li><a href="#_module_overview">Module Overview</a>
+<ul class="sectlevel2">
+<li><a href="#_core_required">Core (required)</a></li>
+<li><a href="#_security_optional">Security (optional)</a></li>
+<li><a href="#_jpa_optional">JPA (optional)</a></li>
+<li><a href="#_jsf_optional">JSF (optional)</a></li>
+<li><a href="#_container_control_optional">Container Control
(optional)</a></li>
+<li><a href="#_bean_validation_optional">Bean Validation (optional)</a></li>
+<li><a href="#_servlet_optional">Servlet (optional)</a></li>
+<li><a href="#_partial_bean_optional">Partial-Bean (optional)</a></li>
+<li><a href="#_data_optional">Data (optional)</a></li>
+<li><a href="#_test_control_optional">Test-Control (optional)</a></li>
+<li><a href="#_scheduler_optional">Scheduler (optional)</a></li>
+</ul>
+</li>
+<li><a href="#_deltaspike_spi">DeltaSpike SPI</a></li>
+<li><a href="#_external">External</a>
+<ul class="sectlevel2">
+<li><a href="#_blogs">Blogs</a></li>
+<li><a href="#_add_ons">Add-ons</a></li>
+<li><a href="#_project_templates">Project Templates</a></li>
+<li><a href="#_examples">Examples</a></li>
+</ul>
+</li>
+</ul>
+ <hr>
+
+ <div class="sect1">
+<h2 id="_introduction">Introduction</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Apache DeltaSpike project has been created to support the development of
+portable CDI extensions that provide useful features for Java
+applications not provided out of the box by the CDI spec (Security, JPA,
+…​). CDI extensions created by the DeltaSpike community are
packaged as
+modules.</p>
+</div>
+<div class="paragraph">
+<p>Therefore, Apache DeltaSpike is a great toolbox for CDI. More than a set
+of powerful extension and tools to ease extension development,
+DeltaSpike also proves that CDI allows Java EE to evolve between each
+release.</p>
+</div>
+<div class="paragraph">
+<p>The goal of the project is also to provide useful classes to :</p>
+</div>
<div class="ulist">
<ul>
<li>
-<p><a href="core.html">Core</a></p>
+<p>Boot CDI Container (Weld, OpenWebbeans, OpenEJB) for Java SE,</p>
</li>
<li>
-<p><a href="bean-validation.html">Bean Validation</a></p>
+<p>Stage a project,</p>
</li>
<li>
-<p><a href="container-control.html">Container Control</a></p>
+<p>Provide new scopes (Window Scope, …​),</p>
</li>
<li>
-<p><a href="data.html">Data</a></p>
+<p>Manage messages and configurations</p>
</li>
+</ul>
+</div>
+<div class="paragraph">
+<p>The project is currently tested on different CDI implementations like
+Apache OpenWebBeans and JBoss Weld, and also on different Java Web
+containers like Apache TomEE or JavaEE, JBoss AS7, Oracle GlassFish
+3.1+, Oracle WebLogic Server 12c.</p>
+</div>
+<div class="sect2">
+<h3 id="_what_is_a_portable_cdi_extension">What is a portable CDI extension
?</h3>
+<div class="paragraph">
+<p>A portable CDI extension means that CDI itself can be extended. Such
+extensions can be used with any spec. compliant CDI implementation. From
+the user perspective, it means that you can simply drop in CDI extension
+jars into your runtime e.g. to integrate third-party APIs with CDI or to
+improve existing JavaEE-APIs.</p>
+</div>
+<div class="paragraph">
+<p>The CDI Portable extensions SPI (Service Provider Interface) allows to
+define additional beans, scopes, stereotypes, interceptors and
+decorators. The SPI of CDI is a powerful vehicle for innovation and
+DeltaSpike is an example of it.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_deltaspike_in_a_nutshell">DeltaSpike in a nutshell</h3>
+<div class="sect3">
+<h4 id="_java_ee_7_without_java_ee_7">Java EE 7 without Java EE 7!</h4>
+<div class="paragraph">
+<p><strong>Transactional support for non-EJB beans:</strong> The Transactional
Interceptor
+in DeltaSpike paved the way for @Transactional in Java EE 7.</p>
+</div>
+<div class="paragraph">
+<p><strong>Injectable Servlet objects:</strong> Allows the developer to inject
CDI beans
+on Servlets on Java EE 6/CDI 1.0 environments</p>
+</div>
+<div class="paragraph">
+<p><strong>Injectable resources:</strong> Configuration, resource
bundles,…​ are easy to
+inject when using CDI and Apache DeltaSpike.</p>
+</div>
+<div class="paragraph">
+<p><strong>@Exclude annotation:</strong> it’s possible to annotate beans
which should be
+ignored by CDI even if they are in a CDI enabled archive on Java EE
+6/CDI 1.0 environment where you can’t use @Vetoed or a veto based on
+project-stages or expressions is needed.</p>
+</div>
+<div class="paragraph">
+<p><strong>Scheduling tasks</strong>: Async processes in a non Java EE 7
environment.</p>
+</div>
+<div class="paragraph">
+<p><strong>Bean Validation integration:</strong> Allows to inject CDI beans
and EJB in to
+Constraint-Validators.</p>
+</div>
+<div class="paragraph">
+<p><strong>BeanProvider:</strong> Access the BeanManager and CDI beans even in
non managed
+classes like JPA-2.0 EntityListeners or Spring Beans.</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_jsf_improvements">JSF Improvements</h4>
+<div class="paragraph">
+<p><strong>Multi-window handling:</strong> Allows to manage logical windows for
+batches,…​ or in case of JSF it offers proper separation of
+browser-tabs.</p>
+</div>
+<div class="paragraph">
+<p><strong>Type-safe view-config:</strong> It allows to bind meta-data (e.g.
for security)
+to views with a type-safe, but flexible approach. It provides a more
+solid navigation in case of JSF and helps a lot in the maintenance
+phase.</p>
+</div>
+<div class="paragraph">
+<p><strong>View-Controller:</strong> Based on type-safe view-configs
view-controller
+annotations provide a type-safe alternative to standard-tags.</p>
+</div>
+<div class="paragraph">
+<p><strong>Injection on Converters and Validators:</strong> Allows to inject
CDI beans and
+EJB in to JSF Converters and Validators.</p>
+</div>
+<div class="paragraph">
+<p><strong>JSF event broadcasting to CDI:</strong> Allows CDI to be notified
about JSF
+events</p>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_productivity_improvements">Productivity Improvements</h4>
+<div class="paragraph">
+<p><strong>Security based on annotations:</strong> The foundation for building
a robust,
+capable and non invasive security solution.</p>
+</div>
+<div class="paragraph">
+<p><strong>New CDI scopes:</strong> TransactionScoped, WindowScoped,
ViewScoped,
+ViewAccess scope, Grouped conversion scope</p>
+</div>
+<div class="paragraph">
+<p><strong>Container Control & Test Control:</strong> Java SE with CDI,
all with a
+unifying API. Start, stop, add classes to a running CDI container.</p>
+</div>
+<div class="paragraph">
+<p><strong>Data Module:</strong> An out of the box entity framework solution
complete with
+support for container or application managed persistence contexts, as
+well as JDBC.</p>
+</div>
+<div class="paragraph">
+<p><strong>Decoupled Exception handling:</strong> Allows to do exception
handling in one
+location similar to CDI Observers.</p>
+</div>
+<div class="paragraph">
+<p><strong>JMX integration:</strong> Any CDI bean can be exposed via JMX
easily with one
+annotation.</p>
+</div>
+<div class="paragraph">
+<p><strong>Type-safe i18n messages:</strong> Localized messages are easy to
use with an
+interface and a resource bundle, no more boilerplate and your messages
+now have context within the code.</p>
+</div>
+<div class="paragraph">
+<p><strong>Type-safe Project-Stages:</strong> Compared to project-stages in
JSF,
+DeltaSpike provides a type-safe, but still extensible approach which can
+be used in CDI based applications.</p>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_getting_started">Getting Started</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>A DeltaSpike project can be designed using or not Apache Maven and
+consists in a collection of jar files. Depending on your needs, you will
+package DeltaSpike core jar (api and impl) files or extend the list with
+DeltaSpike modules. DeltaSpike Api and Impl are mandatory and provide
+code required to benefits of portable CDI extensions or useful features
+created.</p>
+</div>
+<div class="paragraph">
+<p>Remark : For Java SE, an additional step is required as you have to
+select the CDI implementation of your choice to boot a CDI container.</p>
+</div>
+<div class="paragraph">
+<p>[TODO] Add a section or remark to explain how to package & deploy
+DeltaSpike in an OSGI environment (Apache Felix, Apache Karaf, Apache
+ServiceMix)</p>
+</div>
+<div class="sect2">
+<h3 id="_project_configuration_without_maven">Project Configuration without
Maven</h3>
+<div class="paragraph">
+<p>You can manually download all JARs described above or you get <a
href="source.html">the source-code</a> and <a href="build.html">build</a>
DeltaSpike
+manually.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_project_configuration_with_maven">Project Configuration with
Maven</h3>
+<div class="paragraph">
+<p><strong>Hint:</strong> In the listings below replace the placeholders for
the version with the version of your choice or use:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><properties></span>
+ <span class="tag"><deltaspike.version></span>1.0.3<span
class="tag"></deltaspike.version></span>
+<span class="tag"></properties></span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Or if you want to very bleeding edge, point to our current snapshot.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><properties></span>
+ <span class="tag"><deltaspike.version></span>1.0.4-SNAPSHOT<span
class="tag"></deltaspike.version></span>
+<span class="tag"></properties></span></code></pre>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_configuration_of_deltaspike_core">Configuration of DeltaSpike
Core</h4>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.core<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-core-api<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.core<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-core-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_configuration_of_deltaspike_modules">Configuration of DeltaSpike
Modules</h4>
+<div class="sect4">
+<h5 id="_security_module">Security Module</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-security-module-api<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-security-module-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_jpa_module">JPA Module</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-jpa-module-api<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-jpa-module-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_jsf_module">JSF Module</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-jsf-module-api<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-jsf-module-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Some EE6 servers can’t handle optional classes. If you don’t
like the
+corresponding log entries during the startup or the deployment fails,
+you can use an alternative impl-module (instead of
+deltaspike-jsf-module-impl) since v1.0.1:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-jsf-module-impl-ee6<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_bean_validation_module">Bean Validation Module</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-bean-validation-module-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_servlet_module">Servlet Module</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-servlet-module-api<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-servlet-module-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_data_module">Data Module</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-data-module-api<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-data-module-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_test_control_module">Test-Control Module</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-test-control-module-api<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>test<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-test-control-module-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>test<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_scheduler_module">Scheduler Module</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-scheduler-module-api<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.modules<span
class="tag"></groupId></span>
+ <span
class="tag"><artifactId></span>deltaspike-scheduler-module-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_with_java_se">With Java SE</h4>
+<div class="paragraph">
+<p>To use DeltaSpike with Java SE, we must provide additional jars file
+corresponding to the DeltaSpike CDI Controller API and its
+implementation. The Controller uses Java Services to resolve the CDI
+container
+(<a href="http://docs.jboss.org/weld/reference/1.1.5.Final/en-US/html/">JBoss
+Weld</a>, <a href="http://openwebbeans.apache.org">Apache OpenWebbeans</a> (and
+<a href="http://openejb.apache.org">Apache OpenEJB</a>)) and implementation
contains
+the code to manage the <a href="#_container_control_optional">CDI container
and contexts</a>.</p>
+</div>
+<div class="paragraph">
+<p><strong>Hint:</strong> In the listings below replace the placeholders for
the version
+with the version of your choice or use:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><properties></span>
+ <span class="tag"><deltaspike.version></span>1.0.0<span
class="tag"></deltaspike.version></span>
+ <span class="tag"><owb.version></span>1.2.0<span
class="tag"></owb.version></span>
+ <span class="tag"><weld.version></span>1.1.9.Final<span
class="tag"></weld.version></span>
+<span class="tag"></properties></span></code></pre>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_add_the_deltaspike_container_ctrl_api">Add the DeltaSpike Container
Ctrl API</h5>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.cdictrl<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-cdictrl-api<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect4">
+<h5 id="_add_a_cdi_container_container_ctrl_impl">Add a CDI container +
Container Ctrl Impl</h5>
+
+</div>
+</div>
+<div class="sect3">
+<h4 id="__for_apache_openwebbeans">…​ for Apache OpenWebBeans</h4>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.openwebbeans<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>openwebbeans-impl<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${owb.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.openwebbeans<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>openwebbeans-spi<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${owb.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.cdictrl<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-cdictrl-owb<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="__for_jboss_weld_ri">…​ for JBoss Weld (RI)</h4>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.cdictrl<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-cdictrl-weld<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span>
+
+<span class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.jboss.weld.se<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>weld-se<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${weld.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>runtime<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_for_embedded_servlet_runtimes_you_can_add">For Embedded Servlet
Runtimes, you can add</h4>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><dependency></span>
+ <span class="tag"><groupId></span>org.apache.deltaspike.cdictrl<span
class="tag"></groupId></span>
+ <span class="tag"><artifactId></span>deltaspike-cdictrl-servlet<span
class="tag"></artifactId></span>
+ <span class="tag"><version></span>${deltaspike.version}<span
class="tag"></version></span>
+ <span class="tag"><scope></span>compile<span
class="tag"></scope></span>
+<span class="tag"></dependency></span></code></pre>
+</div>
+</div>
+</div>
+<div class="sect3">
+<h4 id="_testing_snapshots">Testing Snapshots</h4>
+<div class="paragraph">
+<p>If you would like to test the latest Snapshot, you can <a
href="build.html">build</a> DeltaSpike locally or you
+get it from the Apache Snapshot-Repository:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="xml"><span
class="tag"><repositories></span>
+ <span class="tag"><repository></span>
+ <span class="tag"><id></span>apache-snapshot-repository<span
class="tag"></id></span>
+ <span
class="tag"><url></span>http://repository.apache.org/snapshots/<span
class="tag"></url></span>
+ <span class="tag"><releases></span>
+ <span class="tag"><enabled></span>false<span
class="tag"></enabled></span>
+ <span class="tag"></releases></span>
+ <span class="tag"><snapshots></span>
+ <span class="tag"><enabled></span>true<span
class="tag"></enabled></span>
+ <span class="tag"></snapshots></span>
+ <span class="tag"></repository></span>
+<span class="tag"></repositories></span></code></pre>
+</div>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_deployment_mode">Deployment mode</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>DeltaSpike can be deployed in different Java environments. Depending
+which Java container and release you are using, the procedure which is
+different is explained here after.</p>
+</div>
+<div class="sect2">
+<h3 id="_with_java_ee6">With Java EE6+</h3>
+<div class="paragraph">
+<p>If you are using DeltaSpike in a Java EE6 environment, you don’t need
to
+configure a CDI implementation explicitly because it’s shipped with the
+container.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_with_java_ee5_or_servlet_containers">With Java EE5 or Servlet
Containers</h3>
+<div class="paragraph">
+<p>Java EE5 application servers as well as pure servlet containers like
+Apache Tomcat / Eclipse Jetty don’t provide a CDI implementation
+out-of-the-box. So don’t forget to setup the CDI implementation of your
+choice.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_standard_java_se6">Standard Java SE6+</h3>
+<div class="paragraph">
+<p>If you are only using a JDK and runs Java in a standalone or standard
+mode (Java SE), then DeltaSpike will allow you to boot a CDI
+implementation where you can use Dependency Injection with a Bean
+Manager. Such an example will be presented at the next section.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_start_a_cdi_container_using_java_se">Start a CDI container using Java
SE</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>This code snippet show you how with a Java MainApplication a CDI
+container can be started (= boot) by DeltaSpike using Java SE and how
+you define a CDI scope and resolve beans injected.</p>
+</div>
+<div class="paragraph">
+<p><strong>Hint</strong>: To bootstrap a CDI container in your Java
application, you
+just need to instantiate the <code>CdiContainer</code> and call the
<code>#boot</code> method.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="java"><span
class="keyword">import</span> <span
class="include">org.apache.deltaspike.cdise.api.CdiContainer</span>;
+<span class="keyword">import</span> <span
class="include">org.apache.deltaspike.cdise.api.CdiContainerLoader</span>;
+
+<span class="directive">public</span> <span class="type">class</span> <span
class="class">MainApp</span> {
+ <span class="directive">public</span> <span
class="directive">static</span> <span class="type">void</span> main(<span
class="predefined-type">String</span><span class="type">[]</span> args) {
+
+ CdiContainer cdiContainer = CdiContainerLoader.getCdiContainer();
+ cdiContainer.boot();
+
+ <span class="comment">// You can use CDI here</span>
+
+ cdiContainer.shutdown();
+ }
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>When <code>#boot</code> is called, the <code>CdiContainer</code> will scan
CDI enabled
+archives for beans and CDI extensions.</p>
+</div>
+<div class="paragraph">
+<p><strong>Note</strong>: Booting the container does not automatically start
all CDI
+Contexts!</p>
+</div>
+<div class="paragraph">
+<p>Example for starting the application-context:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="java"><span
class="keyword">import</span> <span
class="include">org.apache.deltaspike.cdise.api.CdiContainer</span>;
+<span class="keyword">import</span> <span
class="include">org.apache.deltaspike.cdise.api.CdiContainerLoader</span>;
+<span class="keyword">import</span> <span
class="include">org.apache.deltaspike.cdise.api.ContextControl</span>;
+<span class="keyword">import</span> <span
class="include">javax.enterprise.context.ApplicationScoped</span>;
+
+<span class="directive">public</span> <span class="type">class</span> <span
class="class">MainApp</span> {
+ <span class="directive">public</span> <span
class="directive">static</span> <span class="type">void</span> main(<span
class="predefined-type">String</span><span class="type">[]</span> args) {
+
+ CdiContainer cdiContainer = CdiContainerLoader.getCdiContainer();
+ cdiContainer.boot();
+
+ <span class="comment">// Starting the application-context allows to
use @ApplicationScoped beans</span>
+ ContextControl contextControl = cdiContainer.getContextControl();
+ contextControl.startContext(ApplicationScoped.class);
+
+ <span class="comment">// You can use CDI here</span>
+
+ cdiContainer.shutdown();
+ }
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>To resolve a bean of this project, you can use the <code>BeanProvider</code>
+provided by DeltaSpike. The following example shows how to resolve the a
+bean without qualifiers. It depends on the application if
<code>EchoService</code>
+is a concrete implementation or just an interface. In case of an
+interface the corresponding implementation will be resolved. The
+resolved bean is a normal CDI bean which means you can use all CDI
+concepts like <code>@Inject</code> in the class (and you don’t need
further usages
+of <code>BeanProvider</code>).</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="CodeRay highlight"><code data-lang="java">EchoService echoService
= BeanProvider.getContextualReference(EchoService.class, <span
class="predefined-constant">false</span>);</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Before the application exits, you have to call <code>#shutdown</code> to
destroy
+beans,…​ in a well-ordered fashion.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_module_overview">Module Overview</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The core features of DeltaSpike project are packaged under the following
+different modules. Some of them are mandatory while others are optional.</p>
+</div>
+<div class="sect2">
+<h3 id="_core_required">Core (required)</h3>
+<div class="paragraph">
+<p>Definition : Contain the API and util classes of DeltaSpike project</p>
+</div>
+<a class="btn" href="core.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_security_optional">Security (optional)</h3>
+<div class="paragraph">
+<p>Definition : Intercept and check security</p>
+</div>
+<a class="btn" href="security.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_jpa_optional">JPA (optional)</h3>
+<div class="paragraph">
+<p>Definition :</p>
+</div>
+<a class="btn" href="jpa.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_jsf_optional">JSF (optional)</h3>
+<div class="paragraph">
+<p>Definition :</p>
+</div>
+<a class="btn" href="jsf.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_container_control_optional">Container Control (optional)</h3>
+<div class="paragraph">
+<p>Definition :</p>
+</div>
+<a class="btn" href="container-control.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_bean_validation_optional">Bean Validation (optional)</h3>
+<div class="paragraph">
+<p>Definition : A module for adding CDI support in Bean Validation.</p>
+</div>
+<div class="paragraph">
+<p>Features : Allows a developer to create CDI aware `ConstraintValidator`s
+that can use business objects (EJBs, ManagedBeans) to support validation
+needs.</p>
+</div>
+<a class="btn" href="bean-validation.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_servlet_optional">Servlet (optional)</h3>
+<div class="paragraph">
+<p>Definition : The DeltaSpike Servlet module provides integration with the
+Java Servlet API.</p>
+</div>
+<div class="paragraph">
+<p>Features :</p>
+</div>
+<div class="ulist">
+<ul>
<li>
-<p><a href="jpa.html">JPA</a></p>
+<p>Injection of common servlet objects.</p>
</li>
<li>
-<p><a href="jsf.html">JSF</a></p>
+<p>Propagation of servlet events to the CDI event bus.</p>
</li>
+</ul>
+</div>
+<a class="btn" href="servlet.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_partial_bean_optional">Partial-Bean (optional)</h3>
+<a class="btn" href="partial-bean.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_data_optional">Data (optional)</h3>
+<div class="paragraph">
+<p>Definition : The DeltaSpike Data module provides enhanced JPA experience
+with declarative queries, reducing boilerplate to a minimum.</p>
+</div>
+<div class="paragraph">
+<p>Features :</p>
+</div>
+<div class="ulist">
+<ul>
<li>
-<p><a href="partial-bean.html">Partial-Bean</a></p>
+<p>Derive queries by simple method names or by method annotations
+defining JPQL, named queries or plain SQL</p>
</li>
<li>
-<p><a href="scheduler.html">Scheduler</a></p>
+<p>Result pagination and sorting</p>
</li>
<li>
-<p><a href="security.html">Security</a></p>
+<p>Auditing of entities</p>
</li>
<li>
-<p><a href="servlet.html">Servlet</a></p>
+<p>A simplified alternative to the Criteria API</p>
</li>
<li>
-<p><a href="test-control.html">Test-Control</a></p>
+<p>Mapping of entities from and to DTOs</p>
</li>
</ul>
</div>
-</li>
-<li>
-<p>Advanced Information</p>
+<a class="btn" href="data.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_test_control_optional">Test-Control (optional)</h3>
+<div class="paragraph">
+<p>Definition : This module allows to write CDI based tests easily.</p>
+</div>
+<a class="btn" href="test-control.html">View details »</a>
+</div>
+<div class="sect2">
+<h3 id="_scheduler_optional">Scheduler (optional)</h3>
+<div class="paragraph">
+<p>Definition : This module provides a simple integration with Quartz v2
+(per default) or any other scheduler which supports cron-expressions for
+job-classes.</p>
+</div>
+<a class="btn" href="scheduler.html">View details »</a>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_deltaspike_spi">DeltaSpike SPI</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>DeltaSpike Service Provider Interface (SPI)</p>
+</div>
+<a class="btn" href="spi.html">View details »</a>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_external">External</h2>
+<div class="sectionbody">
+<div class="sect2">
+<h3 id="_blogs">Blogs</h3>
<div class="ulist">
<ul>
<li>
-<p><a href="build.html">Build DeltaSpike from Source</a></p>
+<p><a href="http://os890.blogspot.com/search/label/deltaspike"
class="bare">http://os890.blogspot.com/search/label/deltaspike</a></p>
</li>
+</ul>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_add_ons">Add-ons</h3>
+<div class="ulist">
+<ul>
<li>
-<p><a href="snapshots.html">Use DeltaSpike Snapshots</a></p>
+<p><a href="https://github.com/os890/ds-monitoring-addon">Monitoring- and
Auditing</a></p>
</li>
<li>
-<p><a href="https://deltaspike.apache.org/migration-guide.html">Migrate to
DeltaSpike</a></p>
+<p><a href="https://github.com/os890/ds-spring-bridge-addon">CDI/Spring
Bridge</a></p>
</li>
<li>
-<p><a href="spi.html">DeltaSpike Service Provider Interface (SPI)</a></p>
+<p><a href="https://github.com/os890/ds-disruptor-addon">Fast events via
Disruptor</a></p>
</li>
</ul>
</div>
-</li>
-<li>
-<p>More Resources</p>
+</div>
+<div class="sect2">
+<h3 id="_project_templates">Project Templates</h3>
<div class="ulist">
<ul>
<li>
-<p><a href="articles.html">Articles and Blogs</a></p>
+<p><a href="https://github.com/os890/javase-cdi-ds-project-template">Java SE +
CDI + DS</a></p>
</li>
<li>
-<p><a href="addons.html">Add-ons</a></p>
+<p><a href="https://github.com/os890/javaweb-cdi-ds-project-template">JSF +
CDI + DS (Servlet-Container)</a></p>
</li>
<li>
-<p><a href="external.html">External Examples</a></p>
+<p><a href="https://github.com/os890/javaee_cdi_ejb_ds_project_template">EJB +
CDI + DS (Module)</a></p>
</li>
-</ul>
-</div>
+<li>
+<p><a
href="https://github.com/os890/javaee_jsf_cdi_ejb_ds_project_template">JSF +
EJB + CDI + DS (EE-Server)</a></p>
</li>
</ul>
</div>
+</div>
+<div class="sect2">
+<h3 id="_examples">Examples</h3>
+<div class="paragraph">
+<p>See <a href="../examples.html#External">External Examples</a></p>
+</div>
+</div>
+</div>
+</div>
</div>
<hr>