Added: 
websites/production/openwebbeans/content/meecrowave/meecrowave-websocket/index.html
==============================================================================
--- 
websites/production/openwebbeans/content/meecrowave/meecrowave-websocket/index.html
 (added)
+++ 
websites/production/openwebbeans/content/meecrowave/meecrowave-websocket/index.html
 Thu Aug  5 13:23:26 2021
@@ -0,0 +1,171 @@
+<!DOCTYPE html>
+<!--[if IE 8]> <html lang="en" class="ie8"> <![endif]-->
+<!--[if IE 9]> <html lang="en" class="ie9"> <![endif]-->
+<!--[if !IE]><!--> <html lang="en"> <!--<![endif]-->
+<head>
+    <title>Meecrowave :: the customizable server</title>
+    <!-- Meta -->
+    <meta charset="utf-8">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <meta name="description" content="">
+    <meta name="author" content="">
+    <link rel="shortcut icon" href="/meecrowave/favicon.ico">
+    <link 
href='http://fonts.googleapis.com/css?family=Open+Sans:300italic,400italic,600italic,700italic,800italic,400,300,600,700,800'
 rel='stylesheet' type='text/css'>
+    <!-- Global CSS -->
+    <link rel="stylesheet" 
href="/meecrowave/assets/plugins/bootstrap/css/bootstrap.min.css">
+    <!-- Plugins CSS -->
+    <link rel="stylesheet" 
href="/meecrowave/assets/plugins/font-awesome/css/font-awesome.min.css">
+    <link rel="stylesheet" 
href="/meecrowave/assets/plugins/elegant_font/css/style.css?version=1">
+    <!-- highlighting -->
+    <link rel="stylesheet" 
href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/styles/idea.min.css" 
integrity="sha256-rYB1c4yTU5UJB//rod7DtBo1JM6HAme/9Vd+VesFG2U=" 
crossorigin="anonymous" />
+
+    <!-- Theme CSS -->
+    <link id="theme-style" rel="stylesheet" 
href="/meecrowave/assets/css/styles.css">
+    <!-- HTML5 shim and Respond.js IE8 support of HTML5 elements and media 
queries -->
+    <!--[if lt IE 9]>
+      <script 
src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js";></script>
+      <script 
src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js";></script>
+    <![endif]-->
+</head>
+
+<body class="body-red">
+    <div class="page-wrapper">
+    <!-- TODO: google analytics -->
+<header class="header text-center">
+  <div class="container">
+      <div class="branding">
+          <h1 class="doc-title">
+              <span aria-hidden="true" class="icon icon_chat icon"></span>
+              <a href="/meecrowave/index.html">
+                Meecrowave
+              </a>
+          </h1>
+      </div>
+  </div><!--//container-->
+</header><!--//header-->
+<div class="doc-wrapper">
+    <div class="container">
+        <div id="doc-header" class="doc-header text-center">
+            <h1 class="doc-title"><span aria-hidden="true" class="icon icon 
icon_chat"></span> Meecrowave WebSocket</h1>
+        </div><!--//doc-header-->
+
+<div class="doc-body">
+    <div class="doc-content">
+        <div class="content-inner">
+
+
+
+
+<div class='btn-toolbar pull-right' style="z-index: 2000;">
+  <div class='btn-group'>
+      <a class="btn" href="/meecrowave/meecrowave-websocket/index.pdf"><i 
class="fa fa-file-pdf-o"></i> Download as PDF</a>
+  </div>
+</div>
+
+
+
+            <section class="doc-section">
+                <div class="admonitionblock warning">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-warning" title="Warning"></i>
+</td>
+<td class="content">
+this module is available with Apache Meecrowave &gt;= 1.2.11.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>Coordinates:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml 
hljs">&lt;dependency&gt;
+  &lt;groupId&gt;org.apache.meecrowave&lt;/groupId&gt;
+  &lt;artifactId&gt;meecrowave-websocket&lt;/artifactId&gt;
+  &lt;version&gt;${meecrowave.version}&lt;/version&gt;
+&lt;/dependency&gt;</code></pre>
+</div>
+</div>
+<div class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+this module requires <code>org.apache.tomcat:tomcat-websocket-api</code> but 
replaces <code>org.apache.tomcat:tomcat-websocket</code> until Tomcat enables a 
better way to extend its default.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>Once this module added, you can implement a server websocket endpoint as a 
CDI bean, it will use <code>CDI.current().select(endpointType).get()</code> to 
resolve it.</p>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+you can still pass a custom <code>Configurator</code> to your endpoint to 
customize the lookup or runtime of the endpoint.
+</td>
+</tr>
+</table>
+</div>
+            </section><!--//doc-section-->
+
+
+
+
+        </div><!--//content-inner-->
+    </div><!--//doc-content-->
+
+    <div class="doc-sidebar">
+        <nav id="doc-nav">
+            <ul id="doc-menu" class="nav doc-menu hidden-xs affix-top" 
data-spy="affix">
+                <li><a href="/meecrowave/index.html">Home</a></li>
+                <li><a href="/meecrowave/start.html">Quick Start</a></li>
+                <li><a href="/meecrowave/components.html">Components</a></li>
+                <li><a href="/meecrowave/download.html">Download</a></li>
+                <li><a href="/meecrowave/community.html">Community</a></li>
+            </ul><!--//doc-menu-->
+        </nav>
+    </div>
+</div>
+
+</div><!--//page-wrapper-->
+
+    <footer class="footer text-center">
+        <div class="container">
+          <div class="row">
+            <p >Copyright &copy; 2016-2020
+                <a href="http://www.apache.org/";>The Apache Software 
Foundation</a>. All rights reserved.
+            </p>
+          </div>
+        </div>
+
+        <div class="container"><!-- don't remove it otherwise theme is no more 
creative common -->
+            <small class="copyright">Designed with <i class="fa fa-heart"></i> 
by <a href="http://themes.3rdwavemedia.com/"; target="_blank">Xiaoying Riley</a> 
for developers</small>
+        </div><!--//container-->
+    </footer><!--//footer-->
+
+
+    <!-- Main Javascript -->
+    <script type="text/javascript" 
src="/meecrowave/assets/plugins/jquery-1.12.3.min.js"></script>
+    <script type="text/javascript" 
src="/meecrowave/assets/plugins/bootstrap/js/bootstrap.min.js"></script>
+    <script type="text/javascript" 
src="/meecrowave/assets/plugins/jquery-match-height/jquery.matchHeight-min.js"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/highlight.min.js" 
integrity="sha256-aYTdUrn6Ow1DDgh5JTc3aDGnnju48y/1c8s1dgkYPQ8=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/java.min.js"
 integrity="sha256-21Z1xKC/FsaqN9z9jIER9xiX4XbV5buFEVdkZvsfBIc=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/groovy.min.js"
 integrity="sha256-0B+Ps1zCncLC5JIOQ+MtIhI/UhbJkYbxWsJowD3c+tk=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/shell.min.js"
 integrity="sha256-nwOM3xEc6CFfrPNDN1upX+5ynjWKAXsg+bW63SSzte0=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/bash.min.js"
 integrity="sha256-zXrlim8wsIvcEFjsD3THiAfTvtPZifqx8q0rxegiWQc=" 
