Author: buildbot
Date: Sat Oct 19 09:25:18 2013
New Revision: 883271
Log:
Staging update by buildbot for openwebbeans
Modified:
websites/staging/openwebbeans/trunk/content/ (props changed)
websites/staging/openwebbeans/trunk/content/testing_cdictrl.html
Propchange: websites/staging/openwebbeans/trunk/content/
------------------------------------------------------------------------------
--- cms:source-revision (original)
+++ cms:source-revision Sat Oct 19 09:25:18 2013
@@ -1 +1 @@
-1533717
+1533722
Modified: websites/staging/openwebbeans/trunk/content/testing_cdictrl.html
==============================================================================
--- websites/staging/openwebbeans/trunk/content/testing_cdictrl.html (original)
+++ websites/staging/openwebbeans/trunk/content/testing_cdictrl.html Sat Oct 19
09:25:18 2013
@@ -231,6 +231,55 @@ respective CDI Contexts.</p>
<span class="o">}</span>
</pre></div>
+
+
+<h2 id="testing-javaee-applications">Testing JavaEE applications</h2>
+<p>You can also plug in a cdictrl backend for <a
href="http://tomee.apache.org">Apache TomEE</a> whenever you need to not only
test CDI applications
+but a full JavaEE application which has EJBs, managed DataSources, JTA, etc
+The only thing you need to do is to replace your
<code>deltaspike-cdictrl-owb</code> dependency in your pom with
+<code>deltaspike-cdictrl-openejb</code>. Since Apache TomEE and Apache OpenEJB
both contain OpenWebBeans as CDI container
+you will get all the OWB functionality plus other JavaEE functionality. </p>
+<p>You can pass DataSource configuration by simply providing a
<code>Properties</code> instance to
+<code>CdiContainer.boot(dbConfiguration)</code> in the beforeMethod method of
the test class above:</p>
+<div class="codehilite"><pre><span class="kd">public</span> <span
class="kd">final</span> <span class="kt">void</span> <span
class="nf">beforeMethod</span><span class="o">()</span> <span
class="kd">throws</span> <span class="n">Exception</span> <span
class="o">{</span>
+ <span class="n">containerRefCount</span><span class="o">++;</span>
+
+ <span class="k">if</span> <span class="o">(</span><span
class="n">cdiContainer</span> <span class="o">==</span> <span
class="kc">null</span><span class="o">)</span> <span class="o">{</span>
+ <span class="c1">// setting up the Apache DeltaSpike
ProjectStage</span>
+ <span class="n">ProjectStage</span> <span
class="n">projectStage</span> <span class="o">=</span> <span
class="n">runInProjectStage</span><span class="o">();</span>
+ <span class="n">ProjectStageProducer</span><span
class="o">.</span><span class="na">setProjectStage</span><span
class="o">(</span><span class="n">projectStage</span><span class="o">);</span>
+ <span class="n">cdiContainer</span> <span class="o">=</span> <span
class="n">CdiContainerLoader</span><span class="o">.</span><span
class="na">getCdiContainer</span><span class="o">();</span>
+
+ <span class="n">Properties</span> <span class="n">dbProperties</span>
<span class="o">=</span> <span class="k">new</span> <span
class="n">Properties</span><span class="o">();</span>
+ <span class="n">String</span> <span class="n">dbvendor</span> <span
class="o">=</span> <span class="n">ConfigResolver</span><span
class="o">.</span><span class="na">getPropertyValue</span><span
class="o">(</span><span class="s">"dbvendor"</span><span
class="o">,</span> <span class="s">"h2"</span><span
class="o">);</span>
+ <span class="n">URL</span> <span class="n">dbPropertiesUrl</span>
<span class="o">=</span> <span class="n">getClass</span><span
class="o">().</span><span class="na">getResource</span><span
class="o">(</span><span class="s">"/db/db-"</span> <span
class="o">+</span> <span class="n">dbvendor</span> <span class="o">+</span>
<span class="s">".properties"</span><span class="o">);</span>
+ <span class="k">if</span> <span class="o">(</span><span
class="n">dbPropertiesUrl</span> <span class="o">!=</span> <span
class="kc">null</span><span class="o">)</span> <span class="o">{</span>
+ <span class="n">InputStream</span> <span class="n">is</span> <span
class="o">=</span> <span class="n">dbPropertiesUrl</span><span
class="o">.</span><span class="na">openStream</span><span class="o">();</span>
+ <span class="k">try</span> <span class="o">{</span>
+ <span class="n">dbProperties</span><span
class="o">.</span><span class="na">load</span><span class="o">(</span><span
class="n">is</span><span class="o">);</span>
+ <span class="o">}</span>
+ <span class="k">finally</span> <span class="o">{</span>
+ <span class="n">is</span><span class="o">.</span><span
class="na">close</span><span class="o">();</span>
+ <span class="o">}</span>
+ <span class="o">}</span>
+
+ <span class="n">cdiContainer</span><span class="o">.</span><span
class="na">boot</span><span class="o">(</span><span
class="n">dbProperties</span><span class="o">);</span>
+ <span class="o">}</span>
+ <span class="k">else</span> <span class="o">{</span>
+ <span class="n">cleanInstances</span><span class="o">();</span>
+ <span class="o">}</span>
+<span class="o">}</span>
+</pre></div>
+
+
+<p>The <code>db/db-mysql.properties</code> file for Apache OpenEJB (the former
name of TomEE) would look like:</p>
+<div class="codehilite"><pre><span class="n">MYDS</span> <span
class="p">=</span> <span class="n">new</span><span class="p">:</span><span
class="o">//</span><span class="n">Resource</span>?<span
class="n">type</span><span class="p">=</span><span class="n">DataSource</span>
+<span class="n">MYDS</span><span class="p">.</span><span
class="n">JdbcDriver</span> <span class="p">=</span> <span
class="n">org</span><span class="p">.</span><span class="n">h2</span><span
class="p">.</span><span class="n">Driver</span>
+<span class="n">MYDS</span><span class="p">.</span><span
class="n">JdbcUrl</span> <span class="p">=</span> <span
class="n">jdbc</span><span class="p">:</span><span class="n">h2</span><span
class="p">:</span><span class="n">file</span><span class="p">:</span><span
class="o">/</span><span class="n">tmp</span><span class="o">/</span><span
class="n">h2</span><span class="o">/</span><span class="n">myappdb</span>
+<span class="n">MYDS</span><span class="p">.</span><span
class="n">JtaManaged</span> <span class="p">=</span> <span class="n">true</span>
+<span class="n">MYDS</span><span class="p">.</span><span
class="n">UserName</span> <span class="p">=</span> <span class="n">sa</span>
+<span class="n">MYDS</span><span class="p">.</span><span
class="n">Password</span> <span class="p">=</span>
+</pre></div>
</div>
<hr>