Modified:
websites/production/openwebbeans/content/meecrowave/meecrowave-core/configuration.html
==============================================================================
---
websites/production/openwebbeans/content/meecrowave/meecrowave-core/configuration.html
(original)
+++
websites/production/openwebbeans/content/meecrowave/meecrowave-core/configuration.html
Sat Feb 2 18:15:22 2019
@@ -66,347 +66,351 @@
<section class="doc-section">
- <div id="preamble">
- <div class="sectionbody">
- <div class="paragraph">
- <p>Meecrowave configuration is centralized in
<code>org.apache.meecrowave.Meecrowave$Builder</code> class.</p>
- </div>
- <div class="paragraph">
- <p>Here are the main properties:</p>
- </div>
- <table class="tableblock frame-all grid-all spread table table-bordered">
- <colgroup>
- <col style="width: 50%;">
- <col style="width: 50%;">
- </colgroup>
- <thead>
- <tr>
- <th class="tableblock halign-left valign-top">Name</th>
- <th class="tableblock halign-left valign-top">Description</th>
- </tr>
- </thead>
- <tbody>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">cdiConversation</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should CDI conversation be activated</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">clientAuth</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore client authentication</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">conf</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Conf
folder to synchronize</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">connectors</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Custom connectors</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">cxfServletParams</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Init
parameters passed to CXF servlet</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">defaultSSLHostConfigName</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">The
name of the default SSLHostConfig that will be used for secure https
connections.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">deleteBaseOnStartup</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should the directory be cleaned on startup if
existing</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">dir</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Root
folder if provided otherwise a fake one is created in tmp-dir</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">host</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Default host</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">http2</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Activate HTTP 2</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">httpPort</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">HTTP
port</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">httpsPort</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
port</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">initializeClientBus</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should the client bus be set. If false the server one will
likely be reused.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">initializers</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">ServletContainerInitializer instances.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">injectServletContainerInitializer</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should ServletContainerInitialize support
injections.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsAutoActivateBeanValidation</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should bean validation be activated on JAX-RS endpoint if
present in the classpath.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsDefaultProviders</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">If
jaxrsProviderSetup is true the list of default providers to load (or defaulting
to johnson jsonb and jsonp ones)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsLogProviders</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JAX-RS providers be logged</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsMapping</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Default jaxrs mapping</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsProviderSetup</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should default JAX-RS provider be configured</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jaxwsSupportIfAvailable</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should @WebService CDI beans be deployed if
cxf-rt-frontend-jaxws is in the classpath.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbBinaryStrategy</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JSON-B provider prettify the output</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbEncoding</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Which
encoding provider JSON-B should use</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbIJson</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JSON-B provider comply to I-JSON</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbNamingStrategy</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JSON-B provider prettify the output</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbNulls</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JSON-B provider serialize nulls</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbOrderStrategy</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JSON-B provider prettify the output</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbPrettify</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JSON-B provider prettify the output</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpBufferStrategy</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">JSON-P JAX-RS provider buffer strategy (see
johnzon)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpMaxReadBufferLen</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">JSON-P JAX-RS provider read buffer limit size (see
johnzon)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpMaxStringLen</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">JSON-P JAX-RS provider max string limit size (see
johnzon)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpMaxWriteBufferLen</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">JSON-P JAX-RS provider write buffer limit size (see
johnzon)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpPrettify</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JSON-P JAX-RS provider prettify the outputs (see
johnzon)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpSupportsComment</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JSON-P JAX-RS provider support comments (see
johnzon)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">keepServerXmlAsThis</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Donât replace ports in server.xml</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">keyAlias</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore alias</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">keystoreFile</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore location</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">keystorePass</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore password</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">keystoreType</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore type</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">loggingGlobalSetup</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should logging be configured to use log4j2 (it is
global)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">loginConfig</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">web.xml login config</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">meecrowaveProperties</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Loads
a meecrowave properties, defaults to meecrowave.properties.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">pidFile</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">A
file path to write the process id if the server starts</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">properties</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Passthrough properties</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">quickSession</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should an unsecured but fast session id generator be
used</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">realm</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">realm</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">roles</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">In
memory roles</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">scanningExcludes</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">A
forced exclude list of jar names (comma separated values)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">scanningIncludes</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">A
forced include list of jar names (comma separated values)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">scanningPackageExcludes</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">A
forced exclude list of packages names (comma separated values)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">scanningPackageIncludes</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">A
forced include list of packages names (comma separated values)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">securityConstraints</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">web.xml security constraint</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">serverXml</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Provided server.xml</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">sharedLibraries</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">A
folder containing shared libraries.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">skipHttp</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Skip
HTTP connector</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">ssl</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Use
HTTPS</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">sslProtocol</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
protocol</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">stopPort</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Shutdown port if used or -1</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">tempDir</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Temporary directory</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatAccessLogPattern</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Activates and configure the access log valve. Value example:
'%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"'</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatAutoSetup</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Add
default servlet</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatFilter</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">A
Tomcat JarScanFilter</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatJspDevelopment</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JSP support if available be set in development
mode</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatNoJmx</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">(Experimental) Should Tomcat MBeans be skipped.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatScanning</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should Tomcat scanning be used (@HandleTypes,
@WebXXX)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatWrapLoader</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">(Experimental) When deploying a classpath (current
classloader), should meecrowave wrap the loader to define another loader
identity but still use the same classes and resources.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">useLog4j2JulLogManager</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should JUL logs be redirected to Log4j2 - only works before
JUL usage.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">useShutdownHook</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Use
shutdown hook to automatically stop the container on Ctrl+C</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">useTomcatDefaults</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Should Tomcat default be set (session timeout, mime mapping
etcâ¦â)</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">users</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">In
memory users</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">watcherBouncing</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Activate redeployment on directories update using this
bouncing.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">webResourceCached</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Cache
web resources</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">webSessionCookieConfig</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Force
the cookie-config, it uses a properties syntax with the keys being the web.xml
tag names.</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">webSessionTimeout</p></td>
- <td class="tableblock halign-left valign-top"><p class="tableblock">Force
the session timeout for webapps</p></td>
- </tr>
- <tr>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">webXml</p></td>
- <td class="tableblock halign-left valign-top"><p
class="tableblock">Global web.xml</p></td>
- </tr>
- </tbody>
- </table>
- <div class="admonitionblock note">
- <table>
- <tbody>
- <tr>
- <td class="icon"> <i class="fa icon-note" title="Note"></i> </td>
- <td class="content"> the class also provides some helper methods for
programmatic use case like <code>randomHttpPort()</code> to automatically set
an available port to <code>httpPort</code>. </td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="paragraph">
- <p>You can also write a <code>Consumer<Builder></code> to configure
programmatically the <code>Builder</code> and make it active using
<code>addCustomizer(Consumer<Builder>)</code>.</p>
- </div>
- <div class="paragraph">
- <p>Example:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">new Meecrowave(new Builder() {{
+ <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Meecrowave configuration is centralized in
<code>org.apache.meecrowave.Meecrowave$Builder</code> class.</p>
+</div>
+<div class="paragraph">
+<p>Here are the main properties:</p>
+</div>
+<table class="tableblock frame-all grid-all stretch table table-bordered">
+<colgroup>
+<col style="width: 50%;">
+<col style="width: 50%;">
+</colgroup>
+<thead>
+<tr>
+<th class="tableblock halign-left valign-top">Name</th>
+<th class="tableblock halign-left valign-top">Description</th>
+</tr>
+</thead>
+<tbody>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">cdiConversation</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should CDI
conversation be activated</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">clientAuth</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore client authentication</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">conf</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Conf
folder to synchronize</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">connectors</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Custom
connectors</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">cxfServletParams</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Init
parameters passed to CXF servlet</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">defaultSSLHostConfigName</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">The name
of the default SSLHostConfig that will be used for secure https
connections.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">deleteBaseOnStartup</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should the
directory be cleaned on startup if existing</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">dir</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Root
folder if provided otherwise a fake one is created in tmp-dir</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">host</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default
host</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">http2</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Activate
HTTP 2</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">httpPort</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">HTTP
port</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">httpsPort</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
port</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">initializeClientBus</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should the
client bus be set. If false the server one will likely be reused.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">initializers</p></td>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">ServletContainerInitializer instances.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">injectServletContainerInitializer</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
ServletContainerInitialize support injections.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsAutoActivateBeanValidation</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
bean validation be activated on JAX-RS endpoint if present in the
classpath.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsDefaultProviders</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">If
jaxrsProviderSetup is true the list of default providers to load (or defaulting
to johnson jsonb and jsonp ones)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsLogProviders</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
JAX-RS providers be logged</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsMapping</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Default
jaxrs mapping</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jaxrsProviderSetup</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
default JAX-RS provider be configured</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jaxwsSupportIfAvailable</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
@WebService CDI beans be deployed if cxf-rt-frontend-jaxws is in the
classpath.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbBinaryStrategy</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
JSON-B provider prettify the output</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbEncoding</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Which
encoding provider JSON-B should use</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbIJson</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
JSON-B provider comply to I-JSON</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbNamingStrategy</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
JSON-B provider prettify the output</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbNulls</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
JSON-B provider serialize nulls</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbOrderStrategy</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
JSON-B provider prettify the output</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonbPrettify</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
JSON-B provider prettify the output</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpBufferStrategy</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">JSON-P
JAX-RS provider buffer strategy (see johnzon)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpMaxReadBufferLen</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">JSON-P
JAX-RS provider read buffer limit size (see johnzon)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpMaxStringLen</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">JSON-P
JAX-RS provider max string limit size (see johnzon)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpMaxWriteBufferLen</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">JSON-P
JAX-RS provider write buffer limit size (see johnzon)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpPrettify</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
JSON-P JAX-RS provider prettify the outputs (see johnzon)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">jsonpSupportsComment</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
JSON-P JAX-RS provider support comments (see johnzon)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">keepServerXmlAsThis</p></td>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">Don’t replace ports in server.xml</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">keyAlias</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore alias</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">keystoreFile</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore location</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">keystorePass</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore password</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">keystoreType</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
keystore type</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">loggingGlobalSetup</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
logging be configured to use log4j2 (it is global)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">loginConfig</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">web.xml
login config</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">meecrowaveProperties</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Loads a
meecrowave properties, defaults to meecrowave.properties.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">pidFile</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">A file
path to write the process id if the server starts</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">properties</p></td>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">Passthrough properties</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">quickSession</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should an
unsecured but fast session id generator be used</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">realm</p></td>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">realm</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">roles</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">In memory
roles</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">scanningExcludes</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">A forced
exclude list of jar names (comma separated values)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">scanningIncludes</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">A forced
include list of jar names (comma separated values)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">scanningPackageExcludes</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">A forced
exclude list of packages names (comma separated values)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">scanningPackageIncludes</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">A forced
include list of packages names (comma separated values)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">securityConstraints</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">web.xml
security constraint</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">serverXml</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Provided
server.xml</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">sharedLibraries</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">A folder
containing shared libraries.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">skipHttp</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Skip HTTP
connector</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">ssl</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Use
HTTPS</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">sslProtocol</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">HTTPS
protocol</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">stopPort</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Shutdown
port if used or -1</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">tempDir</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Temporary
directory</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatAccessLogPattern</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Activates
and configure the access log valve. Value example: '%h %l %u %t "%r" %s %b
"%{Referer}i" "%{User-Agent}i"'</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatAutoSetup</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Add
default servlet</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatFilter</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">A Tomcat
JarScanFilter</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatJspDevelopment</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should JSP
support if available be set in development mode</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatNoJmx</p></td>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">(Experimental) Should Tomcat MBeans be skipped.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatScanning</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
Tomcat scanning be used (@HandleTypes, @WebXXX)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">tomcatWrapLoader</p></td>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">(Experimental) When deploying a classpath (current
classloader), should meecrowave wrap the loader to define another loader
identity but still use the same classes and resources.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">useLog4j2JulLogManager</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should JUL
logs be redirected to Log4j2 - only works before JUL usage.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">useShutdownHook</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Use
shutdown hook to automatically stop the container on Ctrl+C</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">useTomcatDefaults</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Should
Tomcat default be set (session timeout, mime mapping etc…​)</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">users</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">In memory
users</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">watcherBouncing</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Activate
redeployment on directories update using this bouncing.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">webResourceCached</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Cache web
resources</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">webSessionCookieConfig</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Force the
cookie-config, it uses a properties syntax with the keys being the web.xml tag
names.</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">webSessionTimeout</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Force the
session timeout for webapps</p></td>
+</tr>
+<tr>
+<td class="tableblock halign-left valign-top"><p
class="tableblock">webXml</p></td>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Global
web.xml</p></td>
+</tr>
+</tbody>
+</table>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+the class also provides some helper methods for programmatic use case like
<code>randomHttpPort()</code>
+to automatically set an available port to <code>httpPort</code>.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>You can also write a <code>Consumer<Builder></code> to configure
programmatically the <code>Builder</code>
+and make it active using
<code>addCustomizer(Consumer<Builder>)</code>.</p>
+</div>
+<div class="paragraph">
+<p>Example:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">new Meecrowave(new Builder() {{
randomHttpPort();
setTomcatScanning(false);
setTomcatAutoSetup(false);
@@ -414,36 +418,36 @@
user("admin", "secret");
}})
.bake()
- .await();</code></pre>
- </div>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_cdi_se_api">CDI SE API</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>CDI 2.0 introduces a "SE API" for CDI. It looks like:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">try (final SeContainer container =
SeContainerInitializer.newInstance()
+ .await();</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_cdi_se_api">CDI SE API</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>CDI 2.0 introduces a "SE API" for CDI. It looks like:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">try (final SeContainer container =
SeContainerInitializer.newInstance()
.disableDiscovery()
.addBeanClasses(Configured.class)
.initialize()) {
// your main
-}</code></pre>
- </div>
- </div>
- <div class="paragraph">
- <p>Meecrowave inherits from OpenWebBeans SE API implementation and
therefore this SE API will work out of the box.</p>
- </div>
- <div class="paragraph">
- <p>It is implemented as a <code>bake()</code> and you can still access the
<code>Builder</code> configuration or even <code>Meecrowave</code> itself if
needed:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">try (final SeContainer container =
SeContainerInitializer.newInstance()
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>Meecrowave inherits from OpenWebBeans SE API implementation and therefore
this SE API will work out of the box.</p>
+</div>
+<div class="paragraph">
+<p>It is implemented as a <code>bake()</code> and you can still access the
<code>Builder</code> configuration or even <code>Meecrowave</code> itself if
needed:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">try (final SeContainer container =
SeContainerInitializer.newInstance()
.disableDiscovery()
.addBeanClasses(Configured.class)
.initialize()) {
@@ -455,85 +459,129 @@
// default wait implementation relying on tomcat one
container.select(Meecrowave.class).get().await(); // wait for the program
to be killed (tomcat.await() equivalent)
-}</code></pre>
- </div>
- </div>
- <div class="paragraph">
- <p>All the configuration of meecrowave is still available using
properties:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">try (final SeContainer container =
SeContainerInitializer.newInstance()
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>All the configuration of meecrowave is still available using properties:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">try (final SeContainer container =
SeContainerInitializer.newInstance()
.addProperty("nameOfTheProperty", instanceInTheRightType)
.initialize()) {
container.select(Meecrowave.class).get().await();
-}</code></pre>
- </div>
- </div>
- <div class="paragraph">
- <p>The type should match the type expected by the <code>Builder</code>
instance. Note you can also just pass directly a <code>Builder</code> instance
as value (the property name is not important) if you want something
preconfigured:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">try (final SeContainer container =
SeContainerInitializer.newInstance()
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>The type should match the type expected by the <code>Builder</code>
instance. Note you can also just pass directly a <code>Builder</code> instance
as value
+(the property name is not important) if you want something preconfigured:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-java hljs"
data-lang="java">try (final SeContainer container =
SeContainerInitializer.newInstance()
.addProperty("meecrowaveConfiguration", new
Meecrowave.Builder().randomPort())
.initialize()) {
container.select(Meecrowave.class).get().await();
-}</code></pre>
- </div>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_automatic_configuration">Automatic configuration</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>The <code>org.apache.meecrowave.Meecrowave$Builder</code> class also
provides <code>loadFromProperties(Properties)</code> and
<code>loadFrom(String)</code>. The last one uses the parameter to locate a
propertiers file (file path or at classpath) and delegate the processing to the
first one.</p>
- </div>
- <div class="paragraph">
- <p><code>loadFromProperties(Propertiers)</code> loads the configuraton from
the properties.</p>
- </div>
- <div class="paragraph">
- <p>The matching is alsmot 1-1 with previous table excepted for these
entries:</p>
- </div>
- <div class="ulist">
- <ul>
- <li> <p>if <code>httpPort</code> is <code>-1</code> then
<code>randomHttpPort</code> is called</p> </li>
- <li> <p><code>properties.x=y</code> will set the property
(<code>properties</code> entry) <code>x</code> with the value
<code>y</code></p> </li>
- <li> <p><code>users.x=y</code> will create the user <code>x</code> with
the password <code>y</code></p> </li>
- <li> <p><code>roles.x=y</code> will create the role <code>x</code> with
the users <code>y</code> (comma separated if multiple users)</p> </li>
- <li> <p><code>cxf.servlet.params.x=y</code> will force the CXF servlet
init parameter <code>x</code> to be <code>y</code></p> </li>
- <li> <p><code>connector.x=y</code> will pass the property <code>x</code>
to be <code>y</code> on the connector. See the <a
href="https://tomcat.apache.org/tomcat-9.0-doc/config/http.html">Apache Tomcat
9 Connector Documentation</a></p> </li>
- <li> <p><code>connector.attributes.x=y</code> will use the property
<code>x</code> with value <code>y</code> to create the connector (set a
property on the instance of Ì`org.apache.catalina.connector.Connector`) See
the Connector attributes referenced in the <a
href="https://tomcat.apache.org/tomcat-9.0-doc/config/http.html">Apache Tomcat
9 Connector Documentation</a></p> </li>
- <li> <p><code>valves.*</code> will be used to create valves. This prefix
must be followed by a valve identifier then you can use the built-in virtual
attributes. These ones are <code>_order</code> to sort the valves (natural
order) and <code>_className</code> to specify the class to instantiate. Finally
you can use any dotted attribute to configure the valve (see example after this
list).</p> </li>
- <li> <p><code>realm=y</code> will create an instance of <code>y</code>
(qualified name of the class) as <code>realm</code></p> </li>
- <li> <p><code>realm.x=y</code> will set <code>x</code> property to
<code>y</code> - needs previous property to be set</p> </li>
- <li> <p><code>login=</code> will create a custom
<code>org.apache.meecrowave.Meecrowave$LoginConfigBuilder</code></p> </li>
- <li> <p><code>login.x=y</code> will customize previous instance with
<code>x</code> property</p> </li>
- <li> <p><code>securityConstraint=</code> will create a custom
<code>org.apache.meecrowave.Meecrowave$SecurityConstaintBuilder</code></p>
</li>
- <li> <p><code>securityConstraint.x=y</code> will customize previous
instance with <code>x</code> property</p> </li>
- <li> <p><code>configurationCustomizer=y</code> will create an instance of
<code>y</code> to customize the configuration</p> </li>
- <li> <p><code>configurationCustomizer.x=y</code> will set <code>x</code>
to <code>y</code> for the customizer</p> </li>
- </ul>
- </div>
- <div class="admonitionblock tip">
- <table>
- <tbody>
- <tr>
- <td class="icon"> <i class="fa icon-tip" title="Tip"></i> </td>
- <td class="content"> Out of the box, any <code>Builder</code> instance
will read <code>meecrowave.properties</code>.
<code>meecrowave.properties</code> uses CLI names (without the leading
<code>--</code>). See <a href="/meecrowave/meecrowave-core/cli.html">CLI</a>
page for the list. </td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="sect2">
- <h3 id="_valve_configuration">Valve configuration</h3>
- <div class="paragraph">
- <p>Here is an example to configure the <code>RemoteIpValve</code> and
<code>LoadBalancerDrainingValve</code> using the
<code>meecrowave.properties</code> syntax (which means it uses the
<code>properties.</code> prefix to specify properties, drop it if you use the
CLI options):</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-properties hljs"
data-lang="properties">properties.valves.remote-ip._order = 1
+}</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_automatic_configuration">Automatic configuration</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>The <code>org.apache.meecrowave.Meecrowave$Builder</code> class also
provides <code>loadFromProperties(Properties)</code>
+and <code>loadFrom(String)</code>. The last one uses the parameter to locate a
propertiers file (file path or at classpath)
+and delegate the processing to the first one.</p>
+</div>
+<div class="paragraph">
+<p><code>loadFromProperties(Propertiers)</code> loads the configuraton from
the properties.</p>
+</div>
+<div class="paragraph">
+<p>The matching is alsmot 1-1 with previous table excepted for these
entries:</p>
+</div>
+<div class="ulist">
+<ul>
+<li>
+<p>if <code>httpPort</code> is <code>-1</code> then
<code>randomHttpPort</code> is called</p>
+</li>
+<li>
+<p><code>properties.x=y</code> will set the property (<code>properties</code>
entry) <code>x</code> with the value <code>y</code></p>
+</li>
+<li>
+<p><code>users.x=y</code> will create the user <code>x</code> with the
password <code>y</code></p>
+</li>
+<li>
+<p><code>roles.x=y</code> will create the role <code>x</code> with the users
<code>y</code> (comma separated if multiple users)</p>
+</li>
+<li>
+<p><code>cxf.servlet.params.x=y</code> will force the CXF servlet init
parameter <code>x</code> to be <code>y</code></p>
+</li>
+<li>
+<p><code>connector.x=y</code> will pass the property <code>x</code> to be
<code>y</code> on the connector.
+See the <a
href="https://tomcat.apache.org/tomcat-9.0-doc/config/http.html">Apache Tomcat
9 Connector Documentation</a></p>
+</li>
+<li>
+<p><code>connector.attributes.x=y</code> will use the property <code>x</code>
with value <code>y</code> to create the connector (set a property on the
instance of Ì`org.apache.catalina.connector.Connector`)
+See the Connector attributes referenced in the <a
href="https://tomcat.apache.org/tomcat-9.0-doc/config/http.html">Apache Tomcat
9 Connector Documentation</a></p>
+</li>
+<li>
+<p><code>valves.*</code> will be used to create valves. This prefix must be
followed by a valve identifier then you can use the
+built-in virtual attributes. These ones are <code>_order</code> to sort the
valves (natural order) and <code>_className</code> to specify the class to
instantiate.
+Finally you can use any dotted attribute to configure the valve (see example
after this list).</p>
+</li>
+<li>
+<p><code>realm=y</code> will create an instance of <code>y</code> (qualified
name of the class) as <code>realm</code></p>
+</li>
+<li>
+<p><code>realm.x=y</code> will set <code>x</code> property to <code>y</code> -
needs previous property to be set</p>
+</li>
+<li>
+<p><code>login=</code> will create a custom
<code>org.apache.meecrowave.Meecrowave$LoginConfigBuilder</code></p>
+</li>
+<li>
+<p><code>login.x=y</code> will customize previous instance with <code>x</code>
property</p>
+</li>
+<li>
+<p><code>securityConstraint=</code> will create a custom
<code>org.apache.meecrowave.Meecrowave$SecurityConstaintBuilder</code></p>
+</li>
+<li>
+<p><code>securityConstraint.x=y</code> will customize previous instance with
<code>x</code> property</p>
+</li>
+<li>
+<p><code>configurationCustomizer=y</code> will create an instance of
<code>y</code> to customize the configuration</p>
+</li>
+<li>
+<p><code>configurationCustomizer.x=y</code> will set <code>x</code> to
<code>y</code> for the customizer</p>
+</li>
+</ul>
+</div>
+<div class="admonitionblock tip">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-tip" title="Tip"></i>
+</td>
+<td class="content">
+Out of the box, any <code>Builder</code> instance will read
<code>meecrowave.properties</code>.
+<code>meecrowave.properties</code> uses CLI names (without the leading
<code>--</code>).
+See <a href="/meecrowave/meecrowave-core/cli.html">CLI</a> page for the list.
+</td>
+</tr>
+</table>
+</div>
+<div class="sect2">
+<h3 id="_valve_configuration">Valve configuration</h3>
+<div class="paragraph">
+<p>Here is an example to configure the <code>RemoteIpValve</code> and
<code>LoadBalancerDrainingValve</code> using the
<code>meecrowave.properties</code> syntax (which means
+it uses the <code>properties.</code> prefix to specify properties, drop it if
you use the CLI options):</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-properties hljs"
data-lang="properties">properties.valves.remote-ip._order = 1
properties.valves.remote-ip._className =
org.apache.catalina.valves.RemoteIpValve
properties.valves.remote-ip.internalProxies =
192\\.168\\.0\\.10\|192\\.168\\.0\\.11
properties.valves.remote-ip.remoteIpHeader = x-forwarded-for
@@ -544,32 +592,34 @@ properties.valves.draining._order = 2
properties.valves.draining._className =
org.apache.catalina.valves.LoadBalancerDrainingValve
properties.valves.draining.redirectStatusCode = 307
properties.valves.draining.ignoreCookieName = draining-action
-properties.valves.draining.ignoreCookieValue = skip</code></pre>
- </div>
- </div>
- <div class="paragraph">
- <p>This will define the <code>remote-ip</code> and <code>draining</code>
valves in this order with the configuration defined thanks to the properties
not having an underscore at the beginning of their name.</p>
- </div>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_logging">Logging</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>Meecrowave relies by default on Log4j2 (see <a
href="http://logging.apache.org/log4j/2.x/"
class="bare">http://logging.apache.org/log4j/2.x/</a>). By default it uses an
internal configuration which is overridden by standard log4j mechanism.</p>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_passwords_secrets">Passwords/Secrets</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>For the configuration requiring to be ciphered you can implement
<code>org.apache.meecrowave.service.ValueTransformer</code>:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code>public class MyTransformer
implements ValueTransformer {
+properties.valves.draining.ignoreCookieValue = skip</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>This will define the <code>remote-ip</code> and <code>draining</code>
valves in this order with the configuration defined thanks to the
+properties not having an underscore at the beginning of their name.</p>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_logging">Logging</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>Meecrowave relies by default on Log4j2 (see <a
href="http://logging.apache.org/log4j/2.x/"
class="bare">http://logging.apache.org/log4j/2.x/</a>). By default it uses an
internal
+configuration which is overridden by standard log4j mechanism.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_passwordssecrets">Passwords/Secrets</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>For the configuration requiring to be ciphered you can implement
<code>org.apache.meecrowave.service.ValueTransformer</code>:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code>public class MyTransformer implements
ValueTransformer {
@Override
public String name() {
return "mine";
@@ -579,43 +629,48 @@ properties.valves.draining.ignoreCookieV
public String apply(final String encodedPassword) {
return ....;
}
-}</code></pre>
- </div>
- </div>
- <div class="admonitionblock note">
- <table>
- <tbody>
- <tr>
- <td class="icon"> <i class="fa icon-note" title="Note"></i> </td>
- <td class="content"> this code being executed before the container
starts you canât use CDI there. </td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="paragraph">
- <p>To register your implementation just put the fully qualified name of
your transformer in
<code>META-INF/services/org.apache.meecrowave.service.ValueTransformer</code>.</p>
- </div>
- <div class="paragraph">
- <p>Then to use it set the value to <code>decode:mine:encodedvalue</code>.
General pattern is: <code>decode:<transformer name>:<value before
decryption></code>.</p>
- </div>
- <div class="paragraph">
- <p>Note that by default the same ciphering algorithm than in TomEE is
available (Static3DES).</p>
- </div>
- <div class="paragraph">
- <p>This syntax is usable on the command line and in
<code>meecrowave.properties</code>.</p>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_programmatic_customization">Programmatic customization</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p><code>org.apache.meecrowave.Meecrowave$ConfigurationCustomizer</code>
can be used to customize the configuration programmatically before startup. It
will take the <code>Builder</code> as parameter and you can change it at that
moment.</p>
- </div>
- <div class="paragraph">
- <p><code>org.apache.meecrowave.Meecrowave$InstanceCustomizer</code> can be
used to customize the configuration programmatically before startup. It will
take the <code>Tomcat</code> as parameter and you can change it at that moment.
This is very useful to automatically add valves and things like that.</p>
- </div>
- </div>
+}</code></pre>
+</div>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+this code being executed before the container starts you can’t use CDI
there.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>To register your implementation just put the fully qualified name of your
transformer in
<code>META-INF/services/org.apache.meecrowave.service.ValueTransformer</code>.</p>
+</div>
+<div class="paragraph">
+<p>Then to use it set the value to <code>decode:mine:encodedvalue</code>.
General pattern is: <code>decode:<transformer name>:<value before
decryption></code>.</p>
+</div>
+<div class="paragraph">
+<p>Note that by default the same ciphering algorithm than in TomEE is
available (Static3DES).</p>
+</div>
+<div class="paragraph">
+<p>This syntax is usable on the command line and in
<code>meecrowave.properties</code>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_programmatic_customization">Programmatic customization</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p><code>org.apache.meecrowave.Meecrowave$ConfigurationCustomizer</code> can
be used to customize the configuration
+programmatically before startup. It will take the <code>Builder</code> as
parameter and you can change it at that moment.</p>
+</div>
+<div class="paragraph">
+<p><code>org.apache.meecrowave.Meecrowave$InstanceCustomizer</code> can be
used to customize the configuration
+programmatically before startup. It will take the <code>Tomcat</code> as
parameter and you can change it at that moment. This
+is very useful to automatically add valves and things like that.</p>
+</div>
+</div>
</div>
</section><!--//doc-section-->
Modified:
websites/production/openwebbeans/content/meecrowave/meecrowave-core/configuration.pdf
==============================================================================
---
websites/production/openwebbeans/content/meecrowave/meecrowave-core/configuration.pdf
(original)
+++
websites/production/openwebbeans/content/meecrowave/meecrowave-core/configuration.pdf
Sat Feb 2 18:15:22 2019
@@ -4,8 +4,8 @@
<< /Title (Meecrowave Configuration)
/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:20180905120213+02'00')
-/CreationDate (D:20190123160053+01'00')
+/ModDate (D:20180826171856+02'00')
+/CreationDate (D:20190202191422+01'00')
>>
endobj
2 0 obj
@@ -2371,7 +2371,7 @@ endobj
>>
endobj
13 0 obj
-<< /Names [(__anchor-top) 11 0 R (_automatic_configuration) 26 0 R
(_cdi_se_api) 23 0 R (_logging) 35 0 R (_passwords_secrets) 39 0 R
(_programmatic_customization) 40 0 R (_valve_configuration) 34 0 R]
+<< /Names [(__anchor-top) 11 0 R (_automatic_configuration) 26 0 R
(_cdi_se_api) 23 0 R (_logging) 35 0 R (_passwordssecrets) 39 0 R
(_programmatic_customization) 40 0 R (_valve_configuration) 34 0 R]
>>
endobj
14 0 obj
@@ -14307,69 +14307,69 @@ xref
0000031962 00000 n
0000032006 00000 n
0000032055 00000 n
-0000032276 00000 n
-0000032448 00000 n
-0000032618 00000 n
-0000061045 00000 n
-0000061386 00000 n
-0000088042 00000 n
-0000088409 00000 n
-0000088576 00000 n
-0000118348 00000 n
-0000118702 00000 n
-0000118746 00000 n
-0000149127 00000 n
-0000149525 00000 n
-0000149569 00000 n
-0000149768 00000 n
-0000149967 00000 n
-0000150132 00000 n
-0000150333 00000 n
-0000165756 00000 n
-0000166147 00000 n
-0000166359 00000 n
-0000166404 00000 n
-0000166449 00000 n
-0000166632 00000 n
-0000175738 00000 n
-0000176105 00000 n
-0000176149 00000 n
-0000176193 00000 n
-0000176463 00000 n
-0000176733 00000 n
-0000176807 00000 n
-0000177009 00000 n
-0000177169 00000 n
-0000177408 00000 n
-0000177579 00000 n
-0000177728 00000 n
-0000177916 00000 n
-0000178127 00000 n
-0000178277 00000 n
-0000186806 00000 n
-0000187020 00000 n
-0000188382 00000 n
-0000189444 00000 n
-0000194553 00000 n
-0000194765 00000 n
-0000196127 00000 n
-0000197192 00000 n
-0000201709 00000 n
-0000201928 00000 n
-0000203290 00000 n
-0000204397 00000 n
-0000205615 00000 n
-0000205822 00000 n
-0000206129 00000 n
-0000207043 00000 n
-0000208187 00000 n
-0000208401 00000 n
-0000208702 00000 n
+0000032275 00000 n
+0000032447 00000 n
+0000032617 00000 n
+0000061044 00000 n
+0000061385 00000 n
+0000088041 00000 n
+0000088408 00000 n
+0000088575 00000 n
+0000118347 00000 n
+0000118701 00000 n
+0000118745 00000 n
+0000149126 00000 n
+0000149524 00000 n
+0000149568 00000 n
+0000149767 00000 n
+0000149966 00000 n
+0000150131 00000 n
+0000150332 00000 n
+0000165755 00000 n
+0000166146 00000 n
+0000166358 00000 n
+0000166403 00000 n
+0000166448 00000 n
+0000166631 00000 n
+0000175737 00000 n
+0000176104 00000 n
+0000176148 00000 n
+0000176192 00000 n
+0000176462 00000 n
+0000176732 00000 n
+0000176806 00000 n
+0000177008 00000 n
+0000177168 00000 n
+0000177407 00000 n
+0000177578 00000 n
+0000177727 00000 n
+0000177915 00000 n
+0000178126 00000 n
+0000178276 00000 n
+0000186805 00000 n
+0000187019 00000 n
+0000188381 00000 n
+0000189443 00000 n
+0000194552 00000 n
+0000194764 00000 n
+0000196126 00000 n
+0000197191 00000 n
+0000201708 00000 n
+0000201927 00000 n
+0000203289 00000 n
+0000204396 00000 n
+0000205614 00000 n
+0000205821 00000 n
+0000206128 00000 n
+0000207042 00000 n
+0000208186 00000 n
+0000208400 00000 n
+0000208701 00000 n
trailer
<< /Size 72
/Root 2 0 R
/Info 1 0 R
>>
startxref
-209839
+209838
%%EOF
Modified:
websites/production/openwebbeans/content/meecrowave/meecrowave-core/deploy-webapp.html
==============================================================================
---
websites/production/openwebbeans/content/meecrowave/meecrowave-core/deploy-webapp.html
(original)
+++
websites/production/openwebbeans/content/meecrowave/meecrowave-core/deploy-webapp.html
Sat Feb 2 18:15:22 2019
@@ -66,61 +66,66 @@
<section class="doc-section">
- <div id="preamble">
- <div class="sectionbody">
- <div class="paragraph">
- <p>Meecrowave is a development enabler and simplifier thanks to its
classpath deployment. However it is still a plain Apache Tomcat and you can
deploy existing webapp you developed with no particular constraint.</p>
- </div>
- <div class="paragraph">
- <p>From now on, we will assume you have a Servlet or Spring webapp
<code>myapp.war</code>.</p>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_deployment_with_a_meecrowave_bundle">Deployment with a Meecrowave
bundle</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>This part assumed you built a bundle with <a
href="../meecrowave-maven/index.html">Meecrowave Maven Plugin</a>. It gives you
a zip which has a tomcat layout once exploded:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code>.
+ <div id="preamble">
+<div class="sectionbody">
+<div class="paragraph">
+<p>Meecrowave is a development enabler and simplifier thanks to its classpath
deployment. However it is
+still a plain Apache Tomcat and you can deploy existing webapp you developed
with no particular constraint.</p>
+</div>
+<div class="paragraph">
+<p>From now on, we will assume you have a Servlet or Spring webapp
<code>myapp.war</code>.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_deployment_with_a_meecrowave_bundle">Deployment with a Meecrowave
bundle</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>This part assumed you built a bundle with <a
href="../meecrowave-maven/index.html">Meecrowave Maven Plugin</a>. It gives
+you a zip which has a tomcat layout once exploded:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code>.
|- bin
|- conf
|- logs
-`- lib</code></pre>
- </div>
- </div>
- <div class="paragraph">
- <p>If you didnât package a webapp at bundle time you can create a
<code>webapps</code> folder in this layout and add your war inside. Then to
launch this war you can either use a <code>server.xml</code> in
<code>conf</code> and add as in any Tomcat your <code><Context /></code>
in it or you can launch it directly using:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-sh hljs"
data-lang="sh">./bin/meecrowave.sh run --webapp=webapps/myapp.war</code></pre>
- </div>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_deployment_with_the_runner">Deployment with the runner</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>If you prefer to use the runner you can deploy a war with the following
command:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-sh hljs"
data-lang="sh">java -jar meecrowave-core-runner.jar
--webapp=webapps/myapp.war</code></pre>
- </div>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_going_further">Going further</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>You can find more information about deployment checking out the <a
href="cli.html">CLI</a> documentation which presents all options of the several
ways to launch Meecrowave.</p>
- </div>
- </div>
+`- lib</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>If you didn’t package a webapp at bundle time you can create a
<code>webapps</code> folder in this layout and add your war inside.
+Then to launch this war you can either use a <code>server.xml</code> in
<code>conf</code> and add as in any Tomcat your <code><Context /></code>
in it
+or you can launch it directly using:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-sh hljs"
data-lang="sh">./bin/meecrowave.sh run --webapp=webapps/myapp.war</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_deployment_with_the_runner">Deployment with the runner</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If you prefer to use the runner you can deploy a war with the following
command:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-sh hljs"
data-lang="sh">java -jar meecrowave-core-runner.jar
--webapp=webapps/myapp.war</code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_going_further">Going further</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>You can find more information about deployment checking out the <a
href="cli.html">CLI</a> documentation
+which presents all options of the several ways to launch Meecrowave.</p>
+</div>
+</div>
</div>
</section><!--//doc-section-->
Modified:
websites/production/openwebbeans/content/meecrowave/meecrowave-core/deploy-webapp.pdf
==============================================================================
---
websites/production/openwebbeans/content/meecrowave/meecrowave-core/deploy-webapp.pdf
(original)
+++
websites/production/openwebbeans/content/meecrowave/meecrowave-core/deploy-webapp.pdf
Sat Feb 2 18:15:22 2019
@@ -4,8 +4,8 @@
<< /Title (Meecrowave and webapps)
/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:20190123155813+01'00')
-/CreationDate (D:20190123160053+01'00')
+/ModDate (D:20190125064905+01'00')
+/CreationDate (D:20190202191422+01'00')
>>
endobj
2 0 obj
Modified:
websites/production/openwebbeans/content/meecrowave/meecrowave-gradle/index.html
==============================================================================
---
websites/production/openwebbeans/content/meecrowave/meecrowave-gradle/index.html
(original)
+++
websites/production/openwebbeans/content/meecrowave/meecrowave-gradle/index.html
Sat Feb 2 18:15:22 2019
@@ -66,9 +66,9 @@
<section class="doc-section">
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-groovy hljs"
data-lang="groovy">buildscript {
+ <div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-groovy hljs"
data-lang="groovy">buildscript {
repositories {
mavenCentral()
}
@@ -86,11 +86,11 @@ apply plugin: 'org.apache.meecrowave.mee
meecrowave {
httpPort = 9090
// most of the meecrowave core configuration
-}</code></pre>
- </div>
-</div>
-<div class="paragraph">
- <p>More coming soon, for now use gradle IDE integration or configuration
documentation please.</p>
+}</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>More coming soon, for now use gradle IDE integration or configuration
documentation please.</p>
</div>
</section><!--//doc-section-->
Modified:
websites/production/openwebbeans/content/meecrowave/meecrowave-gradle/index.pdf
==============================================================================
Binary files - no diff available.
Modified:
websites/production/openwebbeans/content/meecrowave/meecrowave-jolokia/index.html
==============================================================================
---
websites/production/openwebbeans/content/meecrowave/meecrowave-jolokia/index.html
(original)
+++
websites/production/openwebbeans/content/meecrowave/meecrowave-jolokia/index.html
Sat Feb 2 18:15:22 2019
@@ -66,58 +66,62 @@
<section class="doc-section">
- <div id="preamble">
- <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"><dependency>
+ <div id="preamble">
+<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"><dependency>
<groupId>org.apache.meecrowave</groupId>
<artifactId>meecrowave-jolokia</artifactId>
<version>${meecrowave.version}</version>
-</dependency></code></pre>
- </div>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_jolokia_only">Jolokia only</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>If Hawt.io is not setup (not there or inactive) the module will set up
jolokia alone.</p>
- </div>
- <div class="paragraph">
- <p>It will deploy the jolokia servlet on <code>/jolokia/*</code> or the
property <code>jolokia.web.mapping</code> set on the
<code>Meecrowave.Builder</code>.</p>
- </div>
- <div class="admonitionblock important">
- <table>
- <tbody>
- <tr>
- <td class="icon"> <i class="fa icon-important" title="Important"></i>
</td>
- <td class="content"> donât forget to secure this endpoint cause it let
you access all the JMX MBeans. See Meecrowave core configuration for more
details. </td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="paragraph">
- <p>More on <a href="https://jolokia.org/reference/html/"
class="bare">https://jolokia.org/reference/html/</a></p>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_hawt_io">Hawt.io</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>By default hawt.io will be deployed and activated on
<code>/hawtio/</code> endpoint.</p>
- </div>
- <div class="paragraph">
- <p>To activate it you need to add these dependencies:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-xml hljs"
data-lang="xml"><dependency>
+</dependency></code></pre>
+</div>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_jolokia_only">Jolokia only</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>If Hawt.io is not setup (not there or inactive) the module will set up
jolokia alone.</p>
+</div>
+<div class="paragraph">
+<p>It will deploy the jolokia servlet on <code>/jolokia/*</code> or the
property <code>jolokia.web.mapping</code> set
+on the <code>Meecrowave.Builder</code>.</p>
+</div>
+<div class="admonitionblock important">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-important" title="Important"></i>
+</td>
+<td class="content">
+don’t forget to secure this endpoint cause it let you access all the JMX
MBeans. See
+Meecrowave core configuration for more details.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>More on <a href="https://jolokia.org/reference/html/"
class="bare">https://jolokia.org/reference/html/</a></p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_hawt_io">Hawt.io</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>By default hawt.io will be deployed and activated on <code>/hawtio/</code>
endpoint.</p>
+</div>
+<div class="paragraph">
+<p>To activate it you need to add these dependencies:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-xml hljs"
data-lang="xml"><dependency>
<groupId>io.hawt</groupId>
<artifactId>hawtio-springboot</artifactId>
<version>1.4.67</version>
@@ -134,90 +138,97 @@
<artifactId>log4j-slf4j-impl</artifactId>
<version>${log4j2.version}</version>
<optional>true</optional>
-</dependency></code></pre>
- </div>
- </div>
- <div class="admonitionblock note">
- <table>
- <tbody>
- <tr>
- <td class="icon"> <i class="fa icon-note" title="Note"></i> </td>
- <td class="content"> we donât need spring boot but we reuse hawt.io
spring boot module which packages web resources in a jar. </td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="paragraph">
- <p>By default it will setup the security to use the Servlet security which
means you can use meecrowave options:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code>./meecrowave-runner
--users=admin=admin --roles=admin=admin</code></pre>
- </div>
- </div>
- <div class="paragraph">
- <p>And log with admin/admin user.</p>
- </div>
- </div>
-</div>
-<div class="sect1">
- <h2 id="_running_hawtio_war">Running HawtIO war</h2>
- <div class="sectionbody">
- <div class="paragraph">
- <p>To run <a href="http://hawt.io" class="bare">http://hawt.io</a>, the
easiest is to setup jaas and run the hawt.io war:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code>java
-Djava.security.auth.login.config=login.config \
+</dependency></code></pre>
+</div>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+we don’t need spring boot but we reuse hawt.io spring boot module which
packages web resources in a jar.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>By default it will setup the security to use the Servlet security which
means you can use meecrowave options:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code>./meecrowave-runner
--users=admin=admin --roles=admin=admin</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>And log with admin/admin user.</p>
+</div>
+</div>
+</div>
+<div class="sect1">
+<h2 id="_running_hawtio_war">Running HawtIO war</h2>
+<div class="sectionbody">
+<div class="paragraph">
+<p>To run <a href="http://hawt.io" class="bare">http://hawt.io</a>, the
easiest is to setup jaas and run the hawt.io war:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code>java
-Djava.security.auth.login.config=login.config \
-jar meecrowave-runner.jar \
- -webapp hawtio-default-offline-1.4.67.war</code></pre>
- </div>
- </div>
- <div class="paragraph">
- <p>This assumes you created a <code>login.config</code>:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code>karaf {
+ -webapp hawtio-default-offline-1.4.67.war</code></pre>
+</div>
+</div>
+<div class="paragraph">
+<p>This assumes you created a <code>login.config</code>:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code>karaf {
org.apache.catalina.realm.JAASMemoryLoginModule required
pathname="/path/to/tomcat-users.xml";
-};</code></pre>
- </div>
- </div>
- <div class="admonitionblock note">
- <table>
- <tbody>
- <tr>
- <td class="icon"> <i class="fa icon-note" title="Note"></i> </td>
- <td class="content"> the JAAS login module is named <code>karaf</code>
because it is the default of hawt.io (check
<code>io.hawt.web.AuthenticationFilter.init()</code>). </td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="paragraph">
- <p>And if you use - as in previous snippet - tomcat-users.xml you need to
create an admin (role) user:</p>
- </div>
- <div class="listingblock">
- <div class="content">
- <pre class="highlightjs highlight"><code class="language-xml hljs"
data-lang="xml"><tomcat-users>
+};</code></pre>
+</div>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+the JAAS login module is named <code>karaf</code> because it is the default of
hawt.io (check <code>io.hawt.web.AuthenticationFilter.init()</code>).
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>And if you use - as in previous snippet - tomcat-users.xml you need to
create an admin (role) user:</p>
+</div>
+<div class="listingblock">
+<div class="content">
+<pre class="highlightjs highlight"><code class="language-xml hljs"
data-lang="xml"><tomcat-users>
<user username="admin" password="admin" role="hawtio" roles="admin" />
-</tomcat-users></code></pre>
- </div>
- </div>
- <div class="admonitionblock note">
- <table>
- <tbody>
- <tr>
- <td class="icon"> <i class="fa icon-note" title="Note"></i> </td>
- <td class="content"> donât try to use
<code>io.hawt.web.tomcat.TomcatUserDatabaseLoginContext</code> of hawt.io which
does the same as <code>JAASMemoryLoginModule</code> excepted it doesnât
handle absolute paths which enforce you to use a <code>catalina.base</code>.
</td>
- </tr>
- </tbody>
- </table>
- </div>
- <div class="paragraph">
- <p>Using hawt.io war you donât need to run jolokia servlet by yourself,
it is already done.</p>
- </div>
- </div>
+</tomcat-users></code></pre>
+</div>
+</div>
+<div class="admonitionblock note">
+<table>
+<tr>
+<td class="icon">
+<i class="fa icon-note" title="Note"></i>
+</td>
+<td class="content">
+don’t try to use
<code>io.hawt.web.tomcat.TomcatUserDatabaseLoginContext</code> of hawt.io which
does the same as <code>JAASMemoryLoginModule</code>
+excepted it doesn’t handle absolute paths which enforce you to use a
<code>catalina.base</code>.
+</td>
+</tr>
+</table>
+</div>
+<div class="paragraph">
+<p>Using hawt.io war you don’t need to run jolokia servlet by yourself,
it is already done.</p>
+</div>
+</div>
</div>
</section><!--//doc-section-->
Modified:
websites/production/openwebbeans/content/meecrowave/meecrowave-jolokia/index.pdf
==============================================================================
---
websites/production/openwebbeans/content/meecrowave/meecrowave-jolokia/index.pdf
(original)
+++
websites/production/openwebbeans/content/meecrowave/meecrowave-jolokia/index.pdf
Sat Feb 2 18:15:22 2019
@@ -4,8 +4,8 @@
<< /Title (Meecrowave Jolokia)
/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:20171227161737+01'00')
-/CreationDate (D:20190123160053+01'00')
+/ModDate (D:20170827123118+02'00')
+/CreationDate (D:20190202191422+01'00')
>>
endobj
2 0 obj