crossorigin="anonymous"></script>
+    <script type="text/javascript" 
src="/meecrowave/assets/js/main.js?version=1"></script>
+
+</body>
+</html>
+

Added: 
websites/production/openwebbeans/content/meecrowave/meecrowave-websocket/index.pdf
==============================================================================
--- 
websites/production/openwebbeans/content/meecrowave/meecrowave-websocket/index.pdf
 (added)
+++ 
websites/production/openwebbeans/content/meecrowave/meecrowave-websocket/index.pdf
 Thu Aug  5 13:23:26 2021
@@ -0,0 +1,873 @@
+%PDF-1.3
+%ÿÿÿÿ
+1 0 obj
+<< /Title (Meecrowave WebSocket)
+/Creator (Asciidoctor PDF 1.5.0.alpha.16, based on Prawn 2.2.2)
+/Producer (Asciidoctor PDF 1.5.0.alpha.16, based on Prawn 2.2.2)
+/ModDate (D:20210805152310+02'00')
+/CreationDate (D:20210805152310+02'00')
+>>
+endobj
+2 0 obj
+<< /Type /Catalog
+/Pages 3 0 R
+/Names 12 0 R
+/Outlines 18 0 R
+/PageLabels 20 0 R
+/PageMode /UseOutlines
+/OpenAction [7 0 R /FitH 842.89]
+/ViewerPreferences << /DisplayDocTitle true
+>>
+>>
+endobj
+3 0 obj
+<< /Type /Pages
+/Count 2
+/Kids [7 0 R 10 0 R]
+>>
+endobj
+4 0 obj
+<< /Length 2
+>>
+stream
+q
+
+endstream
+endobj
+5 0 obj
+<< /Type /Page
+/Parent 3 0 R
+/MediaBox [0 0 595.28 841.89]
+/CropBox [0 0 595.28 841.89]
+/BleedBox [0 0 595.28 841.89]
+/TrimBox [0 0 595.28 841.89]
+/ArtBox [0 0 595.28 841.89]
+/Contents 4 0 R
+/Resources << /ProcSet [/PDF /Text /ImageB /ImageC /ImageI]
+>>
+>>
+endobj
+6 0 obj
+<< /Length 207
+>>
+stream
+q
+/DeviceRGB cs
+0.6 0.6 0.6 scn
+/DeviceRGB CS
+0.6 0.6 0.6 SCN
+
+BT
+235.4621 361.6965 Td
+/F1.0 27 Tf
+[<4d656563726f776176652057> 60.0586 <6562536f636b> 20.0195 <6574>] TJ
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+Q
+
+endstream
+endobj
+7 0 obj
+<< /Type /Page
+/Parent 3 0 R
+/MediaBox [0 0 595.28 841.89]
+/CropBox [0 0 595.28 841.89]
+/BleedBox [0 0 595.28 841.89]
+/TrimBox [0 0 595.28 841.89]
+/ArtBox [0 0 595.28 841.89]
+/Contents 6 0 R
+/Resources << /ProcSet [/PDF /Text /ImageB /ImageC /ImageI]
+/Font << /F1.0 8 0 R
+>>
+>>
+>>
+endobj
+8 0 obj
+<< /Type /Font
+/BaseFont /8bcdde+NotoSerif
+/Subtype /TrueType
+/FontDescriptor 22 0 R
+/FirstChar 32
+/LastChar 255
+/Widths 24 0 R
+/ToUnicode 23 0 R
+>>
+endobj
+9 0 obj
+<< /Length 6265
+>>
+stream
+q
+q
+0.5 w
+/DeviceRGB CS
+0.9333 0.9333 0.9333 SCN
+108.24 805.89 m
+108.24 782.11 l
+S
+Q
+/DeviceRGB cs
+0.749 0.4118 0.0 scn
+/DeviceRGB CS
+0.749 0.4118 0.0 SCN
+
+BT
+66.35 785.5105 Td
+/F2.1 23.779999999999973 Tf
+<21> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+120.24 789.926 Td
+/F1.0 10.5 Tf
+<74686973206d6f64756c6520697320617661696c61626c65207769746820417061636865204d656563726f77617665203e3d20312e322e31312e>
 Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+48.24 758.146 Td
+/F1.0 10.5 Tf
+<436f6f7264696e617465733a> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+q
+0.9608 0.9608 0.9608 scn
+52.24 742.33 m
+543.04 742.33 l
+545.2491 742.33 547.04 740.5391 547.04 738.33 c
+547.04 650.63 l
+547.04 648.4209 545.2491 646.63 543.04 646.63 c
+52.24 646.63 l
+50.0309 646.63 48.24 648.4209 48.24 650.63 c
+48.24 738.33 l
+48.24 740.5391 50.0309 742.33 52.24 742.33 c
+h
+f
+0.8 0.8 0.8 SCN
+0.75 w
+52.24 742.33 m
+543.04 742.33 l
+545.2491 742.33 547.04 740.5391 547.04 738.33 c
+547.04 650.63 l
+547.04 648.4209 545.2491 646.63 543.04 646.63 c
+52.24 646.63 l
+50.0309 646.63 48.24 648.4209 48.24 650.63 c
+48.24 738.33 l
+48.24 740.5391 50.0309 742.33 52.24 742.33 c
+h
+S
+Q
+0.1843 0.4353 0.6235 scn
+0.1843 0.4353 0.6235 SCN
+
+BT
+59.24 719.505 Td
+/F3.0 11 Tf
+<3c646570656e64656e63793e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+59.24 704.765 Td
+/F3.0 11 Tf
+<ca20> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.1843 0.4353 0.6235 scn
+0.1843 0.4353 0.6235 SCN
+
+BT
+70.24 704.765 Td
+/F3.0 11 Tf
+<3c67726f757049643e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+119.74 704.765 Td
+/F3.0 11 Tf
+<6f72672e6170616368652e6d656563726f77617665> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.1843 0.4353 0.6235 scn
+0.1843 0.4353 0.6235 SCN
+
+BT
+235.24 704.765 Td
+/F3.0 11 Tf
+<3c2f67726f757049643e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+59.24 690.025 Td
+/F3.0 11 Tf
+<ca20> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.1843 0.4353 0.6235 scn
+0.1843 0.4353 0.6235 SCN
+
+BT
+70.24 690.025 Td
+/F3.0 11 Tf
+<3c617274696661637449643e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+136.24 690.025 Td
+/F3.0 11 Tf
+<6d656563726f776176652d776562736f636b6574> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.1843 0.4353 0.6235 scn
+0.1843 0.4353 0.6235 SCN
+
+BT
+246.24 690.025 Td
+/F3.0 11 Tf
+<3c2f617274696661637449643e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+59.24 675.285 Td
+/F3.0 11 Tf
+<ca20> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.1843 0.4353 0.6235 scn
+0.1843 0.4353 0.6235 SCN
+
+BT
+70.24 675.285 Td
+/F3.0 11 Tf
+<3c76657273696f6e3e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+119.74 675.285 Td
+/F3.0 11 Tf
+<247b6d656563726f776176652e76657273696f6e7d> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.1843 0.4353 0.6235 scn
+0.1843 0.4353 0.6235 SCN
+
+BT
+235.24 675.285 Td
+/F3.0 11 Tf
+<3c2f76657273696f6e3e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.1843 0.4353 0.6235 scn
+0.1843 0.4353 0.6235 SCN
+
+BT
+59.24 660.545 Td
+/F3.0 11 Tf
+<3c2f646570656e64656e63793e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+q
+0.5 w
+0.9333 0.9333 0.9333 SCN
+108.24 634.63 m
+108.24 579.29 l
+S
+Q
+0.749 0.0 0.0 scn
+0.749 0.0 0.0 SCN
+
+BT
+67.956 598.392 Td
+/F2.1 24 Tf
+<22> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+8.9119 Tw
+
+BT
+120.24 618.666 Td
+/F1.0 10.5 Tf
+<74686973206d6f64756c6520726571756972657320> Tj
+ET
+
+
+0.0 Tw
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.6941 0.1294 0.2745 scn
+0.6941 0.1294 0.2745 SCN
+
+8.9119 Tw
+
+BT
+253.8132 618.666 Td
+/F3.0 10.5 Tf
+<6f72672e6170616368652e746f6d6361743a746f6d6361742d776562736f636b65742d617069> 
Tj
+ET
+
+
+0.0 Tw
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+8.9119 Tw
+
+BT
+453.3132 618.666 Td
+/F1.0 10.5 Tf
+<20627574207265706c61636573> Tj
+ET
+
+
+0.0 Tw
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.6941 0.1294 0.2745 scn
+0.6941 0.1294 0.2745 SCN
+
+0.0672 Tw
+
+BT
+120.24 602.886 Td
+/F3.0 10.5 Tf
+<6f72672e6170616368652e746f6d6361743a746f6d6361742d776562736f636b6574> Tj
+ET
+
+
+0.0 Tw
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+0.0672 Tw
+
+BT
+298.74 602.886 Td
+/F1.0 10.5 Tf
+[<20756e74696c2054> 29.7852 
<6f6d63617420656e61626c6573206120626574746572207761> 20.0195 
<7920746f20657874656e6420697473>] TJ
+ET
+
+
+0.0 Tw
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+120.24 587.106 Td
+/F1.0 10.5 Tf
+<64656661756c742e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+0.3711 Tw
+
+BT
+48.24 555.326 Td
+/F1.0 10.5 Tf
+[<4f6e63652074686973206d6f64756c652061646465642c20796f752063616e20696d706c656d656e7420612073657276657220776562736f636b>
 20.0195 
<657420656e64706f696e74206173206120434449206265616e2c2069742077696c6c20757365>] 
TJ
+ET
+
+
+0.0 Tw
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.6941 0.1294 0.2745 scn
+0.6941 0.1294 0.2745 SCN
+
+BT
+48.24 539.546 Td
+/F3.0 10.5 Tf
+<4344492e63757272656e7428292e73656c65637428656e64706f696e7454797065292e6765742829>
 Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+258.24 539.546 Td
+/F1.0 10.5 Tf
+<20746f207265736f6c76652069742e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+q
+0.5 w
+0.9333 0.9333 0.9333 SCN
+108.24 523.73 m
+108.24 484.17 l
+S
+Q
+0.098 0.251 0.4863 scn
+0.098 0.251 0.4863 SCN
+
+BT
+67.956 495.382 Td
+/F2.1 24 Tf
+<23> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+0.6452 Tw
+
+BT
+120.24 507.766 Td
+/F1.0 10.5 Tf
+<796f752063616e207374696c6c2070617373206120637573746f6d20> Tj
+ET
+
+
+0.0 Tw
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.6941 0.1294 0.2745 scn
+0.6941 0.1294 0.2745 SCN
+
+0.6452 Tw
+
+BT
+259.1304 507.766 Td
+/F3.0 10.5 Tf
+<436f6e666967757261746f72> Tj
+ET
+
+
+0.0 Tw
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+0.6452 Tw
+
+BT
+322.1304 507.766 Td
+/F1.0 10.5 Tf
+<20746f20796f757220656e64706f696e7420746f20637573746f6d697a6520746865206c6f6f6b7570>
 Tj
+ET
+
+
+0.0 Tw
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+120.24 491.986 Td
+/F1.0 10.5 Tf
+<6f722072756e74696d65206f662074686520656e64706f696e742e> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+q
+0.0 0.0 0.0 scn
+0.0 0.0 0.0 SCN
+1 w
+0 J
+0 j
+[] 0 d
+/Stamp1 Do
+0.2 0.2 0.2 scn
+0.2 0.2 0.2 SCN
+
+BT
+541.009 14.388 Td
+/F1.0 9 Tf
+<31> Tj
+ET
+
+0.0 0.0 0.0 SCN
+0.0 0.0 0.0 scn
+Q
+Q
+
+endstream
+endobj
+10 0 obj
+<< /Type /Page
+/Parent 3 0 R
+/MediaBox [0 0 595.28 841.89]
+/CropBox [0 0 595.28 841.89]
+/BleedBox [0 0 595.28 841.89]
+/TrimBox [0 0 595.28 841.89]
+/ArtBox [0 0 595.28 841.89]
+/Contents 9 0 R
+/Resources << /ProcSet [/PDF /Text /ImageB /ImageC /ImageI]
+/Font << /F2.1 14 0 R
+/F1.0 8 0 R
+/F3.0 15 0 R
+>>
+/XObject << /Stamp1 16 0 R
+>>
+>>
+>>
+endobj
+11 0 obj
+[10 0 R /XYZ 0 841.89 null]
+endobj
+12 0 obj
+<< /Type /Names
+/Dests 13 0 R
+>>
+endobj
+13 0 obj
+<< /Names [(__anchor-top) 11 0 R]
+>>
+endobj
+14 0 obj
+<< /Type /Font
+/BaseFont /a49639+FontAwesome
+/Subtype /TrueType
+/FontDescriptor 26 0 R
+/FirstChar 32
+/LastChar 255
+/Widths 28 0 R
+/ToUnicode 27 0 R
+>>
+endobj
+15 0 obj
+<< /Type /Font
+/BaseFont /f77b96+mplus1mn-regular
+/Subtype /TrueType
+/FontDescriptor 30 0 R
+/FirstChar 32
+/LastChar 255
+/Widths 32 0 R
+/ToUnicode 31 0 R
+>>
+endobj
+16 0 obj
+<< /Type /XObject
+/Subtype /Form
+/BBox [0 0 595.28 841.89]
+/Length 162
+>>
+stream
+q
+/DeviceRGB cs
+0.0 0.0 0.0 scn
+/DeviceRGB CS
+0.0 0.0 0.0 SCN
+1 w
+0 J
+0 j
+[] 0 d
+q
+0.25 w
+/DeviceRGB CS
+0.8667 0.8667 0.8667 SCN
+48.24 30.0 m
+547.04 30.0 l
+S
+Q
+Q
+
+endstream
+endobj
+17 0 obj
+<< /Type /XObject
+/Subtype /Form
+/BBox [0 0 595.28 841.89]
+/Length 162
+>>
+stream
+q
+/DeviceRGB cs
+0.0 0.0 0.0 scn
+/DeviceRGB CS
+0.0 0.0 0.0 SCN
+1 w
+0 J
+0 j
+[] 0 d
+q
+0.25 w
+/DeviceRGB CS
+0.8667 0.8667 0.8667 SCN
+48.24 30.0 m
+547.04 30.0 l
+S
+Q
+Q
+
+endstream
+endobj
+18 0 obj
+<< /Type /Outlines
+/Count 1
+/First 19 0 R
+/Last 19 0 R
+>>
+endobj
+19 0 obj
+<< /Title 
<feff004d0065006500630072006f007700610076006500200057006500620053006f0063006b00650074>
+/Parent 18 0 R
+/Count 0
+/Dest [7 0 R /XYZ 0 841.89 null]
+>>
+endobj
+20 0 obj
+<< /Nums [0 << /P (i)
+>> 1 << /P (1)
+>>]
+>>
+endobj
+21 0 obj
+<< /Length1 8112
+/Length 5099
+/Filter [/FlateDecode]
+>>
+stream
+xœ½YypUš¯»uú”-Y¶dK-ɒ,Û:lI¾%ۑ¯ø>e'q˶|ćÇÙ›„¡YQi¸Ë±XÌњ´”É…
"¡Èé%¹¿¢0²ˆ©éÜǂ…]u…   Q©ÌÙX¶Ù²îŒÅÓ|Äʂڮ¢à±¹LaãP‰Z]:ÔT¶Ý“œì 
æ>¸Ç§rlH;nÅÕ\š2w¶¤;œöZwŠïî÷°Î=<šËÏ;9<rb8bc'äÌqàÙ²˜3ë䐟Ãn¢¬ïôÏÊËgž
+”ìé+éÜkö¹
+·—¥ÞrûaCŒ<³ýçòâ;ß}pö“ýyI®weÃ_jÌ>sð£÷‹#Ӓ
yο`—:ÏñU¼œË>£P:Mfö`ž<¼¢t0 1000 1000 1000 1000 1000 1000 1000 1000 1000 
1000 1000 1000 1000 1000 1000 1
 000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 1000 
1000]
+endobj
+25 0 obj
+<< /Length1 2204
+/Length 1114
+/Filter [/FlateDecode]
+>>
+stream
+xœÕUKlU=ofü'ñØ
á;?‰Š|“4MD>AB… 6RšiâOÔxllC’²±ª�ÁøÖ0ͤZ̊]ÙHZʊYIU'1p¹8É?FÛ‡Ù„d
+TM­7Ö:vñF–Â@B=dÍ.Ý6§ÊVè’ĺrILFw؝2¦’Yr¨GÊJb¶'+¥™€&Â>nÙÌÒ`%»-Ì6°þŽYö‘Ò?±Ò&Zä"'²ÉÂÖ;$e²O¶Ø_¤ÁuÚ±=Æèe3•´Ú3æ]IÖ'’Ò²^
+ÛéƒR˜"ߞH^ Šî_@é#‹ƒrépÙ².›K&*Ņ:7»_*èÈ6Ñ«ÜÉù-ñ,ä
+endstream
+endobj
+30 0 obj
+<< /Type /FontDescriptor
+/FontName /f77b96+mplus1mn-regular
+/FontFile2 29 0 R
+/FontBBox [0 -230 1000 860]
+/Flags 4
+/StemV 0
+/ItalicAngle 0.0
+/Ascent 860
+/Descent -140
+/CapHeight 860
+/XHeight 0
+>>
+endobj
+31 0 obj
+<< /Length 1286
+/Filter [/FlateDecode]
+>>
+stream
+xœe×ËnÛF†á½®BËtHs&Ã@‘n¼èu{stԒ +ß}ù½¤i 
Æ/‰œy¾_Ã!uøôôÓÓùtß~»]ês¿ïÇéÜnýíòåVû¾ô—Óyg쾝êýë+þÖ×|ݶ“Ÿßßîýõé<.û‡‡Ýá÷í÷ûí}ÿáÇv)ý‡Ýá×[ë·ÓùeÿáÏOÏÛëç/×ë_ýµŸïûãîñqßúØú9_ɯ}ഏOmûütÿ¸óϼ_ûÞòÚLL½´þv͵ßòù¥ïŽÇLJ1wýÜþó‘9ç)eÔÏù6=nÿ·ÒP•–Òªt”N¥§ô*eP)£ÊD™T.”‹Ê•rU™)³ÊBYTVʪ²Q6•²«”[¢ƒ×Èkðy
^#¯Ákä5x¼¯‘×à5ò¼F^ƒ×Èkðy
^#¯Ákä5x¼¯‘×à5ò¼F^‹×ÊkñZy-^+¯Åkåµx­¼¯•×âµòZ¼V^‹×ÊkñZy-^+¯Åkåµx­¼¯•×âµòZ¼V^‡×Éëð:y^'¯Ãëäux¼¯“×áuò:¼N^‡×Éëð:y^'¯Ãëäux¼¯“×áuò:¼N^×Ëëñzy=^/¯Çëåõx½¼¯—×ãõòz¼^^×Ëëñzy=^/¯Çëåõx½¼¯—×ãõòz¼^ހ7ÈðyÞ
 oÀä
xƒ¼o7à
ò¼Aހ7ÈðyÞ oÀä
xƒ¼o7à
ò¼Aވ7ÊñFy#Þ(oÄ»ýÕnóuWùß.I•$’$*I$IT’H’¨$‘$QI"I¢’D’D%‰$‰JI•$’$*I$IT’H’¨$‰$III’’$’$%I$Iê|›äMx“¼
   o’7áMò&¼Iބ7ɛð&yÞ$o›äMx“¼    o’7áMò.xy¼U†oÕÄÞªÙ¼M¼MÈoÓlÞÎx;ãâí
+¿àíJ¼àíê·31ÞÎÄx;ãí
+¿âíJ¼âíJ¼â특âíâ¬x»¯x»¯x‡+Þ!Êw¹âB®x‡b®x‡+ށïrÅ;àà2äÍkçΜñJ¼Y³e¼Y†Œ7+|œÆx‹
oSŠŒ7+[ƛețךyÞ¢oVûò浖
-㭌‹·é€"¯åþR¦W*–Ó4Xq”êC™^Jú[(£à®^ƒ1»¢y]•¡Èk¹}¼YM-x
¥úëÈVæz·ÌþÊ[YEãV¼Y³ÕÙ_}/7×*¯Y%«ê¯eã­Ó«q+ýÝ:÷Ý.â¿7™Jã‹ÈÛE¡/‰3Y(Y™*AˆW       
RõÝVJSƒª‚¶á:(u@c¡ðD±]a*Õíf)¤9J­ñæ)¥o,#Ú\ØZ>MU¡Û\ØjPSã
{HSãçMª•ôj»ˆ·’{fk”Œ°yGá‰m[z*EïsaëÝ>Š&îÓ«Óúôj%u¼Üî;
¥2^ÆWÃ[Õßήòvú[¾Ïþ2î쯲uú[•¢³Pš:ÙçÂVÌ¡§Õ…>¼M†ÁBi2
.Ħ‰ÇÜèԇ!¯áñdÈk¹`†¼–=oÌ‘qWޕwdJF(”L164ÞU Ñ)™x0Eú~êñZ?</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="java" class="language-java 
hljs">@Path("kitchen")
 @ApplicationScoped
 public class HelloKitchen {
     @GET
     public String getMenu() {
         return "good things";
     }
-}</code></pre> 
-   </div> 
-  </div> 
-  <div class="paragraph"> 
-   <p>Then booting Meecrowave is as easy as launching:</p> 
-  </div> 
-  <div class="listingblock"> 
-   <div class="content"> 
-    <pre class="highlightjs highlight"><code class="language-java hljs" 
data-lang="java">try (final Meecrowave meecrowave = new Meecrowave().bake()) {
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Then booting Meecrowave is as easy as launching - or reuse 
<code>org.apache.meecrowave.runner.Cli</code> provided main:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="java" class="language-java 
hljs">try (final Meecrowave meecrowave = new Meecrowave().bake()) {
     new Scanner(System.in).nextLine();
-}</code></pre> 
-   </div> 
-  </div> 
-  <div class="paragraph"> 
-   <p>You should get some output containing:</p> 
-  </div> 
-  <div class="listingblock"> 
-   <div class="content"> 
-    <pre class="highlightjs 
highlight"><code>[19:54:55.397][INFO][main][.meecrowave.cxf.CxfCdiAutoSetup] 
REST Application: / -&gt; org.apache.cxf.cdi.DefaultApplication
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>You should get some output containing:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-none 
hljs">[19:54:55.397][INFO][main][.meecrowave.cxf.CxfCdiAutoSetup] REST 
Application: / -&gt; org.apache.cxf.cdi.DefaultApplication
 [19:54:55.399][INFO][main][.meecrowave.cxf.CxfCdiAutoSetup]      Service URI: 
/kitchen  -&gt; org.app.HelloKitchen
-[19:54:55.401][INFO][main][.meecrowave.cxf.CxfCdiAutoSetup]               GET 
/kitchen/ -&gt;      String getMenu()</code></pre> 
-   </div> 
-  </div> 
-  <div class="paragraph"> 
-   <p>And you can check it works doing:</p> 
-  </div> 
-  <div class="listingblock"> 
-   <div class="content"> 
-    <pre class="highlightjs highlight"><code>curl 
http://localhost:8080/kitchen</code></pre> 
-   </div> 
-  </div> 
- </div> 
-</div> 
-<div class="sect1"> 
- <h2 id="_you_re_in_a_hurry_use_groovy">You’re in a hurry? Use groovy!</h2> 
- <div class="sectionbody"> 
-  <div class="admonitionblock important"> 
-   <table> 
-    <tbody>
-     <tr> 
-      <td class="icon"> <i class="fa icon-important" title="Important"></i> 
</td> 
-      <td class="content"> this feature is supported starting from version 
0.3.0 only. </td> 
-     </tr> 
-    </tbody>
-   </table> 
-  </div> 
-  <div class="paragraph"> 
-   <p>Create a file called <code>hello.groovy</code>:</p> 
-  </div> 
-  <div class="listingblock"> 
-   <div class="content"> 
-    <pre class="highlightjs highlight"><code class="language-java hljs" 
data-lang="java">@Grab('org.apache.meecrowave:meecrowave-core:0.3.0')
+[19:54:55.401][INFO][main][.meecrowave.cxf.CxfCdiAutoSetup]               GET 
/kitchen/ -&gt;      String getMenu()</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>And you can check it works doing:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-none hljs">curl 
http://localhost:8080/kitchen</code></pre>
+</div>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_youre_in_a_hurry_use_groovy">You&#8217;re in a hurry? Use groovy!</h2>
+<div class="sectionbody">
+<div class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+this feature is supported starting from version 0.3.0 only.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>Create a file called <code>hello.groovy</code>:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="java" class="language-java 
hljs">@Grab('org.apache.meecrowave:meecrowave-core:0.3.0')
 
 import org.apache.meecrowave.Meecrowave
 
@@ -149,34 +200,45 @@ class Hello {
     }
 }
 
-new Meecrowave().bake().await()</code></pre> 
-   </div> 
-  </div> 
-  <div class="paragraph"> 
-   <p>then</p> 
-  </div> 
-  <div class="listingblock"> 
-   <div class="content"> 
-    <pre class="highlightjs highlight"><code class="language-bash hljs" 
data-lang="bash">groovy hello.groovy</code></pre> 
-   </div> 
-  </div> 
-  <div class="paragraph"> 
-   <p>Finally you can test it:</p> 
-  </div> 
-  <div class="listingblock"> 
-   <div class="content"> 
-    <pre class="highlightjs highlight"><code class="language-bash hljs" 
data-lang="bash">curl http://localhost:8080/hello</code></pre> 
-   </div> 
-  </div> 
- </div> 
-</div> 
-<div class="sect1"> 
- <h2 id="_sample">Sample</h2> 
- <div class="sectionbody"> 
-  <div class="paragraph"> 
-   <p><a href="https://github.com/apache/openwebbeans-meecrowave-examples"; 
class="bare">https://github.com/apache/openwebbeans-meecrowave-examples</a> 
contains ready to use examples using meecrowave.</p> 
-  </div> 
- </div> 
+new Meecrowave().bake().await()</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>then</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="bash" class="language-bash 
hljs">groovy hello.groovy</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Finally you can test it:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="bash" class="language-bash 
hljs">curl http://localhost:8080/hello</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_and_my_war">And my war?</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>See <a href="meecrowave-core/deploy-webapp.html">How to deploy a war</a> to 
see how to use meecrowave to deploy an existing war.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_sample">Sample</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><a href="https://github.com/apache/openwebbeans-meecrowave-examples"; 
class="bare">https://github.com/apache/openwebbeans-meecrowave-examples</a> 
contains ready to use examples using meecrowave.</p>
+</div>
+<div class="paragraph">
+<p>You can also find more information on our <a href="howto.html">How To</a> 
page.</p>
+</div>
+</div>
 </div>
             </section><!--//doc-section-->
 
@@ -204,8 +266,8 @@ new Meecrowave().bake().await()</code></
     <footer class="footer text-center">
         <div class="container">
           <div class="row">
-            <p >Copyright &copy; 2016
-                <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>. All rights reserved.
+            <p >Copyright &copy; 2016-2020
+                <a href="http://www.apache.org/";>The Apache Software 
Foundation</a>. All rights reserved.
             </p>
           </div>
         </div>
@@ -220,10 +282,13 @@ new Meecrowave().bake().await()</code></
     <script type="text/javascript" 
src="/meecrowave/assets/plugins/jquery-1.12.3.min.js"></script>
     <script type="text/javascript" 
src="/meecrowave/assets/plugins/bootstrap/js/bootstrap.min.js"></script>
     <script type="text/javascript" 
src="/meecrowave/assets/plugins/jquery-match-height/jquery.matchHeight-min.js"></script>
-    <script type="text/javascript" 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/highlight.min.js"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/highlight.min.js" 
integrity="sha256-aYTdUrn6Ow1DDgh5JTc3aDGnnju48y/1c8s1dgkYPQ8=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/java.min.js"
 integrity="sha256-21Z1xKC/FsaqN9z9jIER9xiX4XbV5buFEVdkZvsfBIc=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/groovy.min.js"
 integrity="sha256-0B+Ps1zCncLC5JIOQ+MtIhI/UhbJkYbxWsJowD3c+tk=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/shell.min.js"
 integrity="sha256-nwOM3xEc6CFfrPNDN1upX+5ynjWKAXsg+bW63SSzte0=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/bash.min.js"
 integrity="sha256-zXrlim8wsIvcEFjsD3THiAfTvtPZifqx8q0rxegiWQc=" 
crossorigin="anonymous"></script>
     <script type="text/javascript" 
src="/meecrowave/assets/js/main.js?version=1"></script>
 
 </body>
 </html>
 
-

Modified: websites/production/openwebbeans/content/meecrowave/testing/index.html
==============================================================================
--- websites/production/openwebbeans/content/meecrowave/testing/index.html 
(original)
+++ websites/production/openwebbeans/content/meecrowave/testing/index.html Thu 
Aug  5 13:23:26 2021
@@ -18,7 +18,7 @@
     <link rel="stylesheet" 
href="/meecrowave/assets/plugins/font-awesome/css/font-awesome.min.css">
     <link rel="stylesheet" 
href="/meecrowave/assets/plugins/elegant_font/css/style.css?version=1">
     <!-- highlighting -->
-    <link rel="stylesheet" 
href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/styles/idea.min.css">
+    <link rel="stylesheet" 
href="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/styles/idea.min.css" 
integrity="sha256-rYB1c4yTU5UJB//rod7DtBo1JM6HAme/9Vd+VesFG2U=" 
crossorigin="anonymous" />
 
     <!-- Theme CSS -->
     <link id="theme-style" rel="stylesheet" 
href="/meecrowave/assets/css/styles.css">
@@ -66,32 +66,35 @@
 
 
             <section class="doc-section">
-                <div class="sect1"> 
- <h2 id="_junit">JUnit</h2> 
- <div class="sectionbody"> 
-  <div class="paragraph"> 
-   <p>Coordinates:</p> 
-  </div> 
-  <div class="listingblock"> 
-   <div class="content"> 
-    <pre class="highlightjs highlight"><code class="language-xml hljs" 
data-lang="xml">&lt;dependency&gt;
+                <div class="sect1">
+<h2 id="_junit">JUnit</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Coordinates:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml 
hljs">&lt;dependency&gt;
   &lt;groupId&gt;org.apache.meecrowave&lt;/groupId&gt;
   &lt;artifactId&gt;meecrowave-junit&lt;/artifactId&gt;
   &lt;version&gt;${meecrowave.version}&lt;/version&gt;
-&lt;/dependency&gt;</code></pre> 
-   </div> 
-  </div> 
-  <div class="sect2"> 
-   <h3 id="_rules_and_runners">Rules and Runners</h3> 
-   <div class="paragraph"> 
-    <p>Meecrowave provides two flavors of JUnit integration: standalone or 
runners/rules. The standalone one will ensure there is a single container for 
the whole JVM. It also fits standalone environments where you want to control 
the lifecycle. The other one will follow the JUnit lifecycle (per class or test 
rule).</p> 
-   </div> 
-   <div class="paragraph"> 
-    <p>Here how to use the standalone flavor:</p> 
-   </div> 
-   <div class="listingblock"> 
-    <div class="content"> 
-     <pre class="highlightjs highlight"><code class="language-java hljs" 
data-lang="java">@RunWith(MonoMeecrowave.Runner.class)
+  &lt;scope&gt;test&lt;/scope&gt;
+&lt;/dependency&gt;</code></pre>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_rules_and_runners">Rules and Runners</h3>
+<div class="paragraph">
+<p>Meecrowave provides two flavors of JUnit integration: standalone or 
runners/rules. The standalone one will
+ensure there is a single container for the whole JVM. It also fits standalone 
environments where you want to control the lifecycle.
+The other one will follow the JUnit lifecycle (per class or test rule).</p>
+</div>
+<div class="paragraph">
+<p>Here how to use the standalone flavor:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="java" class="language-java 
hljs">@RunWith(MonoMeecrowave.Runner.class)
 public class MonoMeecrowaveRuleTest {
     /* or
     @ClassRule
@@ -105,21 +108,23 @@ public class MonoMeecrowaveRuleTest {
     public void test() throws IOException {
         // use "http://localhost:"; + config.getHttpPort()
     }
-}</code></pre> 
-    </div> 
-   </div> 
-   <div class="paragraph"> 
-    <p>When using the standalone, 
<code>@MonoMeecrowave.Runner.ConfigurationInject</code> allows to still access 
the configuration and random HTTP port.</p> 
-   </div> 
-   <div class="paragraph"> 
-    <p>For the configuration, the standalone runner will use a global 
configuration shared by all tests. To load it it will use a standard 
<code>ServiceLoader</code> on type 
<code>org.apache.meecrowave.Meecrowave$ConfigurationCustomizer</code>.</p> 
-   </div> 
-   <div class="paragraph"> 
-    <p>And here is the one bound to the JUnit lifecycle</p> 
-   </div> 
-   <div class="listingblock"> 
-    <div class="content"> 
-     <pre class="highlightjs highlight"><code class="language-java hljs" 
data-lang="java">public class MeecrowaveRuleTest {
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>When using the standalone, 
<code>@MonoMeecrowave.Runner.ConfigurationInject</code> allows to still
+access the configuration and random HTTP port.</p>
+</div>
+<div class="paragraph">
+<p>For the configuration, the standalone runner will use a global 
configuration shared by all tests. To load it
+it will use a standard <code>ServiceLoader</code> on type 
<code>org.apache.meecrowave.Meecrowave$ConfigurationCustomizer</code>.</p>
+</div>
+<div class="paragraph">
+<p>And here is the one bound to the JUnit lifecycle</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="java" class="language-java 
hljs">public class MeecrowaveRuleTest {
     @ClassRule // started once for the class, @Rule would be per method
     public static final MeecrowaveRule RULE = new MeecrowaveRule();
 
@@ -127,24 +132,28 @@ public class MonoMeecrowaveRuleTest {
     public void test() throws IOException {
         // use "http://localhost:"; + RULE.getConfiguration().getHttpPort()
     }
-}</code></pre> 
-    </div> 
-   </div> 
-   <div class="paragraph"> 
-    <p>As usual with JUnit rules, you can decide whereas the Meecrowave 
instance is bound to the entire test class or a method by using @ClassRule or 
@Rule.</p> 
-   </div> 
-  </div> 
-  <div class="sect2"> 
-   <h3 id="_junit_5">JUnit 5</h3> 
-   <div class="paragraph"> 
-    <p>JUnit 5 integrates a new <code>Extension</code> system. It is not yet 
very well supported by IDEs but you can already use it with Gradle and Maven 
(see <a href="http://junit.org/junit5/docs/current/user-guide/#running-tests"; 
class="bare">http://junit.org/junit5/docs/current/user-guide/#running-tests</a>).</p>
 
-   </div> 
-   <div class="paragraph"> 
-    <p>The usage has two annotations: <code>@MeecrowaveConfig</code> which 
remaps most of the configuration of Meecrowave and 
<code>@MonoMeecrowaveConfig</code> which is close to 
<code>MonoMeecrowave.Runner</code> in term of usage.</p> 
-   </div> 
-   <div class="listingblock"> 
-    <div class="content"> 
-     <pre class="highlightjs highlight"><code class="language-java hljs" 
data-lang="java">@MeecrowaveConfig /*(some config)*/
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>As usual with JUnit rules, you can decide whereas the Meecrowave instance 
is bound to the entire test class
+or a method by using @ClassRule or @Rule.</p>
+</div>
+</div>
+<div class="sect2">
+<h3 id="_junit_5">JUnit 5</h3>
+<div class="paragraph">
+<p>JUnit 5 integrates a new <code>Extension</code> system. It is not yet very 
well supported by IDEs but you can already use it with
+Gradle and Maven (see <a 
href="http://junit.org/junit5/docs/current/user-guide/#running-tests"; 
class="bare">http://junit.org/junit5/docs/current/user-guide/#running-tests</a>).</p>
+</div>
+<div class="paragraph">
+<p>The usage has two annotations: <code>@MeecrowaveConfig</code> which remaps 
most of the configuration of Meecrowave and <code>@MonoMeecrowaveConfig</code>
+which is close to <code>MonoMeecrowave.Runner</code> in term of usage.</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="java" class="language-java 
hljs">@MeecrowaveConfig /*(some config)*/
+@TestInstance(PER_CLASS)
 public class MeecrowaveConfigTest {
     @ConfigurationInject
     private Meecrowave.Builder config;
@@ -154,62 +163,83 @@ public class MeecrowaveConfigTest {
         final String base = "http://localhost:"; + config.getHttpPort();
         // asserts
     }
-}</code></pre> 
-    </div> 
-   </div> 
-   <div class="paragraph"> 
-    <p>Or</p> 
-   </div> 
-   <div class="listingblock"> 
-    <div class="content"> 
-     <pre class="highlightjs highlight"><code class="language-java hljs" 
data-lang="java">@MonoMeecrowaveConfig
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Or</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="java" class="language-java 
hljs">@MonoMeecrowaveConfig
 public class MeecrowaveConfigTest {
     // ...
-}</code></pre> 
-    </div> 
-   </div> 
-   <div class="admonitionblock tip"> 
-    <table> 
-     <tbody>
-      <tr> 
-       <td class="icon"> <i class="fa icon-tip" title="Tip"></i> </td> 
-       <td class="content"> JUnit 5 integration provides an 
<code>@AfterFirstInjection</code> method and <code>@AfterLastTest</code> which 
can be used to setup/reset some environment using injections once for a set of 
test methods. The methods must not have any parameter. </td> 
-      </tr> 
-     </tbody>
-    </table> 
-   </div> 
-  </div> 
- </div> 
-</div> 
-<div class="sect1"> 
- <h2 id="_arquillian_container">Arquillian Container</h2> 
- <div class="sectionbody"> 
-  <div class="paragraph"> 
-   <p>Container dependency:</p> 
-  </div> 
-  <div class="listingblock"> 
-   <div class="content"> 
-    <pre class="highlightjs highlight"><code class="language-xml hljs" 
data-lang="xml">&lt;dependency&gt;
+}</code></pre>
+</div>
+</div>
+<div class="admonitionblock tip">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-tip" title="Tip"></i>
+</td>
+<td class="content">
+JUnit 5 integration provides an <code>@AfterFirstInjection</code> method and 
<code>@AfterLastTest</code>
+which can be used to setup/reset some environment using injections once for a 
set of test methods.
+The methods must not have any parameter.
+</td>
+</tr>
+</table>
+</div>
+<div class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+when not using <code>@TestInstance(PER_CLASS)</code>, container is started per 
test method. Generally speaking you should  try to align the scope of your 
container to the scope of validity of your beans.
+For a library it is generally the class (so <code>@MeecrowaveConfig 
@TestInstance(PER_CLASS)</code>) and for an application the whole test set (so 
<code>@MonoMeecrowaveConfig</code>).
+Note that using an <code>Extension</code> you can adjust mocks or spy beans 
dynamically without a container restart.
+Having the longest life time for the container will make your test suite 
faster to execute.
+</td>
+</tr>
+</table>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_arquillian_container">Arquillian Container</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Container dependency:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml 
hljs">&lt;dependency&gt;
   &lt;groupId&gt;org.apache.meecrowave&lt;/groupId&gt;
   &lt;artifactId&gt;meecrowave-arquillian&lt;/artifactId&gt;
   &lt;version&gt;${meecrowave.version}&lt;/version&gt;
-&lt;/dependency&gt;</code></pre> 
-   </div> 
-  </div> 
-  <div class="paragraph"> 
-   <p>For the configuration check <a 
href="/meecrowave/meecrowave-core/configuration.html">Core 
configuration</a>.</p> 
-  </div> 
-  <div class="paragraph"> 
-   <p>Here is a sample:</p> 
-  </div> 
-  <div class="listingblock"> 
-   <div class="content"> 
-    <pre class="highlightjs highlight"><code class="language-xml hljs" 
data-lang="xml">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
+  &lt;scope&gt;test&lt;/scope&gt;
+&lt;/dependency&gt;</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>For the configuration check <a 
href="/meecrowave/meecrowave-core/configuration.html">Core 
configuration</a>.</p>
+</div>
+<div class="paragraph">
+<p>Here is a sample:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code data-lang="xml" class="language-xml 
hljs">&lt;?xml version="1.0" encoding="UTF-8"?&gt;
 &lt;arquillian xmlns="http://jboss.org/schema/arquillian";
             xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance";
             xsi:schemaLocation="http://jboss.org/schema/arquillian 
http://jboss.org/schema/arquillian/arquillian_1_0.xsd"&gt;
   &lt;container qualifier="meecrowave" default="true"&gt;
     &lt;configuration&gt;
+      &lt;property name="antiResourceLocking"&gt;false&lt;/property&gt;
       &lt;property name="arquillianProtocol"&gt;Servlet 3.1&lt;/property&gt;
       &lt;property name="cdiConversation"&gt;false&lt;/property&gt;
       &lt;property name="clientAuth"&gt;&lt;/property&gt;
@@ -274,10 +304,11 @@ public class MeecrowaveConfigTest {
       &lt;property name="ssl"&gt;false&lt;/property&gt;
       &lt;property name="sslProtocol"&gt;&lt;/property&gt;
       &lt;property name="stopPort"&gt;-1&lt;/property&gt;
-      &lt;property 
name="tempDir"&gt;/var/folders/cc/5g6j5x3x74154g2rmmtpz_4w0000gn/T/meecrowave_184680423404202&lt;/property&gt;
+      &lt;property 
name="tempDir"&gt;/tmp/meecrowave_16133794495335&lt;/property&gt;
       &lt;property name="tomcatAccessLogPattern"&gt;&lt;/property&gt;
       &lt;property name="tomcatAutoSetup"&gt;true&lt;/property&gt;
       &lt;property name="tomcatFilter"&gt;&lt;/property&gt;
+      &lt;property name="tomcatJspDevelopment"&gt;false&lt;/property&gt;
       &lt;property name="tomcatNoJmx"&gt;true&lt;/property&gt;
       &lt;property name="tomcatScanning"&gt;true&lt;/property&gt;
       &lt;property name="tomcatWrapLoader"&gt;true&lt;/property&gt;
@@ -294,10 +325,10 @@ public class MeecrowaveConfigTest {
       &lt;property name="webXml"&gt;&lt;/property&gt;
     &lt;/configuration&gt;
   &lt;/container&gt;
-&lt;/arquillian&gt;</code></pre> 
-   </div> 
-  </div> 
- </div> 
+&lt;/arquillian&gt;</code></pre>
+</div>
+</div>
+</div>
 </div>
             </section><!--//doc-section-->
 
@@ -325,8 +356,8 @@ public class MeecrowaveConfigTest {
     <footer class="footer text-center">
         <div class="container">
           <div class="row">
-            <p >Copyright &copy; 2016
-                <a href="https://www.apache.org/";>The Apache Software 
Foundation</a>. All rights reserved.
+            <p >Copyright &copy; 2016-2020
+                <a href="http://www.apache.org/";>The Apache Software 
Foundation</a>. All rights reserved.
             </p>
           </div>
         </div>
@@ -341,10 +372,13 @@ public class MeecrowaveConfigTest {
     <script type="text/javascript" 
src="/meecrowave/assets/plugins/jquery-1.12.3.min.js"></script>
     <script type="text/javascript" 
src="/meecrowave/assets/plugins/bootstrap/js/bootstrap.min.js"></script>
     <script type="text/javascript" 
src="/meecrowave/assets/plugins/jquery-match-height/jquery.matchHeight-min.js"></script>
-    <script type="text/javascript" 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.9.0/highlight.min.js"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/highlight.min.js" 
integrity="sha256-aYTdUrn6Ow1DDgh5JTc3aDGnnju48y/1c8s1dgkYPQ8=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/java.min.js"
 integrity="sha256-21Z1xKC/FsaqN9z9jIER9xiX4XbV5buFEVdkZvsfBIc=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/groovy.min.js"
 integrity="sha256-0B+Ps1zCncLC5JIOQ+MtIhI/UhbJkYbxWsJowD3c+tk=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/shell.min.js"
 integrity="sha256-nwOM3xEc6CFfrPNDN1upX+5ynjWKAXsg+bW63SSzte0=" 
crossorigin="anonymous"></script>
+    <script 
src="//cdnjs.cloudflare.com/ajax/libs/highlight.js/9.15.6/languages/bash.min.js"
 integrity="sha256-zXrlim8wsIvcEFjsD3THiAfTvtPZifqx8q0rxegiWQc=" 
crossorigin="anonymous"></script>
     <script type="text/javascript" 
src="/meecrowave/assets/js/main.js?version=1"></script>
 
 </body>
 </html>
 
-

Modified: websites/production/openwebbeans/content/meecrowave/testing/index.pdf
==============================================================================
Binary files - no diff available.


Reply via email to