This is an automated email from the ASF dual-hosted git repository.

jamesbognar pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/juneau.git

commit c4bf28b36a2cc68b1847768adae230203231df22
Author: JamesBognar <[email protected]>
AuthorDate: Sat Jun 18 10:28:01 2022 -0400

    Javadocs
---
 ....jp.Installing.html => 19.juneau-petstore.html} |   12 +-
 .../01.jp.Installing.html                          |    0
 .../02.jp.Running.html                             |    0
 .../03.jp.Building.html                            |    0
 .../04.jp.App.html                                 |    0
 .../01.jp.Installing.html => 20.Glossaries.html}   |   11 +-
 .../01.g.LanguageSupport.html                      |    0
 .../02.g.Annotations.html                          |    0
 .../01.jp.Installing.html => 21.Security.html}     |   16 +-
 .../01.s.Marshall.html                             |    0
 .../{22.Security => 21.Security}/02.s.Svl.html     |    0
 .../{22.Security => 21.Security}/03.s.Rest.html    |    0
 .../main/javadoc/doc-files/jec.Installing.1.png    |  Bin 84524 -> 0 bytes
 .../main/javadoc/doc-files/jec.Installing.2.png    |  Bin 91900 -> 0 bytes
 .../main/javadoc/doc-files/jec.Installing.3.png    |  Bin 79555 -> 0 bytes
 .../javadoc/doc-files/jer.AtomFeedResource.1.png   |  Bin 176439 -> 0 bytes
 .../javadoc/doc-files/jer.AtomFeedResource.2.png   |  Bin 266611 -> 0 bytes
 .../javadoc/doc-files/jer.AtomFeedResource.3.png   |  Bin 147615 -> 0 bytes
 .../javadoc/doc-files/jer.ConfigResource.1.png     |  Bin 153114 -> 0 bytes
 .../javadoc/doc-files/jer.ConfigResource.2.png     |  Bin 269953 -> 0 bytes
 .../javadoc/doc-files/jer.HelloWorldResource.1.png |  Bin 71562 -> 0 bytes
 .../javadoc/doc-files/jer.HelloWorldResource.2.png |  Bin 15098 -> 0 bytes
 .../javadoc/doc-files/jer.JsonSchemaResource.1.png |  Bin 172354 -> 0 bytes
 .../javadoc/doc-files/jer.JsonSchemaResource.2.png |  Bin 110715 -> 0 bytes
 .../main/javadoc/doc-files/jer.LogsResource.1.png  |  Bin 206285 -> 0 bytes
 .../main/javadoc/doc-files/jer.RootResources.1.png |  Bin 224036 -> 0 bytes
 .../main/javadoc/doc-files/jerj.Installing.1.png   |  Bin 84524 -> 0 bytes
 .../main/javadoc/doc-files/jerj.Installing.2.png   |  Bin 160013 -> 0 bytes
 .../main/javadoc/doc-files/jerj.Installing.3.png   |  Bin 158863 -> 0 bytes
 .../src/main/javadoc/doc-files/jerj.Running.1.png  |  Bin 98777 -> 0 bytes
 .../src/main/javadoc/doc-files/jers.Heroku.1.png   |  Bin 100781 -> 0 bytes
 .../src/main/javadoc/doc-files/jers.Heroku.2.png   |  Bin 136990 -> 0 bytes
 .../src/main/javadoc/doc-files/jers.Heroku.3.png   |  Bin 293130 -> 0 bytes
 .../src/main/javadoc/doc-files/jers.Heroku.4.png   |  Bin 105931 -> 0 bytes
 .../src/main/javadoc/doc-files/jers.Heroku.5.png   |  Bin 13946 -> 0 bytes
 .../src/main/javadoc/doc-files/jers.Heroku.6.png   |  Bin 243630 -> 0 bytes
 .../main/javadoc/doc-files/jers.Installing.1.png   |  Bin 84524 -> 0 bytes
 .../main/javadoc/doc-files/jers.Installing.2.png   |  Bin 162296 -> 0 bytes
 .../main/javadoc/doc-files/jers.Installing.3.png   |  Bin 173827 -> 0 bytes
 .../src/main/javadoc/doc-files/jers.Running.1.png  |  Bin 98777 -> 0 bytes
 .../doc-files/jrs.Overview.HelloWorldResource.png  |  Bin 0 -> 71127 bytes
 .../doc-files/jrs.Overview.RootResources.json.png  |  Bin 0 -> 122559 bytes
 .../doc-files/jrs.Overview.RootResources.png       |  Bin 0 -> 193666 bytes
 juneau-doc/src/main/javadoc/overview.html          | 1713 ++------------------
 juneau-doc/src/main/javadoc/resources/docs.txt     |   17 +-
 .../src/main/javadoc/resources/fragments/toc.html  |   25 +-
 46 files changed, 164 insertions(+), 1630 deletions(-)

diff --git a/juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html 
b/juneau-doc/docs/Topics/19.juneau-petstore.html
similarity index 78%
copy from juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html
copy to juneau-doc/docs/Topics/19.juneau-petstore.html
index c7daec4f4..57002a5db 100644
--- a/juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html
+++ b/juneau-doc/docs/Topics/19.juneau-petstore.html
@@ -13,16 +13,10 @@
  
***************************************************************************************************************************/
  -->
 
-{title:'Installing in Eclipse', created:'8.2.0', flags:'todo'} 
+{title:'juneau-pestore', created:'8.2.0', flags:'todo'}
 
 <div class='topic'>
        <p>
-               How to import Petstore to Eclipse or Spring Tool Suite: <br><br>
-               <ol>
-                       <li>File --> </li>
-                       <li>Import --> </li>
-                       <li>Existing Maven Projects--></li>
-                       <li>Browse existing projects--> juneau-petstore</li>
-               </ol>
-       </p>            
+               TODO
+       </p>
 </div>
\ No newline at end of file
diff --git a/juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html 
b/juneau-doc/docs/Topics/19.juneau-petstore/01.jp.Installing.html
similarity index 100%
copy from juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html
copy to juneau-doc/docs/Topics/19.juneau-petstore/01.jp.Installing.html
diff --git a/juneau-doc/docs/Topics/20.juneau-petstore/02.jp.Running.html 
b/juneau-doc/docs/Topics/19.juneau-petstore/02.jp.Running.html
similarity index 100%
rename from juneau-doc/docs/Topics/20.juneau-petstore/02.jp.Running.html
rename to juneau-doc/docs/Topics/19.juneau-petstore/02.jp.Running.html
diff --git a/juneau-doc/docs/Topics/20.juneau-petstore/03.jp.Building.html 
b/juneau-doc/docs/Topics/19.juneau-petstore/03.jp.Building.html
similarity index 100%
rename from juneau-doc/docs/Topics/20.juneau-petstore/03.jp.Building.html
rename to juneau-doc/docs/Topics/19.juneau-petstore/03.jp.Building.html
diff --git a/juneau-doc/docs/Topics/20.juneau-petstore/04.jp.App.html 
b/juneau-doc/docs/Topics/19.juneau-petstore/04.jp.App.html
similarity index 100%
rename from juneau-doc/docs/Topics/20.juneau-petstore/04.jp.App.html
rename to juneau-doc/docs/Topics/19.juneau-petstore/04.jp.App.html
diff --git a/juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html 
b/juneau-doc/docs/Topics/20.Glossaries.html
similarity index 78%
copy from juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html
copy to juneau-doc/docs/Topics/20.Glossaries.html
index c7daec4f4..d173bc493 100644
--- a/juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html
+++ b/juneau-doc/docs/Topics/20.Glossaries.html
@@ -13,16 +13,9 @@
  
***************************************************************************************************************************/
  -->
 
-{title:'Installing in Eclipse', created:'8.2.0', flags:'todo'} 
+{title:'Glossaries', created:'8.1.3'}
 
 <div class='topic'>
        <p>
-               How to import Petstore to Eclipse or Spring Tool Suite: <br><br>
-               <ol>
-                       <li>File --> </li>
-                       <li>Import --> </li>
-                       <li>Existing Maven Projects--></li>
-                       <li>Browse existing projects--> juneau-petstore</li>
-               </ol>
-       </p>            
+       </p>
 </div>
\ No newline at end of file
diff --git a/juneau-doc/docs/Topics/21.Glossaries/01.g.LanguageSupport.html 
b/juneau-doc/docs/Topics/20.Glossaries/01.g.LanguageSupport.html
similarity index 100%
rename from juneau-doc/docs/Topics/21.Glossaries/01.g.LanguageSupport.html
rename to juneau-doc/docs/Topics/20.Glossaries/01.g.LanguageSupport.html
diff --git a/juneau-doc/docs/Topics/21.Glossaries/02.g.Annotations.html 
b/juneau-doc/docs/Topics/20.Glossaries/02.g.Annotations.html
similarity index 100%
rename from juneau-doc/docs/Topics/21.Glossaries/02.g.Annotations.html
rename to juneau-doc/docs/Topics/20.Glossaries/02.g.Annotations.html
diff --git a/juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html 
b/juneau-doc/docs/Topics/21.Security.html
similarity index 77%
rename from juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html
rename to juneau-doc/docs/Topics/21.Security.html
index c7daec4f4..05f0d6352 100644
--- a/juneau-doc/docs/Topics/20.juneau-petstore/01.jp.Installing.html
+++ b/juneau-doc/docs/Topics/21.Security.html
@@ -13,16 +13,14 @@
  
***************************************************************************************************************************/
  -->
 
-{title:'Installing in Eclipse', created:'8.2.0', flags:'todo'} 
+{title:'Security Best-Practices'}
 
 <div class='topic'>
        <p>
-               How to import Petstore to Eclipse or Spring Tool Suite: <br><br>
-               <ol>
-                       <li>File --> </li>
-                       <li>Import --> </li>
-                       <li>Existing Maven Projects--></li>
-                       <li>Browse existing projects--> juneau-petstore</li>
-               </ol>
-       </p>            
+               Security is always an ongoing concern in any library.  
+               If you discover any security vulnerabilities in this code, 
please refer to the instructions found here:
+       </p>
+       <ul class='spaced-list'>
+               <li class='extlink'>{@doc http://www.apache.org/security 
SECURITY}
+       </ul>
 </div>
\ No newline at end of file
diff --git a/juneau-doc/docs/Topics/22.Security/01.s.Marshall.html 
b/juneau-doc/docs/Topics/21.Security/01.s.Marshall.html
similarity index 100%
rename from juneau-doc/docs/Topics/22.Security/01.s.Marshall.html
rename to juneau-doc/docs/Topics/21.Security/01.s.Marshall.html
diff --git a/juneau-doc/docs/Topics/22.Security/02.s.Svl.html 
b/juneau-doc/docs/Topics/21.Security/02.s.Svl.html
similarity index 100%
rename from juneau-doc/docs/Topics/22.Security/02.s.Svl.html
rename to juneau-doc/docs/Topics/21.Security/02.s.Svl.html
diff --git a/juneau-doc/docs/Topics/22.Security/03.s.Rest.html 
b/juneau-doc/docs/Topics/21.Security/03.s.Rest.html
similarity index 100%
rename from juneau-doc/docs/Topics/22.Security/03.s.Rest.html
rename to juneau-doc/docs/Topics/21.Security/03.s.Rest.html
diff --git a/juneau-doc/src/main/javadoc/doc-files/jec.Installing.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jec.Installing.1.png
deleted file mode 100644
index 3b9b4e177..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jec.Installing.1.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jec.Installing.2.png 
b/juneau-doc/src/main/javadoc/doc-files/jec.Installing.2.png
deleted file mode 100644
index dc73f291a..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jec.Installing.2.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jec.Installing.3.png 
b/juneau-doc/src/main/javadoc/doc-files/jec.Installing.3.png
deleted file mode 100644
index 0e572bb97..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jec.Installing.3.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.AtomFeedResource.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.AtomFeedResource.1.png
deleted file mode 100644
index 89ad0cb41..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jer.AtomFeedResource.1.png 
and /dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.AtomFeedResource.2.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.AtomFeedResource.2.png
deleted file mode 100644
index 3f7ff40e4..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jer.AtomFeedResource.2.png 
and /dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.AtomFeedResource.3.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.AtomFeedResource.3.png
deleted file mode 100644
index 1c6aebd17..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jer.AtomFeedResource.3.png 
and /dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.ConfigResource.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.ConfigResource.1.png
deleted file mode 100644
index 38fb7346e..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jer.ConfigResource.1.png 
and /dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.ConfigResource.2.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.ConfigResource.2.png
deleted file mode 100644
index 0a33d35a5..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jer.ConfigResource.2.png 
and /dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.HelloWorldResource.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.HelloWorldResource.1.png
deleted file mode 100644
index a826c988e..000000000
Binary files 
a/juneau-doc/src/main/javadoc/doc-files/jer.HelloWorldResource.1.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.HelloWorldResource.2.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.HelloWorldResource.2.png
deleted file mode 100644
index 97726358a..000000000
Binary files 
a/juneau-doc/src/main/javadoc/doc-files/jer.HelloWorldResource.2.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.JsonSchemaResource.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.JsonSchemaResource.1.png
deleted file mode 100644
index e2755341b..000000000
Binary files 
a/juneau-doc/src/main/javadoc/doc-files/jer.JsonSchemaResource.1.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.JsonSchemaResource.2.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.JsonSchemaResource.2.png
deleted file mode 100644
index 68c65d37d..000000000
Binary files 
a/juneau-doc/src/main/javadoc/doc-files/jer.JsonSchemaResource.2.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.LogsResource.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.LogsResource.1.png
deleted file mode 100644
index f6cea03ad..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jer.LogsResource.1.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jer.RootResources.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jer.RootResources.1.png
deleted file mode 100644
index f5cdf9b89..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jer.RootResources.1.png 
and /dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jerj.Installing.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jerj.Installing.1.png
deleted file mode 100644
index 3b9b4e177..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jerj.Installing.1.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jerj.Installing.2.png 
b/juneau-doc/src/main/javadoc/doc-files/jerj.Installing.2.png
deleted file mode 100644
index 38ffe393c..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jerj.Installing.2.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jerj.Installing.3.png 
b/juneau-doc/src/main/javadoc/doc-files/jerj.Installing.3.png
deleted file mode 100644
index d01d24ff3..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jerj.Installing.3.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jerj.Running.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jerj.Running.1.png
deleted file mode 100644
index 3eff3a5b7..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jerj.Running.1.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.1.png
deleted file mode 100644
index d44ee0610..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.1.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.2.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.2.png
deleted file mode 100644
index 24d3c2605..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.2.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.3.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.3.png
deleted file mode 100644
index 47abc87ff..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.3.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.4.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.4.png
deleted file mode 100644
index 7aa189ee2..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.4.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.5.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.5.png
deleted file mode 100644
index d32ce52eb..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.5.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.6.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.6.png
deleted file mode 100644
index 7bbce5d54..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Heroku.6.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Installing.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Installing.1.png
deleted file mode 100644
index 3b9b4e177..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Installing.1.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Installing.2.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Installing.2.png
deleted file mode 100644
index 045030b21..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Installing.2.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Installing.3.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Installing.3.png
deleted file mode 100644
index 0563e0b4d..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Installing.3.png and 
/dev/null differ
diff --git a/juneau-doc/src/main/javadoc/doc-files/jers.Running.1.png 
b/juneau-doc/src/main/javadoc/doc-files/jers.Running.1.png
deleted file mode 100644
index 3eff3a5b7..000000000
Binary files a/juneau-doc/src/main/javadoc/doc-files/jers.Running.1.png and 
/dev/null differ
diff --git 
a/juneau-doc/src/main/javadoc/doc-files/jrs.Overview.HelloWorldResource.png 
b/juneau-doc/src/main/javadoc/doc-files/jrs.Overview.HelloWorldResource.png
new file mode 100644
index 000000000..5a42a7409
Binary files /dev/null and 
b/juneau-doc/src/main/javadoc/doc-files/jrs.Overview.HelloWorldResource.png 
differ
diff --git 
a/juneau-doc/src/main/javadoc/doc-files/jrs.Overview.RootResources.json.png 
b/juneau-doc/src/main/javadoc/doc-files/jrs.Overview.RootResources.json.png
new file mode 100644
index 000000000..c350b6dc5
Binary files /dev/null and 
b/juneau-doc/src/main/javadoc/doc-files/jrs.Overview.RootResources.json.png 
differ
diff --git 
a/juneau-doc/src/main/javadoc/doc-files/jrs.Overview.RootResources.png 
b/juneau-doc/src/main/javadoc/doc-files/jrs.Overview.RootResources.png
new file mode 100644
index 000000000..00f43312f
Binary files /dev/null and 
b/juneau-doc/src/main/javadoc/doc-files/jrs.Overview.RootResources.png differ
diff --git a/juneau-doc/src/main/javadoc/overview.html 
b/juneau-doc/src/main/javadoc/overview.html
index 9132bfc7e..c0d5df43a 100644
--- a/juneau-doc/src/main/javadoc/overview.html
+++ b/juneau-doc/src/main/javadoc/overview.html
@@ -352,7 +352,7 @@
        </ol>
        <li><p class='toc2'><a class='doclink' 
href='#juneau-rest-server'>juneau-rest-server</a><span class='update'>updated: 
<b>9.0.0</b></span></p>
        <ol>
-               <li><p><a class='doclink' 
href='#juneau-rest-server.jrs.HelloWorldExample'>Hello World Example</a><span 
class='update'>updated: <b>9.0.0</b></span></p>
+               <li><p><a class='doclink' 
href='#juneau-rest-server.jrs.Overview'>Overview</a><span 
class='update'>created: <b>9.0.0</b></span></p>
                <li><p><a class='doclink' 
href='#juneau-rest-server.jrs.AnnotatedClasses'>@Rest-Annotated 
Classes</a><span class='update'>updated: 8.1.2,<b>9.0.0</b></span></p>
                <ol>
                        <li><p><a class='doclink' 
href='#juneau-rest-server.jrs.AnnotatedClasses.jrs.PredefinedClasses'>Predefined
 Classes</a><span class='update'>updated: <b>9.0.0</b></span></p>
@@ -508,31 +508,8 @@
                <li><p><a class='doclink' 
href='#my-springboot-microservice.msm.Building'>Building and Running from 
Command-Line</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></p>
        </ol>
        <li><p class='toc2'><a class='doclink' 
href='#juneau-examples-core'>juneau-examples-core</a><span 
class='update'>updated: 8.0.0</span></p>
-       <ol>
-               <li><p><a class='doclink' 
href='#juneau-examples-core.jec.Installing'>Installing in Eclipse</a><span 
class='update'>created: 8.0.0</span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-core.jec.Examples'>Examples</a><span 
class='update'>created: 8.0.0</span></p>
-       </ol>
        <li><p class='toc2'><a class='doclink' 
href='#juneau-examples-rest'>juneau-examples-rest</a><span 
class='update'>updated: 8.0.0, <b><red>todo</red></b></span></p>
-       <ol>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest.jer.RootResources'>RootResources</a><span 
class='update'>updated: 8.0.0,8.1.0, <b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest.jer.HelloWorldResource'>HelloWorldResource</a><span 
class='update'>updated: 8.0.0, <b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest.jer.DtoExamples'>DtoExamples</a><span 
class='update'>created: 8.0.0, updated: 8.1.0, <b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest.jer.ConfigResource'>ConfigResource</a><span 
class='update'><b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest.jer.LogsResource'>LogsResource</a><span 
class='update'><b><red>todo</red></b></span></p>
-       </ol>
        <li><p class='toc2'><a class='doclink' 
href='#juneau-examples-rest-jetty'>juneau-examples-rest-jetty</a><span 
class='update'>created: 8.0.0, deprecated: 8.1.2</span></p>
-       <ol>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest-jetty.jerj.Installing'>Installing in 
Eclipse</a><span class='update'>created: 8.0.0, deprecated: 8.1.2, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest-jetty.jerj.Running'>Running in Eclipse</a><span 
class='update'>created: 8.0.0, deprecated: 8.1.2, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest-jetty.jerj.Building'>Building and Running from 
Command-Line</a><span class='update'>created: 8.0.0, deprecated: 8.1.2, 
<b><red>todo</red></b></span></p>
-       </ol>
-       <li><p class='toc2'><a class='doclink' 
href='#juneau-examples-rest-springboot'>juneau-examples-rest-springboot</a><span
 class='update'>created: 8.0.0, <b><red>todo</red></b></span></p>
-       <ol>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest-springboot.jers.Installing'>Installing in 
Eclipse</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest-springboot.jers.Running'>Running in 
Eclipse</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest-springboot.jers.Building'>Building and Running from 
Command-Line</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='#juneau-examples-rest-springboot.jers.DeployingToHeroku'>Deploying to 
Heroku</a><span class='update'>created: 8.0.0, <b><red>todo</red></b></span></p>
-       </ol>
        <li><p class='toc2'><a class='doclink' 
href='#juneau-petstore'>juneau-pestore</a><span class='update'>created: 8.2.0, 
<b><red>todo</red></b></span></p>
        <ol>
                <li><p><a class='doclink' 
href='#juneau-petstore.jp.Installing'>Installing in Eclipse</a><span 
class='update'>created: 8.2.0, <b><red>todo</red></b></span></p>
@@ -16037,8 +16014,8 @@
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-rest-server.jrs.HelloWorldExample' 
id='juneau-rest-server.jrs.HelloWorldExample'>6.1 - Hello World 
Example</a><span class='update'>updated: <b>9.0.0</b></span></h3>
-<div class='topic'><!-- START: 6.1 - juneau-rest-server.jrs.HelloWorldExample 
-->
+<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-rest-server.jrs.Overview' 
id='juneau-rest-server.jrs.Overview'>6.1 - Overview</a><span 
class='update'>created: <b>9.0.0</b></span></h3>
+<div class='topic'><!-- START: 6.1 - juneau-rest-server.jrs.Overview -->
 <div class='topic'>
        <p>
                A REST resource is simply a Java class annotated with {@link 
org.apache.juneau.rest.annotation.Rest @Rest}.
@@ -16046,41 +16023,107 @@
                extension of {@link javax.servlet.http.HttpServlet} which 
allows it to be deployed as a servlet.  
        </p>
        <p>
-               In this example, we define a resource called 
<l>HelloWorldResource</l>.  
-               This example is located in the <l>juneau-examples-rest</l> 
project.
-               It's assumed the reader is familiar with defining servlets in 
web applications.
+               Juneau has two sample applications for demonstrating how to use 
the REST API, one using Jetty and one using
+               Spring Boot:
        </p>
+       <ul class='javatree'>
+               <li class='jp'>{@link org.apache.juneau.examples.rest.jetty}
+               <li class='jp'>{@link 
org.apache.juneau.examples.rest.springboot}
+       </ul>
        <p>
-               Like any servlet, we could define our resource in the 
<l>web.xml</l> file of the web application like so...
+               The {@link org.apache.juneau.examples.rest.springboot} 
application is described in the section {@doc jrss.Overview}.
        </p>
-       <p class='bxml'>
-       <xt>&lt;?xml</xt> <xa>version</xa>=<xs>"1.0"</xs> 
<xa>encoding</xa>=<xs>"UTF-8"</xs><xt>?&gt;</xt>
-       <xt>&lt;web-app</xt> <xa>version</xa>=<xs>"2.3"</xs><xt>&gt;</xt>
-               <xt>&lt;servlet&gt;</xt>
-                       
<xt>&lt;servlet-name&gt;</xt>HelloWorldResource<xt>&lt;/servlet-name&gt;</xt>
-                       
<xt>&lt;servlet-class&gt;</xt>com.foo.sample.HelloWorldResource<xt>&lt;/servlet-class&gt;</xt>
-               <xt>&lt;/servlet&gt;</xt>
-               <xt>&lt;servlet-mapping&gt;</xt>
-                       
<xt>&lt;servlet-name&gt;</xt>HelloWorldResource<xt>&lt;/servlet-name&gt;</xt>
-                       
<xt>&lt;url-pattern&gt;</xt>/*<xt>&lt;/url-pattern&gt;</xt>
-               <xt>&lt;/servlet-mapping&gt;</xt>
-       <xt>&lt;/web-app&gt;</xt>
+       <p>
+               The Jetty application consists of the following application 
class that registers our top-level servlet:
+       </p>
+       <p class='bjava'>
+       <jk>public class</jk> App {
+       
+               <jk>public static void</jk> main(String[] <jv>args</jv>) 
<jk>throws</jk> Exception {
+                       JettyMicroservice
+                               .<jsm>create</jsm>()
+                               .args(<jv>args</jv>)
+                               .servlet(RootResources.<jk>class</jk>)
+                               .build()
+                               .start()
+                               .startConsole()
+                               .join();
+               }
+       }
        </p>
        <p>
-               Our servlet code is shown below:
+               The root resources class is an example of a router page that is 
used to attach children to:
        </p>
        <p class='bjava'>
-       <jc>// Sample REST resource that prints out a simple "Hello world!" 
message.</jc>
        <ja>@Rest</ja>(
-               path=<js>"/helloWorld"</js>,
-               title=<js>"Hello World"</js>,
-               description=<js>"An example of the simplest-possible 
resource"</js>
+               title=<js>"Root resources"</js>,
+               description=<js>"Example of a router resource page."</js>,
+               children={
+                       HelloWorldResource.<jk>class</jk>,
+                       DtoExamples.<jk>class</jk>,
+                       UtilityBeansResource.<jk>class</jk>,
+                       HtmlBeansResource.<jk>class</jk>,
+                       ConfigResource.<jk>class</jk>,
+                       ShutdownResource.<jk>class</jk>
+               }
        )
-       <ja>@HtmlDoc</ja>(
+       <ja>@HtmlDocConfig</ja>(
+               widgets={
+                       ContentTypeMenuItem.<jk>class</jk>
+               },
                navlinks={
-                       <js>"up: request:/.."</js>,
-                       <js>"options: servlet:/?method=OPTIONS"</js>
+                       <js>"api: servlet:/api"</js>,
+                       <js>"stats: servlet:/stats"</js>,
+                       <js>"$W{ContentTypeMenuItem}"</js>,
+                       <js>"source: 
$C{Source/gitHub}/org/apache/juneau/examples/rest/RootResources.java"</js>
+               },
+               aside={
+                       <js>"&lt;div class='text'&gt;"</js>,
+                       <js>"   &lt;p&gt;This is an example of a 'router' page 
that serves as a jumping-off point to child resources.&lt;/p&gt;"</js>,
+                       <js>"   &lt;p&gt;Resources can be nested arbitrarily 
deep through router pages.&lt;/p&gt;"</js>,
+                       <js>"   &lt;p&gt;Note the &lt;span 
class='link'&gt;API&lt;/span&gt; link provided that lets you see the generated 
swagger doc for this page.&lt;/p&gt;"</js>,
+                       <js>"   &lt;p&gt;Also note the &lt;span 
class='link'&gt;STATS&lt;/span&gt; link to view runtime statistics on this 
page.&lt;/p&gt;"</js>,
+                       <js>"   &lt;p&gt;Also note the &lt;span 
class='link'&gt;SOURCE&lt;/span&gt; link to view the source code for the 
page.&lt;/p&gt;"</js>,
+                       <js>"   &lt;p&gt;All content on pages in the UI are 
serialized POJOs.  In this case, it's a serialized array of beans with 2 
properties, 'name' and 'description'.&lt;/p&gt;"</js>,
+                       <js>"   &lt;p&gt;Other features (such as this aside) 
are added through annotations.&lt;/p&gt;"</js>,
+                       <js>"&lt;/div&gt;"</js>
                },
+               asideFloat=<js>"RIGHT"</js>
+       )
+       <ja>@SerializerConfig</ja>(
+               <jc>// For testing purposes, we want to use single quotes in 
all the serializers so it's easier to do simple
+               // String comparisons.
+               // You can apply any of the Serializer/Parser/BeanContext 
settings this way.</jc>
+               quoteChar=<js>"'"</js>
+       )
+       <jk>public class</jk> RootResources <jk>extends</jk> 
BasicRestServletGroup <jk>implements</jk> BasicUniversalJenaConfig {
+               <jc>// IMPORTANT!  If you don't need RDF support, change the 
parent interface to BasicUniversalConfig.
+               // It allows you to remove the Jena prerequisite.</jc>
+       
+               <jk>private static final long</jk> <jsf>serialVersionUID</jsf> 
= 1L;
+       }       
+       </p>
+       <p>
+               This is what it looks like in a browser:
+       </p>
+       
+       <h5 class='figure'>HTML representation</h5>
+       <img class='bordered w800' 
src='doc-files/jrs.Overview.RootResources.png'>
+       
+       <h5 class='figure'>JSON representation</h5>
+       <img class='bordered w800' 
src='doc-files/jrs.Overview.RootResources.json.png'>
+       
+       <p>
+               The {@link org.apache.juneau.examples.rest.HelloWorldResource} 
class is our basic example of a child REST resource:
+       </p>
+       
+       <p class='bjava'>
+       <ja>@Rest</ja>(
+               title=<js>"Hello World"</js>,
+               description=<js>"An example of the simplest-possible 
resource"</js>,
+               path=<js>"/helloWorld"</js>
+       )
+       <ja>@HtmlDocConfig</ja>(
                aside={
                        <js>"&lt;div style='max-width:400px' 
class='text'&gt;"</js>,
                        <js>"   &lt;p&gt;This page shows a resource that simply 
response with a 'Hello world!' message&lt;/p&gt;"</js>,
@@ -16088,7 +16131,7 @@
                        <js>"&lt;/div&gt;"</js>
                }
        )
-       <jk>public class</jk> HelloWorldResource <jk>extends</jk> 
BasicRestServlet <jk>implements</jk> BasicUniversalConfig {
+       <jk>public class</jk> HelloWorldResource extends BasicRestObject 
implements BasicUniversalConfig {
        
                <ja>@RestGet</ja>(path=<js>"/*"</js>, summary=<js>"Responds 
with \"Hello world!\""</js>)
                <jk>public</jk> String sayHello() {
@@ -16096,13 +16139,14 @@
                }
        }
        </p>
+
        <p>
                This is what it looks like in a browser:
        </p>
-       <p class='bcode'>
-       http://localhost:10000/helloWorld
-       </p>
-       <img class='bordered w800' src='doc-files/jrs.HelloWorldExample.1.png'>
+
+       <h5 class='figure'>HTML representation</h5>
+       <img class='bordered w800' 
src='doc-files/jrs.Overview.HelloWorldResource.png'>
+       
        <p>
                It doesn't much simpler than that.  
                In this case, we're simply returning a string that will be 
converted to any of the supported languages (e.g. 
@@ -16110,7 +16154,7 @@
                However, we could have returned any POJO consisting of beans, 
maps, collections, etc...
        </p>
 </div>
-</div><!-- END: 6.1 - juneau-rest-server.jrs.HelloWorldExample -->
+</div><!-- END: 6.1 - juneau-rest-server.jrs.Overview -->
 
 <!-- 
====================================================================================================
 -->
 
@@ -27817,87 +27861,6 @@
                The <c>juneau-examples-core</c> project contains various code 
examples for using the core APIs. 
        </p>
 </div>
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-core.jec.Installing' 
id='juneau-examples-core.jec.Installing'>16.1 - Installing in Eclipse</a><span 
class='update'>created: 8.0.0</span></h3>
-<div class='topic'><!-- START: 16.1 - juneau-examples-core.jec.Installing -->
-<div class='topic'>
-       <p>
-               Follow these instructions to import the Juneau project into 
Eclipse.
-       </p>            
-       <ol class='spaced-list'>
-               <li>
-                       Download the <c>juneau-examples-core-{@property 
juneauVersion}.zip</c> file from the downloads page
-                       (located in the binaries) and import it into your 
workspace as an existing project:
-                       <br><br>
-                       <img class='bordered' 
src='doc-files/jec.Installing.1.png' style='width:524px'>
-               <li>
-                       Select the archive file and import the project:
-                       <br><br>
-                       <img class='bordered' 
src='doc-files/jec.Installing.2.png' style='width:549px'>
-               <li>
-                       In your workspace, you should now see the following 
project:
-                       <br><br>
-                       <img class='bordered' 
src='doc-files/jec.Installing.3.png' style='width:400px'>
-       </ol>
-</div>
-</div><!-- END: 16.1 - juneau-examples-core.jec.Installing -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-core.jec.Examples' 
id='juneau-examples-core.jec.Examples'>16.2 - Examples</a><span 
class='update'>created: 8.0.0</span></h3>
-<div class='topic'><!-- START: 16.2 - juneau-examples-core.jec.Examples -->
-<div class='topic'>
-       <p>
-               The following shows the core examples provided:
-       </p>
-       <ul class='javatree'>
-               <li class='jp'>{@link org.apache.juneau.examples.core.json}
-                       <ul>
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.json.JsonSimpleExample} - JsonSerializer and 
JsonParser usage on serialize and deserialize simple Pojo bean.
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.json.JsonComplexExample} - JsonSerializer and 
JsonParser usage on serialize and deserialize complex Pojo bean.
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.json.JsonConfigurationExample} - Json 
Serializers configured using properties defined in JsonSerializer class.
-                       </ul>
-               </li>
-               <li class='jp'>{@link org.apache.juneau.examples.core.xml}
-                       <ul>
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.xml.XmlSimpleExample} - XmlSerializer and 
XmlParser usage on serialize and deserialize simple Pojo bean.
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.xml.XmlComplexExample} - XmlSerializer and 
XmlParser usage on serialize and deserialize complex Pojo bean.
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.xml.XmlConfigurationExample} - XmlSerializers 
configured using properties defined in XmlSerializer class.
-                       </ul>
-               </li>
-               <li class='jp'>{@link org.apache.juneau.examples.core.dto}
-                       <ul>
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.dto.DtoExample} - Usage of core dto module.
-                       </ul>
-               </li>
-               <li class='jp'>{@link org.apache.juneau.examples.core.rdf}
-                       <ul>
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.rdf.RdfExample} - RdfXmlSerializer usage on 
serialize simple Pojo bean.
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.rdf.RdfComplexExample} - RdfXmlSerializer usage 
on serialize complex Pojo bean.
-                       </ul>
-               </li>
-               <li class='jp'>{@link org.apache.juneau.examples.core.html}
-                       <ul>
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.html.HtmlSimpleExample} - HtmlSerializer usage 
on serialize and deserialize simple Pojo bean.
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.html.HtmlComplexExample} - HtmlSerializer usage 
on serialize and deserialize complex Pojo bean.
-                       </ul>
-               </li>
-               <li class='jp'>{@link org.apache.juneau.examples.core.uon}
-                       <ul>
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.uon.UonExample} - UonSerializer usage on 
serialize and deserialize simple Pojo bean.
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.uon.UonComplexExample} - UonSerializer usage on 
serialize and deserialize complex Pojo bean.
-                       </ul>
-               </li>
-               <li class='jp'>{@link org.apache.juneau.examples.core.svl}
-                       <ul>
-                               <li class='jc'>{@link 
org.apache.juneau.examples.core.svl.SvlExample} - Usage of Svl module in juneau.
-                       </ul>
-               </li>
-       </ul>
-</div>
-</div><!-- END: 16.2 - juneau-examples-core.jec.Examples -->
 </div><!-- END: 16 - juneau-examples-core -->
 
 <!-- 
====================================================================================================
 -->
@@ -27938,1410 +27901,34 @@
                <li>{@doc juneau-examples-rest-springboot}
        </ul>
 </div>
+</div><!-- END: 17 - juneau-examples-rest -->
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest.jer.RootResources' 
id='juneau-examples-rest.jer.RootResources'>17.1 - RootResources</a><span 
class='update'>updated: 8.0.0,8.1.0, <b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 17.1 - juneau-examples-rest.jer.RootResources 
-->
+<h2 class='topic' onclick='toggle(this)'><a href='#juneau-examples-rest-jetty' 
id='juneau-examples-rest-jetty'>18 - juneau-examples-rest-jetty</a><span 
class='update'>created: 8.0.0, deprecated: 8.1.2</span></h2>
+<div class='topic'><!-- START: 18 - juneau-examples-rest-jetty -->
 <div class='topic'>
-       <p>
-               The <l>RootResources</l> class is the main page for the REST 
microservice.
-               It serves as the jumping-off point for the other resources.
-       </p>
-       <p>
-               The class hierarchy for this class is:
-       </p>
-       <ul class='javatree'>
-               <li class='jac'>
-                       {@link org.apache.juneau.rest.servlet.RestServlet} - 
Contains all the REST servlet logic.
-                       <ul>
-                               <li class='jac'>
-                                       {@link 
org.apache.juneau.rest.servlet.BasicRestServlet} - Defines default serializers 
and parsers, and OPTIONs page logic.
-                                       <ul>
-                                               <li class='jac'>
-                                                       {@link 
org.apache.juneau.rest.servlet.BasicRestServletGroup} - Specialized subclass 
for grouping other resources.
-                                                       <ul>
-                                                               <li class='jc'>
-                                                                       
<c>RootResources</c>
-                                                       </ul>
-                                               </li>
-                                       </ul>
-                               </li>
-                       </ul>
-               </li>
-       </ul>
-       <p>
-               Pointing a browser to the resource shows the following:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.RootResources.1.png'>
-       <p>
-               The <l>RootResources</l> class can also be defined as a servlet 
in a <l>web.xml</l> file:
-       </p>
-       <p class='bxml'>
-       <xt>&lt;web-app</xt> <xa>version</xa>=<xs>'3.0'</xs><xt>&gt;</xt>
-               <xt>&lt;servlet&gt;</xt>
-                       
<xt>&lt;servlet-name&gt;</xt>RootResources<xt>&lt;/servlet-name&gt;</xt>
-                       
<xt>&lt;servlet-class&gt;</xt>org.apache.juneau.examples.rest.RootResources<xt>&lt;/servlet-class&gt;</xt>
-               <xt>&lt;/servlet&gt;</xt>
-               <xt>&lt;servlet-mapping&gt;</xt>
-                       
<xt>&lt;servlet-name&gt;</xt>RootResources<xt>&lt;/servlet-name&gt;</xt>
-                       
<xt>&lt;url-pattern&gt;</xt>/*<xt>&lt;/url-pattern&gt;</xt>
-               <xt>&lt;/servlet-mapping&gt;</xt>
-       <xt>&lt;/web-app&gt;</xt>
-       </p>
-       <p>
-               The <l>RootResources</l> class consists entirely of annotations:
-       </p>
+       <div class='warn'>
+               The Juneau Microservice libraries are likely to be removed in 
Juneau 9.0 due to the popularity of the Spring Boot
+               framework for creating microservices and the ability for Juneau 
to be used within Spring Boot.
+       </div>
        
-       <h5 class='figure'>RootResources.java</h5>
-       <p class='bjava'>
-       <jd>/**
-        * Sample REST resource showing how to implement a "router" resource 
page.
-        */</jd>
-       <ja>@Rest</ja>(
-               path=<js>"/"</js>,
-               title=<js>"Root resources"</js>,
-               description=<js>"Example of a router resource page."</js>,
-               htmldoc=<ja>@HtmlDoc</ja>(
-                       widgets={
-                               ContentTypeMenuItem.<jk>class</jk>,
-                               StyleMenuItem.<jk>class</jk>
-                       },
-                       navlinks={
-                               <js>"options: ?method=OPTIONS"</js>,
-                               <js>"$W{ContentTypeMenuItem}"</js>,
-                               <js>"$W{StyleMenuItem}"</js>,
-                               <js>"source: 
$C{Source/gitHub}/org/apache/juneau/examples/rest/$R{servletClassSimple}.java"</js>
-                       },
-                       aside={
-                               <js>"&lt;div style='max-width:400px' 
class='text'&gt;"</js>,
-                               <js>"   &lt;p&gt;This is an example of a 
'router' page that serves as a jumping-off point to child 
resources.&lt;/p&gt;"</js>,
-                               <js>"   &lt;p&gt;Resources can be nested 
arbitrarily deep through router pages.&lt;/p&gt;"</js>,
-                               <js>"   &lt;p&gt;Note the &lt;span 
class='link'&gt;options&lt;/span&gt; link provided that lets you see the 
generated swagger doc for this page.&lt;/p&gt;"</js>,
-                               <js><js>"       &lt;p&gt;Also note the &lt;span 
class='link'&gt;sources&lt;/span&gt; link on these pages to view the source 
code for the page.&lt;/p&gt;"</js>,
-                               "       &lt;p&gt;All content on pages in the UI 
are serialized POJOs.  In this case, it's a serialized array of beans with 2 
properties, 'name' and 'description'.&lt;/p&gt;"</js>,
-                               <js>"   &lt;p&gt;Other features (such as this 
aside) are added through annotations.&lt;/p&gt;"</js>,
-                               <js>"&lt;/div&gt;"</js>
-                       }
-               ),
-               children={
-                       HelloWorldResource.<jk>class</jk>,
-                       PetStoreResource.<jk>class</jk>,
-                       DtoExamples.<jk>class</jk>,
-                       ConfigResource.<jk>class</jk>,
-                       LogsResource.<jk>class</jk>,
-                       DebugResource.<jk>class</jk>,
-                       ShutdownResource.<jk>class</jk>
-               }
-       )
-       <ja>@SerializerConfig</ja>(
-               <jc>// For testing purposes, we want to use single quotes in 
all the serializers so it's easier to do simple
-               // String comparisons.</jc>
-               quoteChar=<js>"'"</js>
-       )
-       <jk>public class</jk> RootResources <jk>extends</jk> 
BasicRestServletGroup <jk>implements</jk> BasicUniversalConfig {
-               <jc>// No code!</jc>
-       }
-       </p>
-       <p>
-               The <l>children</l> annotation defines the child resources of 
this router resource.
-               These are resources whose paths are direct descendants to the 
parent resource.                  
-       </p>
-       <p>
-               Child resources must be annotated with the {@link 
org.apache.juneau.rest.annotation.Rest#path() @Rest(path)} annotation to 
-               identify the subpath of the child.
-               Children CAN extend from {@link 
org.apache.juneau.rest.servlet.BasicRestServlet} but it is not a requirement.
-       </p>
-       <p>
-               Note that these router pages can be arbitrarily nested deep.  
-               You can define many levels of router pages for arbitrarily 
hierarchical REST interfaces. 
-       </p>
-       <p>
-               Let's step back and describe what's going on here:
-       </p>
-       <p>
-               During servlet initialization of the <l>RootResources</l> 
object, the toolkit looks for the 
-               <l>@Rest(children)</l> annotation.  
-               If it finds it, it instantiates instances of each class and 
recursively performs servlet initialization 
-               on them.  
-               It then associates the child resource with the parent by the 
name specified by the 
-               <l>@Rest(path)</l> annotation on the child class.  
-       </p>
-       <p>
-               When a request for the child URL (<l>/helloWorld</l>) is 
received, the <l>RootResources</l> servlet 
-               gets the request and sees that the URL remainder matches one of 
its child resources.  
-               It then forwards the request to the child resource for 
processing.  
-               The request passed to the child resource is the same as if the 
child resource had been deployed 
-               independently (e.g. path-info, resource-URI, and so forth).
-       </p>
-</div>
-</div><!-- END: 17.1 - juneau-examples-rest.jer.RootResources -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest.jer.HelloWorldResource' 
id='juneau-examples-rest.jer.HelloWorldResource'>17.2 - 
HelloWorldResource</a><span class='update'>updated: 8.0.0, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 17.2 - 
juneau-examples-rest.jer.HelloWorldResource -->
-<div class='topic'>
-       <p>
-               The <l>HelloWorldResource</l> class is a simple resource that 
prints a "Hello world!" message.
-       </p>
+       <h5 class='figure'>Starter Project Zip</h5>
+       <p class='bcode w500'>
+       juneau-examples-rest-jetty-{@property juneauVersion}.zip 
+       </p>    
        
-       <h5 class='figure'>HelloWorldResource.java</h5>
-       <p class='bjava'>
-       <jd>/** 
-       * Sample REST resource that prints out a simple "Hello world!" message. 
-       */</jd> 
-       <ja>@Rest</ja>( 
-               title=<js>"Hello World"</js>,
-               description=<js>"An example of the simplest-possible 
resource"</js>,
-               path=<js>"/helloWorld"</js>,
-               htmldoc=<ja>@HtmlDoc</ja>(
-                       aside={
-                               <js>"&lt;div style='max-width:400px' 
class='text'&gt;"</js>,
-                               <js>"   &lt;p&gt;This page shows a resource 
that simply response with a 'Hello world!' message&lt;/p&gt;"</js>,
-                               <js>"   &lt;p&gt;The POJO serialized is a 
simple String.&lt;/p&gt;"</js>,
-                               <js>"&lt;/div&gt;"</js>
-                       }
-               )
-       ) 
-       <jk>public class</jk> HelloWorldResource <jk>implements</jk> 
BasicRestConfig { 
-               
-               <jd>/** GET request handler */</jd> 
-               <ja>@RestGet</ja>(path=<js>"/*"</js>, summary=<js>"Responds 
with \"Hello world!\""</js>) 
-               <jk>public</jk> String sayHello() { 
-                       <jk>return</jk> <js>"Hello world!"</js>; 
-               } 
-       }
-       </p>
-       <p>
-               Notice that in this case we're not extending from {@link 
org.apache.juneau.rest.servlet.RestServlet}.  
-               We are however implementing {@del 
org.apache.juneau.rest.BasicRestConfig} which is a no-op
-               interface that defines a default <ja>@Rest</ja> annotation with 
all the serializers, parsers, 
-               and configuration defined on the {@link 
org.apache.juneau.rest.servlet.BasicRestServlet} class.
-       </p>
-       <p>
-               The only difference between implementing <l>BasicRestConfig</l> 
and extending from <l>BasicRestServlet</l>
-               is that the latter provides the following additional features:
-       </p>
-       <ul class='spaced-list'>
-               <li>A default OPTIONS method.
-               <li>It can be deployed like any servlet.
-       </ul>
        <p>
-               All other examples in this project extend from 
<l>BasicRestServlet</l> so that they provide automatic OPTIONS page support.
+               The <c>juneau-examples-rest-jetty</c> project includes 
everything you need create a Samples REST 
+               microservice in an Eclipse workspace and build it as an 
executable jar.
        </p>
-       <p>
-               Pointing a browser to the resource shows the following:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000/helloWorld
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.HelloWorldResource.1.png'>
-       <p>
-               Using the special <l>&amp;Accept=text/json</l> and 
<l>&amp;plainText=true</l> parameters
-                       allows us to see this page rendered as JSON:
-       </p>            
-       <p class='bcode'>
-       http://localhost:10000/helloWorld?Accept=text/json&amp;plainText=true
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.HelloWorldResource.2.png'>
-</div>
-</div><!-- END: 17.2 - juneau-examples-rest.jer.HelloWorldResource -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest.jer.DtoExamples' 
id='juneau-examples-rest.jer.DtoExamples'>17.3 - DtoExamples</a><span 
class='update'>created: 8.0.0, updated: 8.1.0, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 17.3 - juneau-examples-rest.jer.DtoExamples -->
-<div class='topic'>
-       <p>
-               The <l>DtoExamples</l> resource is a resource group for 
demonstrating various DTO examples.
-       </p>
-       <p>     
-               The <l>AtomFeedResource</l> class shows examples of the 
following:
-       </p>
-       <ul class='spaced-list'>
-               <li>
-                       Using the {@doc org.apache.juneau.dto.atom#TOC ATOM 
Feed DTO} API.
-       </ul>
-       <p>
-               Pointing a browser to the resource shows the following:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000/atom
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.AtomFeedResource.1.png'>
-       <p>
-               True ATOM feeds require using an <l>Accept:text/xml</l> header:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000/atom?Accept=text/xml&amp;plainText=true
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.AtomFeedResource.2.png'>
-       <p>
-               Other languages, such as JSON are also supported:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000/atom?Accept=text/json&amp;plainText=true
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.AtomFeedResource.3.png'>
-       
-       <h5 class='figure'>AtomFeedResource.java</h5>
-       <p class='bjava'>
-       <jd>/** 
-       * Sample resource that shows how to generate ATOM feeds. 
-       */</jd> 
-       <ja>@Rest</ja>( 
-               path=<js>"/atom"</js>,
-               title=<js>"Sample ATOM feed resource"</js>,
-               description=<js>"Sample resource that shows how to render ATOM 
feeds"</js>,
-               htmldoc=<ja>@HtmlDoc</ja>(
-                       widgets={
-                               ContentTypeMenuItem.<jk>class</jk>,
-                               StyleMenuItem.<jk>class</jk>
-                       },
-                       navlinks={
-                               <js>"up: request:/.."</js>,
-                               <js>"options: servlet:/?method=OPTIONS"</js>,
-                               <js>"$W{ContentTypeMenuItem}"</js>,
-                               <js>"$W{StyleMenuItem}"</js>,
-                               <js>"source: 
$C{Source/gitHub}/org/apache/juneau/examples/rest/$R{servletClassSimple}.java"</js>
-                       }
-               ),
-               encoders=GzipEncoder.<jk>class</jk> 
-       ) 
-       <ja>@SerializerConfig</ja>(quoteChar=<js>"'"</js>)
-       <ja>@RdfConfig</ja>(rdfxml_tab=<js>"5"</js>, 
addRootProperty=<js>"true"</js>)
-       <jk>public class</jk> AtomFeedResource <jk>extends</jk> 
BasicRestServlet <jk>implements</jk> BasicUniversalConfig { 
-       
-               <jk>private</jk> Feed <jf>feed</jf>; <jc>// The root resource 
object</jc> 
-               
-               <ja>@Override</ja> <jc>/* Servlet */</jc> 
-               <jk>public void</jk> init() { 
-                       <jk>try</jk> {
-                               <jf>feed</jf> =
-                                       
<jsm>feed</jsm>(<js>"tag:juneau.sample.com,2013:1"</js>, <js>"Juneau ATOM 
specification"</js>, <js>"2013-05-08T12:29:29Z"</js>)
-                                       
.subtitle(<jsm>text</jsm>(<js>"html"</js>).text(<js>"A &lt;em&gt;lot&lt;/em&gt; 
of effort went into making this effortless"</js>))
-                                       .links(
-                                               
<jsm>link</jsm>(<js>"alternate"</js>, <js>"text/html"</js>, 
<js>"http://www.sample.com/";</js>).hreflang(<js>"en"</js>),
-                                               
<jsm>link</jsm>(<js>"self"</js>, <js>"application/atom+xml"</js>, 
<js>"http://www.sample.com/feed.atom";</js>)
-                                       )
-                                       .generator(
-                                               
<jsm>generator</jsm>(<js>"Juneau"</js>).uri(<js>"http://juneau.apache.org/";</js>).version(<js>"1.0"</js>)
-                                       )
-                                       .entries(
-                                               
<jsm>entry</jsm>(<js>"tag:juneau.sample.com,2013:1.2345"</js>, <js>"Juneau ATOM 
specification snapshot"</js>, <js>"2013-05-08T12:29:29Z"</js>)
-                                               .links(
-                                                       
<jsm>link</jsm>(<js>"alternate"</js>, <js>"text/html"</js>, 
<js>"http://www.sample.com/2012/05/08/juneau.atom";</js>),
-                                                       
<jsm>link</jsm>(<js>"enclosure"</js>, <js>"audio/mpeg"</js>, 
<js>"http://www.sample.com/audio/juneau_podcast.mp3";</js>).length(1337)
-                                               )
-                                               
.published(<js>"2013-05-08T12:29:29Z"</js>)
-                                               .authors(
-                                                       
<jsm>person</jsm>(<js>"James Bognar"</js>).uri(<jk>new</jk> 
URI(<js>"http://www.sample.com/";</js>)).email(<js>"[email protected]"</js>)
-                                               )
-                                               .contributors(
-                                                       
<jsm>person</jsm>(<js>"Barry M. Caceres"</js>)
-                                               )
-                                               .content(
-                                                       
<jsm>content</jsm>(<js>"xhtml"</js>)
-                                                       .lang(<js>"en"</js>)
-                                                       
.base(<js>"http://www.apache.org/";</js>)
-                                                       
.text(<js>"&lt;div&gt;&lt;p&gt;[Update: Juneau supports 
ATOM.]&lt;/p&gt;&lt;/div&gt;"</js>)
-                                               )
-                                       );
-                       } <jk>catch</jk> (Exception e) {
-                               <jk>throw new</jk> RuntimeException(e);
-                       }
-               } 
-               
-               <jd>/** 
-               * GET request handler 
-               */</jd> 
-               <ja>@RestGet</ja>(<js>"/"</js>) 
-               <jk>public</jk> Feed getFeed() <jk>throws</jk> Exception { 
-                       <jk>return</jk> <jf>feed</jf>; 
-               } 
-               
-               <jd>/** 
-               * PUT request handler. 
-               * Replaces the feed with the specified content, and then 
mirrors it as the response. 
-               */</jd> 
-               <ja>@RestPut</ja>(<js>"/"</js>) 
-               <jk>public</jk> Feed setFeed(<ja>@Body</ja> Feed <jv>feed</jv>) 
<jk>throws</jk> Exception { 
-                       <jk>this</jk>.<jf>feed</jf> = <jv>feed</jv>; 
-                       <jk>return</jk> <jv>feed</jv>; 
-               } 
-       }               
-       </p>
-       <p>     
-               The <l>JsonSchemaResource</l> class shows examples of the 
following:
-       </p>
-       <ul class='spaced-list'>
-               <li>
-                       Using the {@link org.apache.juneau.dto.jsonschema JSON 
Schema DTO} API.
-       </ul>
-       <p>
-               The resource consists of a pre-initialized {@link 
org.apache.juneau.dto.jsonschema.JsonSchema} object.
-               Pointing a browser to the resource shows the following:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000/jsonSchema
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.JsonSchemaResource.1.png'>
-       <p>
-               For true JSON-Schema, you need to specify the header <l>Accept: 
text/json</l>:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000/jsonSchema?Accept=text/json&amp;plainText=true
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.JsonSchemaResource.2.png'>
-       
-       <h5 class='figure'>JsonSchemaResource.java</h5>
-       <p class='bjava'>
-       <jd>/** 
-       * Sample resource that shows how to serialize JSON-Schema documents. 
-       */</jd> 
-       <ja>@Rest</ja>( 
-               path=<js>"/jsonSchema"</js>,
-               messages=<js>"nls/JsonSchemaResource"</js>,
-               title=<js>"Sample JSON-Schema document"</js>,
-               description=<js>"Sample resource that shows how to generate 
JSON-Schema documents"</js>,
-               htmldoc=<ja>@HtmlDoc</ja>(
-                       widgets={
-                               ContentTypeMenuItem.<jk>class</jk>,
-                               StyleMenuItem.<jk>class</jk>
-                       },
-                       navlinks={
-                               <js>"up: request:/.."</js>,
-                               <js>"options: servlet:/?method=OPTIONS"</js>,
-                               <js>"$W{ContentTypeMenuItem}"</js>,
-                               <js>"$W{StyleMenuItem}"</js>,
-                               <js>"source: 
$C{Source/gitHub}/org/apache/juneau/examples/rest/$R{servletClassSimple}.java"</js>
-                       },
-                       aside={
-                               <js>"&lt;div style='min-width:200px' 
class='text'&gt;"</js>,
-                               <js>"   &lt;p&gt;Shows how to produce 
JSON-Schema documents in a variety of languages using the JSON-Schema 
DTOs.&lt;/p&gt;"</js>,
-                               <js>"&lt;/div&gt;"</js>
-                       }
-               )
-       ) 
-       <jk>public class</jk> JsonSchemaResource <jk>extends</jk> 
BasicRestServlet <jk>implements</jk> BasicUniversalConfig { 
-               <jk>private static final long</jk> <jsf>serialVersionUID</jsf> 
= 1L; 
-               
-               <jk>private</jk> JsonSchema schema; <jc>// The schema 
document</jc> 
-               
-               <ja>@Override</ja> /* Servlet */ 
-               <jk>public void</jk> init() { 
-                       
-                       <jk>try</jk> { 
-                               <jf>schema</jf> = <jk>new</jk> JsonSchema() 
-                                       
.setId(<js>"http://example.com/sample-schema#";</js>) 
-                                       
.setSchemaVersionUri(<js>"http://json-schema.org/draft-04/schema#";</js>) 
-                                       .setTitle(<js>"Example Schema"</js>) 
-                                       .setType(JsonType.<jsf>OBJECT</jsf>) 
-                                       .addProperties( 
-                                               <jk>new</jk> 
JsonSchemaProperty(<js>"firstName"</js>, JsonType.<jsf>STRING</jsf>), 
-                                               <jk>new</jk> 
JsonSchemaProperty(<js>"lastName"</js>, JsonType.<jsf>STRING</jsf>), 
-                                               <jk>new</jk> 
JsonSchemaProperty(<js>"age"</js>, JsonType.<jsf>INTEGER</jsf>) 
-                                                       
.setDescription(<js>"Age in years"</js>) 
-                                                       .setMinimum(0) 
-                               ) 
-                               .addRequired(<js>"firstName"</js>, 
<js>"lastName"</js>); 
-                       } <jk>catch</jk> (Exception e) { 
-                               <jk>throw new</jk> RuntimeException(e); 
-                       } 
-               } 
-               
-               <jd>/** GET request handler */</jd> 
-               <ja>@RestGet</ja>(<js>"/"</js>) 
-               <jk>public</jk> JsonSchema getSchema() <jk>throws</jk> 
Exception { 
-                       <jk>return</jk> <jf>schema</jf>; 
-               } 
-               
-               <jd>/** 
-               * PUT request handler. 
-               * Replaces the schema document with the specified content, and 
then mirrors it as the response. 
-               */</jd> 
-               <ja>@RestPut</ja>(<js>"/"</js>) 
-               <jk>public</jk> JsonSchema setSchema(<ja>@Body</ja> JsonSchema 
schema) <jk>throws</jk> Exception { 
-                       <jk>this</jk>.<jf>schema</jf> = schema; 
-                       <jk>return</jk> schema; 
-               } 
-       }               
-       </p>
-</div>
-</div><!-- END: 17.3 - juneau-examples-rest.jer.DtoExamples -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest.jer.ConfigResource' 
id='juneau-examples-rest.jer.ConfigResource'>17.4 - ConfigResource</a><span 
class='update'><b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 17.4 - juneau-examples-rest.jer.ConfigResource 
-->
-<div class='topic'>
-       <p>
-               The {@link 
org.apache.juneau.microservice.resources.ConfigResource} class is a predefined 
reusable resource.
-               It provides a REST interface for reading and altering the 
microservice config file.
-       </p>
-       <p>
-               Pointing a browser to the resource shows the following:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000/config
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.ConfigResource.1.png'>
-       <p>
-               An edit page is provided for altering the raw config file:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000/config/edit
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.ConfigResource.2.png'>
-       <p>
-               The {@link org.apache.juneau.config.Config} class is a 
serializable POJO, which makes the resource
-                       relatively straightforward to implement.
-       </p>
-       
-       <h5 class='figure'>ConfigResource.java</h5>
-       <p class='bjava'>
-       <jd>/** 
-       * Shows contents of the microservice configuration file. 
-       */</jd> 
-       <ja>@Rest</ja>( 
-               path=<js>"/config"</js>, 
-               title=<js>"Configuration"</js>, 
-               description=<js>"Contents of configuration file."</js>, 
-               htmldoc=<ja>@HtmlDoc</ja>(
-                       navlinks={
-                               <js>"up: request:/.."</js>,
-                               <js>"options: servlet:/?method=OPTIONS"</js>,
-                               <js>"edit: servlet:/edit"</js>
-                       }
-               )
-       ) 
-       <jk>public class</jk> ConfigResource <jk>extends</jk> BasicRestServlet 
<jk>implements</jk> BasicUniversalConfig { 
-               
-               <ja>@RestGet</ja>(path=<js>"/"</js>, description=<js>"Show 
contents of config file."</js>) 
-               <jk>public</jk> JsonMap getConfig() <jk>throws</jk> Exception {
-                       <jk>return</jk> getServletConfig().getConfig().asMap();
-               }
-               
-               <ja>@RestGet</ja>(path=<js>"/edit"</js>, description=<js>"Edit 
config file."</js>)
-               <jk>public</jk> Form getConfigEditForm(RestRequest 
<jv>req</jv>) <jk>throws</jk> Exception {
-                       <jk>return</jk> 
<jsm>form</jsm>().id(<js>"form"</js>).action(<js>"servlet:/"</js>).method(<js>"POST"</js>).enctype(<js>"application/x-www-form-urlencoded"</js>).children(
-                               
<jsm>div</jsm>()._class(<js>"data"</js>).children(
-                                       <jsm>table</jsm>(
-                                               
<jsm>tr</jsm>(<jsm>td</jsm>().style(<js>"text-align:right"</js>).children(<jsm>button</jsm>(<js>"submit"</js>,<js>"Submit"</js>),<jsm>button</jsm>(<js>"reset"</js>,<js>"Reset"</js>))),
-                                               
<jsm>tr</jsm>(<jsm>th</jsm>().child(<js>"Contents"</js>)),
-                                               
<jsm>tr</jsm>(<jsm>th</jsm>().child(
-                                                       
<jsm>textarea</jsm>().name(<js>"contents"</js>).rows(40).cols(120).style(<js>"white-space:pre;word-wrap:normal;overflow-x:scroll;font-family:monospace;"</js>)
-                                                               
.text(getServletConfig().getConfig().toString()))
-                                               )
-                                       )
-                               )
-                       );
-               }
-               
-               <ja>@RestGet</ja>(<js>"/{section}"</js>, 
-                       description=<js>"Show config file section."</js>, 
-                       swagger={
-                               <js>"parameters:["</js>,
-                                       
<js>"{name:'section',in:'path',description:'Section name.'}"</js>,
-                               <js>"]"</js>
-                       }
-               ) 
-               <jk>public</jk> JsonMap 
getConfigSection(<ja>@Path</ja>(<js>"section"</js>) String <jv>section</jv>) 
<jk>throws</jk> Exception { 
-                       <jk>return</jk> getSection(<jv>section</jv>); 
-               } 
-               
-               <ja>@RestGet</ja>(<js>"/{section}/{key}"</js>, 
-                       description=<js>"Show config file entry."</js>, 
-                       swagger={
-                               <js>"parameters:["</js>,
-                                       
<js>"{name:'section',in:'path',description:'Section name.'},"</js>,
-                                       
<js>"{name:'key',in:'path',description:'Entry name.'}"</js>,
-                               <js>"]"</js>
-                       }
-               ) 
-               <jk>public</jk> String 
getConfigEntry(<ja>@Path</ja>(<js>"section"</js>) String <jv>section</jv>, 
<ja>@Path</ja>(<js>"key"</js>) String <jv>key</jv>) <jk>throws</jk> Exception { 
-                       <jk>return</jk> 
getSection(<jv>section</jv>).getString(<jv>key</jv>); 
-               } 
-               
-               <ja>@RestPost</ja>(<js>"/"</js>, 
-                       description=<js>"Sets contents of config file from a 
FORM post."</js>, 
-                       swagger={
-                               <js>"parameters:["</js>,
-                                       
<js>"{name:'contents',in:'formData',description:'New contents in INI file 
format.'}"</js>,
-                               <js>"]"</js>
-                       }
-               ) 
-               <jk>public</jk> Config 
setConfigContentsFormPost(<ja>@FormData</ja>(<js>"contents"</js>) String 
<jv>contents</jv>) <jk>throws</jk> Exception { 
-                       <jk>return</jk> setConfigContents(<jk>new</jk> 
StringReader(<jv>contents</jv>)); 
-               } 
-               
-               <ja>@RestPut</ja>(path=<js>"/"</js>, 
-                       description=<js>"Sets contents of config file."</js>, 
-                       swagger={
-                               <js>"parameters:["</js>,
-                                       <js>"{in:'body',description:'New 
contents in INI file format.'}"</js>,
-                               <js>"]"</js>
-                       }
-               ) 
-               <jk>public</jk> Config setConfigContents(<ja>@Body</ja> Reader 
<jv>contents</jv>) <jk>throws</jk> Exception { 
-                       <jk>return</jk> 
getServletConfig().getConfig().load(<jv>contents</jv>, <jk>true</jk>).asMap();
-               } 
-               
-               <ja>@RestPut</ja>(path=<js>"/{section}"</js>, 
-                       description=<js>"Add or overwrite a config file 
section."</js>, 
-                       swagger={
-                               <js>"parameters:["</js>,
-                                       
<js>"{name:'section',in:'path',description:'Section name.'}"</js>,
-                                       <js>"{in:'body',description:'New 
contents for section as a simple map with string keys and values.'}"</js>,
-                               <js>"]"</js>
-                       }
-               ) 
-               <jk>public</jk> JsonMap 
setConfigSection(<ja>@Path</ja>(<js>"section"</js>) String <jv>section</jv>, 
<ja>@Body</ja> Map&lt;String,String&gt; <jv>contents</jv>) <jk>throws</jk> 
Exception { 
-                       
getServletConfig().getConfig().setSection(<jv>section</jv>, <jv>contents</jv>); 
-                       <jk>return</jk> getSection(section); 
-               } 
-               
-               <ja>@RestPut</ja>(path=<js>"/{section}/{key}"</js>, 
-                       description=<js>"Add or overwrite a config file 
entry."</js>, 
-                       swagger={
-                               <js>"parameters:["</js>,
-                                       
<js>"{name:'section',in:'path',description:'Section name.'}"</js>,
-                                       
<js>"{name:'key',in:'path',description:'Entry name.'}"</js>,
-                                       <js>"{in:'body',description:'New value 
as a string.'}"</js>,
-                               <js>"]"</js>
-                       }
-               ) 
-               <jk>public</jk> String 
setConfigSection(<ja>@Path</ja>(<js>"section"</js>) String <jv>section</jv>, 
<ja>@Path</ja>(<js>"key"</js>) String <jv>key</jv>, <ja>@Body</ja> String 
<jv>value</jv>) <jk>throws</jk> Exception { 
-                       getServletConfig().getConfig().put(<jv>section</jv>, 
<jv>key</jv>, <jv>value</jv>, <jk>false</jk>); 
-                       <jk>return</jk> 
getSection(<jv>section</jv>).getString(<jv>key</jv>); 
-               } 
-               
-               <jk>private</jk> JsonMap getSection(String <jv>name</jv>) { 
-                       JsonMap <jv>map</jv> = 
getServletConfig().getConfig().getSectionMap(<jv>name</jv>); 
-                       <jk>if</jk> (<jv>map</jv> == <jk>null</jk>) 
-                               <jk>throw new</jk> 
RestException(<jsf>SC_NOT_FOUND</jsf>, <js>"Section not found."</js>); 
-                       <jk>return</jk> <jv>map</jv>; 
-               } 
-       }               
-       </p>
-</div>
-</div><!-- END: 17.4 - juneau-examples-rest.jer.ConfigResource -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest.jer.LogsResource' 
id='juneau-examples-rest.jer.LogsResource'>17.5 - LogsResource</a><span 
class='update'><b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 17.5 - juneau-examples-rest.jer.LogsResource -->
-<div class='topic'>
-       <p>
-               The {@link 
org.apache.juneau.microservice.resources.LogsResource} class is a reusable 
predefined resource.
-               It provides a REST interface for the log files generated by the 
microservice.
-       </p>
-       <p>
-               Pointing a browser to the resource shows the following:
-       </p>
-       <p class='bcode'>
-       http://localhost:10000/logs
-       </p>                    
-       <img class='bordered w800' src='doc-files/jer.LogsResource.1.png'>
-</div>
-</div><!-- END: 17.5 - juneau-examples-rest.jer.LogsResource -->
-</div><!-- END: 17 - juneau-examples-rest -->
-
-<!-- 
====================================================================================================
 -->
-
-<h2 class='topic' onclick='toggle(this)'><a href='#juneau-examples-rest-jetty' 
id='juneau-examples-rest-jetty'>18 - juneau-examples-rest-jetty</a><span 
class='update'>created: 8.0.0, deprecated: 8.1.2</span></h2>
-<div class='topic'><!-- START: 18 - juneau-examples-rest-jetty -->
-<div class='topic'>
-       <div class='warn'>
-               The Juneau Microservice libraries are likely to be removed in 
Juneau 9.0 due to the popularity of the Spring Boot
-               framework for creating microservices and the ability for Juneau 
to be used within Spring Boot.
-       </div>
-       
-       <h5 class='figure'>Starter Project Zip</h5>
-       <p class='bcode w500'>
-       juneau-examples-rest-jetty-{@property juneauVersion}.zip 
-       </p>    
-       
-       <p>
-               The <c>juneau-examples-rest-jetty</c> project includes 
everything you need create a Samples REST 
-               microservice in an Eclipse workspace and build it as an 
executable jar.
-       </p>
-</div>
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest-jetty.jerj.Installing' 
id='juneau-examples-rest-jetty.jerj.Installing'>18.1 - Installing in 
Eclipse</a><span class='update'>created: 8.0.0, deprecated: 8.1.2, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 18.1 - 
juneau-examples-rest-jetty.jerj.Installing -->
-<div class='topic'>
-       <p>
-               Follow these instructions to import the REST examples project 
using Jetty into Eclipse.
-       </p>            
-       <ol class='spaced-list'>
-               <li>
-                       Download the <c>juneau-examples-rest-jetty-{@property 
juneauVersion}.zip</c> file from the downloads page
-                       (located in the binaries) and import it into your 
workspace as an existing project:
-                       <br><br>
-                       <img class='bordered' 
src='doc-files/jerj.Installing.1.png' style='width:524px'>
-               <li>
-                       Select the archive file and import the project:
-                       <br><br>
-                       <img class='bordered' 
src='doc-files/jerj.Installing.2.png' style='width:549px'>
-               <li>
-                       In your workspace, you should now see the following 
project:
-                       <br><br>
-                       <img class='bordered' 
src='doc-files/jerj.Installing.3.png' style='width:400px'>
-       </ol>
-       <p>
-               The important elements in this project are:
-       </p>
-       <ul class='spaced-list'>
-               <li>
-                       <l>App.java</l> - The entry point. 
-                       <br>This class creates and starts our microservice:
-                       <br><br>
-                       <p class='bjava'>
-               <jk>public class</jk> App {
-               
-                       <jk>public static void</jk> main(String[] args) 
<jk>throws</jk> Exception {
-                               JettyMicroservice
-                                       .<jsm>create</jsm>()
-                                       .args(args)
-                                       .servlet(RootResources.<jk>class</jk>)
-                                       .build()
-                                       .start()
-                                       .startConsole()
-                                       .join();
-                       }
-               }
-                       </p>
-               <li>
-                       <l>RootResources.java</l> - The top-level REST 
resource. 
-                       <br>This class routes HTTP requests to child resources:
-                       <br><br>
-                       <p class='bjava'>
-               <ja>@Rest</ja>(
-                       path=<js>"/*"</js>,
-                       title=<js>"Root resources"</js>,
-                       description=<js>"Example of a router resource 
page."</js>,
-                       htmldoc=<ja>@HtmlDoc</ja>(
-                               widgets={
-                                       ContentTypeMenuItem.<jk>class</jk>,
-                                       ThemeMenuItem.<jk>class</jk>
-                               },
-                               navlinks={
-                                       <js>"options: ?method=OPTIONS"</js>,
-                                       <js>"$W{ContentTypeMenuItem}"</js>,
-                                       <js>"$W{ThemeMenuItem}"</js>,
-                                       <js>"source: 
$C{Source/gitHub}/org/apache/juneau/examples/rest/$R{servletClassSimple}.java"</js>
-                               },
-                               aside={
-                                       <js>"&lt;div style='max-width:400px' 
class='text'&gt;"</js>,
-                                       <js>"   &lt;p&gt;This is an example of 
a 'router' page that serves as a jumping-off point to child 
resources.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;Resources can be 
nested arbitrarily deep through router pages.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;Note the &lt;span 
class='link'&gt;options&lt;/span&gt; link provided that lets you see the 
generated swagger doc for this page.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;Also note the &lt;span 
class='link'&gt;sources&lt;/span&gt; link on these pages to view the source 
code for the page.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;All content on pages 
in the UI are serialized POJOs.  In this case, it's a serialized array of beans 
with 2 properties, 'name' and 'description'.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;Other features (such 
as this aside) are added through annotations.&lt;/p&gt;"</js>,
-                                       <js>"&lt;/div&gt;"</js>
-                               }
-                       ),
-                       children={
-                               HelloWorldResource.<jk>class</jk>,
-                               PetStoreResource.<jk>class</jk>,
-                               DtoExamples.<jk>class</jk>,
-                               ConfigResource.<jk>class</jk>,
-                               LogsResource.<jk>class</jk>,
-                               ShutdownResource.<jk>class</jk>
-                       }
-               )
-               <ja>@SerializerConfig</ja>(
-                       <jc>// For testing purposes, we want to use single 
quotes in all the serializers so it's easier to do simple
-                       // String comparisons.</jc>
-                       quoteChar=<js>"'"</js>
-               )
-               <jk>public class</jk> RootResources <jk>extends</jk> 
BasicRestServletGroup <jk>implements</jk> BasicUniversalConfig {
-                       <jc>// No code</jc>
-               }
-                       </p>
-               <li>
-                       <l>jerj.cfg</l> - The external configuration file. 
-                       <br>Contains various useful settings.
-                       <br>Can be used for your own resource configurations.
-                       <br><br>
-                       <p class='bini'>
-               
<cc>#=======================================================================================================================
-               # Basic configuration file for REST microservices
-               # Subprojects can use this as a starting point.
-               
#=======================================================================================================================</cc>
-               
-               
<cc>#=======================================================================================================================
-               # Jetty settings
-               
#=======================================================================================================================</cc>
-               <cs>[Jetty]</cs>
-               
-               <cc># Path of the jetty.xml file used to configure the Jetty 
server.</cc>
-               <ck>config</ck> = <cv>jetty.xml</cv>
-               
-               <cc># Resolve Juneau variables in the jetty.xml file.</cc>
-               <ck>resolveVars</ck> = <cv>true</cv>
-               
-               <cc># Port to use for the jetty server.
-               # You can specify multiple ports.  The first available will be 
used.  '0' indicates to try a random port.
-               # The resulting available port gets set as the system property 
"availablePort" which can be referenced in the 
-               # jetty.xml file as "$S{availablePort}" (assuming resolveVars 
is enabled).</cc>
-               <ck>port</ck> = <cv>10000,0,0,0</cv>
-               
-               <cc># Optionally specify your servlets here:
-               #servlets = 
org.apache.juneau.microservice.sample.RootResources</cc>
-       
-               
<cc>#=======================================================================================================================
-               # REST settings
-               
#=======================================================================================================================</cc>
-               <cs>[REST]</cs>
-               
-               <cc># Comma-delimited list of key-value pairs that represent 
locations of static files that can be served up by your @Rest-annotated
-               # classes.  These are static files that are served up by the 
servlet under the specified sub-paths.
-               # For example, given the following setting...
-               #       staticFiles = htdocs:my-docs,styles/my-styles
-               # ...the URI "/servletPath/htdocs/javadoc.css" resolves to the 
path "/my-docs/javadoc.css".
-               # This path can be relative to the working directory, classpath 
root, or package of your resource class.
-               # Used by the BasicRestConfig interface that defines the 
following value:
-               #       staticFiles="$C{REST/staticFiles}"</cc>
-               <ck>staticFiles</ck> = htdocs:htdocs
-               
-               <cc># Stylesheet to use for HTML views.
-               # Used by the BasicRestConfig interface that defines the 
following value:
-               #       
stylesheet="$C{REST/theme,servlet:/htdocs/themes/devops.css}"</cc>
-               <ck>theme</ck> = <cv>servlet:/htdocs/themes/devops.css</cv>
-               
-               <cc># Various look-and-feel settings used in the 
BasicRestConfig interface.</cc>
-               <ck>headerIcon</ck> = <cv>servlet:/htdocs/images/juneau.png</cv>
-               <ck>headerLink</ck> = <cv>http://juneau.apache.org</cv>
-               <ck>footerIcon</ck> = <cv>servlet:/htdocs/images/asf.png</cv>
-               <ck>footerLink</ck> = <cv>http://www.apache.org</cv>
-               <ck>favicon</ck> = <cv>$C{REST/headerIcon}</cv>
-               <ck>header</ck> = 
-                       <cv>&lt;a href='$U{$C{REST/headerLink}}'&gt;
-                               &lt;img src='$U{$C{REST/headerIcon}}' 
style='position:absolute;top:5;right:5;background-color:transparent;height:30px'/&gt;
-                       &lt;/a&gt;</cv>
-               <ck>footer</ck> = 
-                       <cv>&lt;a href='$U{$C{REST/footerLink}}'&gt;
-                               &lt;img src='$U{$C{REST/footerIcon}}' 
style='float:right;padding-right:20px;height:32px'/&gt;
-                       &lt;/a&gt;</cv>
-               
-               
<cc>#=======================================================================================================================
-               # Console settings
-               
#=======================================================================================================================</cc>
-               <cs>[Console]</cs>
-               
-               <ck>enabled</ck> = <cv>true</cv>
-               
-               <cc># List of available console commands.
-               # These are classes that implements ConsoleCommand that allow 
you to submit commands to the microservice via
-               # the console.
-               # When listed here, the implementations must provide a no-arg 
constructor.
-               # They can also be provided dynamically by overriding the 
Microservice.createConsoleCommands() method.</cc>
-               <ck>commands</ck> = 
-                       <cv>org.apache.juneau.microservice.console.ExitCommand,
-                       org.apache.juneau.microservice.console.RestartCommand,
-                       org.apache.juneau.microservice.console.HelpCommand,
-                       
org.apache.juneau.microservice.console.ConfigCommand</cv>
-                       
-               
<cc>#=======================================================================================================================
-               # Logger settings
-               
#-----------------------------------------------------------------------------------------------------------------------
-               # See FileHandler Java class for details.
-               
#=======================================================================================================================</cc>
-               <cs>[Logging]</cs>
-       
-               ...
-               
-               
<cc>#=======================================================================================================================
-               # System properties
-               
#-----------------------------------------------------------------------------------------------------------------------
-               # These are arbitrary system properties that are set during 
startup.
-               
#=======================================================================================================================</cc>
-               <cs>[SystemProperties]</cs>
-               
-               <cc># Configure Jetty for StdErrLog Logging
-               # org.eclipse.jetty.util.log.class = 
org.eclipse.jetty.util.log.StrErrLog</cc>
-               
-               <cc># Configure Jetty to log using java-util logging</cc>
-               <ck>org.eclipse.jetty.util.log.class</ck> = 
<cv>org.apache.juneau.microservice.jetty.JettyLogger</cv>
-               
-               <cc># Jetty logging level
-               # Possible values:  ALL, DEBUG, INFO, WARN, OFF</cc>
-               <ck>org.eclipse.jetty.LEVEL</ck> = <cv>WARN
-               
-               <ck>derby.stream.error.file</ck> = 
<cv>$C{Logging/logDir}/derby-errors.log</cv>                                 
-               </p>
-               <li>
-                       <l>jetty.xml</l> - The Jetty configuration file. 
-                       <br>A bare-bones config file that can be extended to 
use any Jetty features.
-                       <br><br>
-                       <p class='bxml'>
-               <xt>&lt;Configure</xt> <xa>id</xa>=<xs>"ExampleServer"</xs> 
<xa>class</xa>=<xs>"org.eclipse.jetty.server.Server"</xs>&gt;</xt>
-               
-                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"connectors"</xs><xt>&gt;</xt>
-                               <xt>&lt;Array</xt> 
<xa>type</xa>=<xs>"org.eclipse.jetty.server.Connector"</xs><xt>&gt;</xt>
-                                       <xt>&lt;Item&gt;</xt>
-                                               <xt>&lt;New</xt> 
<xa>class</xa>=<xs>"org.eclipse.jetty.server.ServerConnector"</xs><xt>&gt;</xt>
-                                                       <xt>&lt;Arg&gt;</xt>
-                                                               
<xt>&lt;Ref</xt> <xa>refid</xa>=<xs>"ExampleServer"</xs><xt>/&gt;</xt>
-                                                       <xt>&lt;/Arg&gt;</xt>
-                                                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"port"</xs><xt>&gt;</xt>$S{availablePort,8080}<xt>&lt;/Set&gt;</xt>
-                                               <xt>&lt;/New&gt;</xt>
-                                       <xt>&lt;/Item&gt;</xt>
-                               <xt>&lt;/Array&gt;</xt>
-                       <xt>&lt;/Set&gt;</xt>
-               
-                       <xt>&lt;New</xt> <xa>id</xa>=<xs>"context"</xs> 
<xa>class</xa>=<xs>"org.eclipse.jetty.servlet.ServletContextHandler"</xs><xt>&gt;</xt>
-                               <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"contextPath"</xs><xt>&gt;/&lt;/Set&gt;</xt>
-                               <xc>&lt;!-- Optionally specify your servlets 
here -->
-                               &lt;!--Call name="addServlet"&gt;
-                                       
&lt;Arg&gt;org.apache.juneau.microservice.sample.RootResources&lt;/Arg&gt;
-                                       &lt;Arg&gt;/*&lt;/Arg&gt;
-                               &lt;/Call--></xc>
-                               <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"sessionHandler"</xs><xt>&gt;</xt>
-                                       <xt>&lt;New</xt> 
<xa>class</xa>=<xs>"org.eclipse.jetty.server.session.SessionHandler"</xs><xt>/&gt;</xt>
-                               <xt>&lt;/Set&gt;</xt>
-                       <xt>&lt;/New&gt;</xt>
-               
-                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"handler"</xs><xt>&gt;</xt>
-                               <xt>&lt;New</xt> 
<xa>class</xa>=<xs>"org.eclipse.jetty.server.handler.HandlerCollection"</xs><xt>&gt;</xt>
-                                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"handlers"</xs><xt>&gt;</xt>
-                                               <xt>&lt;Array</xt> 
<xa>type</xa>=<xs>"org.eclipse.jetty.server.Handler"</xs><xt>&gt;</xt>
-                                                       <xt>&lt;Item&gt;</xt>
-                                                               
<xt>&lt;Ref</xt> <xa>refid</xa>=<xs>"context"</xs><xt>/&gt;</xt>
-                                                       <xt>&lt;/Item&gt;</xt>
-                                                       <xt>&lt;Item&gt;</xt>
-                                                               
<xt>&lt;New</xt> 
<xa>class</xa>=<xs>"org.eclipse.jetty.server.handler.DefaultHandler"</xs><xt>/&gt;</xt>
-                                                       <xt>&lt;/Item&gt;</xt>
-                                               <xt>&lt;/Array&gt;</xt>
-                                       <xt>&lt;/Set&gt;</xt>
-                               <xt>&lt;/New&gt;</xt>
-                       <xt>&lt;/Set&gt;</xt>
-               
-                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"requestLog"</xs><xt>&gt;</xt>
-                               <xt>&lt;New</xt> 
<xa>id</xa>=<xs>"RequestLogImpl"</xs> 
<xa>class</xa>=<xs>"org.eclipse.jetty.server.NCSARequestLog"</xs><xt>&gt;</xt>
-                                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"filename"</xs><xt>&gt;&lt;Property</xt> 
<xa>name</xa>=<xs>"jetty.logs"</xs> 
<xa>default</xa>=<xs>"$C{Logging/logDir,logs}"</xs><xt>/&gt;</xt>/jetty-requests.log<xt>&lt;/Set&gt;</xt>
-                                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"filenameDateFormat</xs><xt>"&gt;</xt>yyyy_MM_dd<xt>&lt;/Set&gt;</xt>
-                                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"LogTimeZone"</xs><xt>&gt;</xt>GMT<xt>&lt;/Set&gt;</xt>
-                                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"retainDays"</xs><xt>&gt;</xt>90<xt>&lt;/Set&gt;</xt>
-                                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"append"</xs><xt>&gt;</xt>false<xt>&lt;/Set&gt;</xt>
-                                       <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"LogLatency"</xs><xt>&gt;</xt>true<xt>&lt;/Set&gt;</xt>
-                               <xt>&lt;/New&gt;</xt>
-                       <xt>&lt;/Set&gt;</xt>
-               
-                       <xt>&lt;Get</xt> 
<xa>name</xa>=<xs>"ThreadPool"</xs><xt>&gt;</xt>
-                               <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"minThreads"</xs> 
<xa>type</xa>=<xs>"int"</xs><xt>&gt;</xt>10<xt>&lt;/Set&gt;</xt>
-                               <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"maxThreads"</xs> 
<xa>type</xa>=<xs>"int"</xs><xt>&gt;</xt>100<xt>&lt;/Set&gt;</xt>
-                               <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"idleTimeout"</xs> 
<xa>type</xa>=<xs>"int"</xs><xt>&gt;</xt>60000<xt>&lt;/Set&gt;</xt>
-                               <xt>&lt;Set</xt> 
<xa>name</xa>=<xs>"detailedDump"</xs><xt>&gt;</xt>true<xt>&lt;/Set&gt;</xt>
-                       <xt>&lt;/Get&gt;</xt>
-               <xt>&lt;/Configure&gt;</xt>
-                       </p>
-       </ul>
-       <p>
-               At this point, you're ready to start the microservice from your 
workspace.
-       </p>
-</div>
-</div><!-- END: 18.1 - juneau-examples-rest-jetty.jerj.Installing -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest-jetty.jerj.Running' 
id='juneau-examples-rest-jetty.jerj.Running'>18.2 - Running in Eclipse</a><span 
class='update'>created: 8.0.0, deprecated: 8.1.2, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 18.2 - juneau-examples-rest-jetty.jerj.Running 
-->
-<div class='topic'>
-       <p>
-               The <l>jerj.launch</l> file is already provided to allow you to 
quickly start
-               your new microservice.
-       </p>
-       <p>
-               Go to <b>Run -> Run Configurations -> Java Application -> 
juneau-examples-rest-jetty</b> and click <b>Run</b>.
-               In your console view, you should see the following output:
-       </p>
-       <p class='bconsole'>
-       Running class 'JettyMicroservice' using config file 'jerj.cfg'.
-       Server started on port 10000
-       
-       List of available commands:
-               exit -- Shut down service
-               restart -- Restarts service
-               help -- Commands help
-       
-       >                       
-       </p>
-       <p>
-               Now open your browser and point to 
<l>http://localhost:10000</l>.  
-               You should see the following:
-       </p>
-       <p class='bcode w400'>
-       http://localhost:10000
-       </p>                    
-       <img class='bordered w400' src='doc-files/jerj.Running.1.png'>
-       <p>
-               You can enter the command <c>exit</c> to shut it down.
-       </p>
-</div>
-</div><!-- END: 18.2 - juneau-examples-rest-jetty.jerj.Running -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest-jetty.jerj.Building' 
id='juneau-examples-rest-jetty.jerj.Building'>18.3 - Building and Running from 
Command-Line</a><span class='update'>created: 8.0.0, deprecated: 8.1.2, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 18.3 - juneau-examples-rest-jetty.jerj.Building 
-->
-<div class='topic'>
-       <p>
-               The <l>pom.xml</l> file is a basic Maven build script for 
creating the examples microservice
-               as an executable uber-jar.
-       </p>
-       <p>
-               The easiest way to build the microservice is to run the 
following from the project root.
-       </p>
-       <p class='bconsole'>
-       mvn clean install
-       </p>
-       <p>
-               Your <c>target</c> directory should now contain the following 
files:
-       </p>
-       <ul>
-               <li><c>juneau-examples-rest-jetty-1.0.jar</c>
-               <li><c>jerj.cfg</c>
-       </ul>
-       <p>
-               To start from a command line, run the following command from 
inside your <c>target</c> directory:
-       </p>
-       <p class='bconsole'>
-       java -jar juneau-examples-rest-jetty-1.0.jar
-       </p>
-       <p>
-               You should see the following console output:
-       </p>
-       <p class='bconsole'>
-       Running class 'JettyMicroservice' using config file 'jerj.cfg'.
-       Server started on port 10000
-       
-       List of available commands:
-               exit -- Shut down service
-               restart -- Restarts service
-               help -- Commands help
-       
-       >                       
-       </p>
-       <p>
-               If you get this error message: <code 
class='snippet'>java.net.BindException: Address already in use</code>, 
-               then this microservice is already running elsewhere and so it 
cannot bind to port 10000.
-       </p>
-</div>
-</div><!-- END: 18.3 - juneau-examples-rest-jetty.jerj.Building -->
-</div><!-- END: 18 - juneau-examples-rest-jetty -->
-
-<!-- 
====================================================================================================
 -->
-
-<h2 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest-springboot' id='juneau-examples-rest-springboot'>19 
- juneau-examples-rest-springboot</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></h2>
-<div class='topic'><!-- START: 19 - juneau-examples-rest-springboot -->
-<div class='topic'>
-       <h5 class='figure'>Starter Project Zip</h5>
-       <p class='bcode w500'>
-       juneau-examples-rest-springboot-{@property juneauVersion}.zip 
-       </p>    
-       
-       <p>
-               The <c>juneau-examples-rest-springboot</c> library contains the 
same examples as <c>juneau-examples-rest</c>
-               but also includes the following:
-       </p>
-       <ul class='spaced-list'>
-               <li>
-                       A starter class for invoking the examples using Spring 
Boot.
-               <li>
-                       A resource resolver for resolving REST resources as 
injectable beans.
-               <li>
-                       A POM that extends from 
<c>spring-boot-starter-parent</c> that allows you to build a fully-shaded 
executable jar.
-               <li>
-                       Configuration files for deploying the microservice to 
Heroku.
-       </ul>
-</div>
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest-springboot.jers.Installing' 
id='juneau-examples-rest-springboot.jers.Installing'>19.1 - Installing in 
Eclipse</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 19.1 - 
juneau-examples-rest-springboot.jers.Installing -->
-<div class='topic'>
-       <p>
-               Follow these instructions to import the REST examples project 
using Spring Boot into Eclipse.
-       </p>            
-       <ol class='spaced-list'>
-               <li>
-                       Download the 
<c>juneau-examples-rest-springboot-{@property juneauVersion}.zip</c> file from 
the downloads page
-                       (located in the binaries) and import it into your 
workspace as an existing project:
-                       <br><br>
-                       <img class='bordered' 
src='doc-files/jers.Installing.1.png' style='width:524px'>
-               <li>
-                       Select the archive file and import the project:
-                       <br><br>
-                       <img class='bordered' 
src='doc-files/jers.Installing.2.png' style='width:549px'>
-               <li>
-                       In your workspace, you should now see the following 
project:
-                       <br><br>
-                       <img class='bordered' 
src='doc-files/jers.Installing.3.png' style='width:400px'>
-       </ol>
-       <p>
-               The important elements in this project are:
-       </p>
-       <ul class='spaced-list'>
-               <li>
-                       <l>App.java</l> - The entry point. 
-                       <br>This class creates and starts our microservice.
-                       <br>Note that we're using the existing Spring Boot 
application logic for the microservice and we're retrieving
-                       our root resource as a spring bean.
-                       <br>Only the top-level resource needs to be annotated 
with {@del org.apache.juneau.rest.springboot.annotation.JuneauRestRoot 
@JuneauRestRoot}
-                       <br><br>
-                       <p class='bjava'>
-               <ja>@SpringBootApplication</ja>
-               <ja>@Controller</ja>
-               <jk>public class</jk> App {
-               
-                       <jk>public static void</jk> main(String[] args) {
-                               <jk>new</jk> 
SpringApplicationBuilder(App.<jk>class</jk>)
-                                       .initializers(<jk>new</jk> 
JuneauRestInitializer(App.<jk>class</jk>))
-                                       .run(args);
-                       }
-               
-                       <ja>@Bean @JuneauRestRoot</ja>
-                       <jk>public</jk> RootResources getRootResources() {
-                               <jk>return new</jk> RootResources();
-                       }
-               }
-                       </p>
-               <li>
-                       <l>RootResources.java</l> - The top-level REST 
resource. 
-                       <br>This class routes HTTP requests to child resources:
-                       <br><br>
-                       <p class='bjava'>
-               <ja>@Rest</ja>(
-                       path=<js>"/*"</js>,
-                       title=<js>"Root resources"</js>,
-                       description=<js>"Example of a router resource 
page."</js>,
-                       htmldoc=<ja>@HtmlDoc</ja>(
-                               widgets={
-                                       ContentTypeMenuItem.<jk>class</jk>,
-                                       ThemeMenuItem.<jk>class</jk>
-                               },
-                               navlinks={
-                                       <js>"options: ?method=OPTIONS"</js>,
-                                       <js>"$W{ContentTypeMenuItem}"</js>,
-                                       <js>"$W{ThemeMenuItem}"</js>,
-                                       <js>"source: 
$C{Source/gitHub}/org/apache/juneau/examples/rest/$R{servletClassSimple}.java"</js>
-                               },
-                               aside={
-                                       <js>"&lt;div style='max-width:400px' 
class='text'&gt;"</js>,
-                                       <js>"   &lt;p&gt;This is an example of 
a 'router' page that serves as a jumping-off point to child 
resources.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;Resources can be 
nested arbitrarily deep through router pages.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;Note the &lt;span 
class='link'&gt;options&lt;/span&gt; link provided that lets you see the 
generated swagger doc for this page.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;Also note the &lt;span 
class='link'&gt;sources&lt;/span&gt; link on these pages to view the source 
code for the page.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;All content on pages 
in the UI are serialized POJOs.  In this case, it's a serialized array of beans 
with 2 properties, 'name' and 'description'.&lt;/p&gt;"</js>,
-                                       <js>"   &lt;p&gt;Other features (such 
as this aside) are added through annotations.&lt;/p&gt;"</js>,
-                                       <js>"&lt;/div&gt;"</js>
-                               }
-                       ),
-                       children={
-                               HelloWorldResource.<jk>class</jk>,
-                               PetStoreResource.<jk>class</jk>,
-                               DtoExamples.<jk>class</jk>,
-                               ConfigResource.<jk>class</jk>,
-                               LogsResource.<jk>class</jk>,
-                               ShutdownResource.<jk>class</jk>
-                       }
-               )
-               <ja>@SerializerConfig</ja>(
-                       <jc>// For testing purposes, we want to use single 
quotes in all the serializers so it's easier to do simple
-                       // String comparisons.</jc>
-                       quoteChar=<js>"'"</js>
-               )
-               <jk>public class</jk> RootResources <jk>extends</jk> 
BasicRestServletGroup <jk>implements</jk> BasicUniversalConfig {
-                       <jc>// No code</jc>
-               }
-                       </p>
-               <li>
-                       <l>juneau.cfg</l> - The configuration file. 
-                       <br>Contains various useful settings.
-                       <br>Can be used for your own resource configurations.
-                       <br>Note that the Jetty configuration is not present.
-                       <br>Also it's located in the classpath so that our 
microservice can be built as a single executable jar. 
-                       <br><br>
-                       <p class='bini'>
-               
<cc>#=======================================================================================================================
-               # Basic configuration file for REST microservices
-               # Subprojects can use this as a starting point.
-               
#=======================================================================================================================</cc>
-               
-               
<cc>#=======================================================================================================================
-               # REST settings
-               
#=======================================================================================================================</cc>
-               <cs>[REST]</cs>
-               
-               <cc># URL mappings to static files in the working directory or 
classpath.</cc>
-               <ck>staticFiles</ck> = htdocs:files/htdocs
-               
-               <cc># Stylesheet to use for HTML views.</cc>
-               <ck>theme</ck> = <cv>servlet:/htdocs/themes/devops.css</cv>
-               
-               <ck>headerIcon</ck> = <cv>servlet:/htdocs/images/juneau.png</cv>
-               <ck>headerLink</ck> = <cv>http://juneau.apache.org</cv>
-               <ck>footerIcon</ck> = <cv>servlet:/htdocs/images/asf.png</cv>
-               <ck>footerLink</ck> = <cv>http://www.apache.org</cv>
-               
-               <ck>favicon</ck> = <cv>$C{REST/headerIcon}</cv>
-               <ck>header</ck> = 
-                       <cv>&lt;a href='$U{$C{REST/headerLink}}'&gt;
-                               &lt;img src='$U{$C{REST/headerIcon}}' 
style='position:absolute;top:5;right:5;background-color:transparent;height:30px'/&gt;
-                       &lt;/a&gt;</cv>
-               <ck>footer</ck> = 
-                       <cv>&lt;a href='$U{$C{REST/footerLink}}'&gt;
-                               &lt;img src='$U{$C{REST/footerIcon}}' 
style='float:right;padding-right:20px;height:32px'/&gt;
-                       &lt;/a&gt;</cv>
-               </p>
-       </ul>
-       <p>
-               At this point, you're ready to start the microservice from your 
workspace.
-       </p>
-</div>
-</div><!-- END: 19.1 - juneau-examples-rest-springboot.jers.Installing -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest-springboot.jers.Running' 
id='juneau-examples-rest-springboot.jers.Running'>19.2 - Running in 
Eclipse</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 19.2 - 
juneau-examples-rest-springboot.jers.Running -->
-<div class='topic'>
-       <p>
-               The <l>jers.launch</l> file is already provided to allow you to 
quickly start
-               your new microservice.
-       </p>
-       <p>
-               Go to <b>Run -> Run Configurations -> Java Application -> 
juneau-examples-rest-springboot</b> and click <b>Run</b>.
-               In your console view, you should see the following output:
-       </p>
-       <p class='bconsole'>
-         .   ____          _            __ _ _
-        /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
-       ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
-        \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
-         '  |____| .__|_| |_|_| |_\__, | / / / /
-        =========|_|==============|___/=/_/_/_/
-        :: Spring Boot ::        (v2.0.1.RELEASE)
-       ...
-       INFO: Tomcat started on port(s): 8080 (http) with context path ''
-       Dec 21, 2012 12:30:00 AM org.springframework.boot.StartupInfoLogger 
logStarted
-       INFO: Started App in 1.999 seconds (JVM running for 2.999)
-       </p>
-       <p>
-               Now open your browser and point to 
<l>http://localhost:5000</l>.  
-               You should see the following:
-       </p>
-       <p class='bcode w400'>
-       http://localhost:5000
-       </p>                    
-       <img class='bordered w400' src='doc-files/jers.Running.1.png'>
-</div>
-</div><!-- END: 19.2 - juneau-examples-rest-springboot.jers.Running -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest-springboot.jers.Building' 
id='juneau-examples-rest-springboot.jers.Building'>19.3 - Building and Running 
from Command-Line</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 19.3 - 
juneau-examples-rest-springboot.jers.Building -->
-<div class='topic'>
-       <p>
-               The <l>pom.xml</l> file is a basic Maven build script for 
creating your microservice
-               as an executable uber-jar.
-       </p>
-       <p>
-               The easiest way to build your microservice is to run the 
following from the project root.
-       </p>
-       <p class='bconsole'>
-       mvn clean install
-       </p>
-       <p>
-               Your <c>target</c> directory should now contain the following 
files:
-       </p>
-       <ul>
-               <li><c>juneau-examples-rest-springboot-1.0.jar</c>
-       </ul>
-       <p>
-               To start from a command line, run the following command from 
inside your <c>target</c> directory:
-       </p>
-       <p class='bconsole'>
-       java -jar juneau-examples-rest-springboot-1.0.jar
-       </p>
-       <p>
-               You should see the following console output:
-       </p>
-       <p class='bconsole'>
-         .   ____          _            __ _ _
-        /\\ / ___'_ __ _ _(_)_ __  __ _ \ \ \ \
-       ( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
-        \\/  ___)| |_)| | | | | || (_| |  ) ) ) )
-         '  |____| .__|_| |_|_| |_\__, | / / / /
-        =========|_|==============|___/=/_/_/_/
-        :: Spring Boot ::        (v2.0.1.RELEASE)
-       ...
-       INFO: Tomcat started on port(s): 8080 (http) with context path ''
-       Dec 21, 2012 12:30:00 AM org.springframework.boot.StartupInfoLogger 
logStarted
-       INFO: Started App in 1.999 seconds (JVM running for 2.999)
-       </p>
-</div>
-</div><!-- END: 19.3 - juneau-examples-rest-springboot.jers.Building -->
-
-<!-- 
====================================================================================================
 -->
-
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-examples-rest-springboot.jers.DeployingToHeroku' 
id='juneau-examples-rest-springboot.jers.DeployingToHeroku'>19.4 - Deploying to 
Heroku</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 19.4 - 
juneau-examples-rest-springboot.jers.DeployingToHeroku -->
-<div class='topic'>
-       <p>
-               <a href='https://www.heroku.com'>Heroku</a> is a 
platform-as-a-service that allows applications to be quickly hosted
-               in the cloud.  
-               The <l>juneau-examples-rest-springboot</l> project contains 
additional metadata files for quickly
-               deploying and running the examples in Heroku using free 
services. 
-       </p>
-       <ul class='spaced-list'>
-               <li>
-                       <l>app.json</l>
-                       <br><br>
-                               This class provides basic metadata information 
to Heroku about our application.
-                       <br><br>
-                       <p class='bjson'>
-       {
-               <jok>"name"</jok>: <jov>"Start on Heroku: Juneau REST 
Examples"</jov>,
-               <jok>"description"</jok>: <jov>"Deployable REST examples to 
Heroku."</jov>
-       }
-                       </p>
-               <li>
-                       <l>Procfile</l>
-                       <br><br>
-                               This class tells Heroku how to deploy our 
application using the Web dyno.
-                       <br><br>
-                       <p class='bcode'>
-       web: java -jar target/juneau-examples-rest-springboot-8.0.0-SNAPSHOT.jar
-                       </p>
-               <li>
-                       <l>settings.xml</l>             
-                       <br><br>This is an optional Maven settings file that 
points to both the main Maven repo in
-                       addition to the Apache snapshots repo if you happen to 
be using a snapshot version of Juneau.
-       </ul>
-       <p>
-               You'll need to sign up for an account on Heroku. 
-               Afterwards, you can go to the apps page to create a new 
application:
-       </p>
-       <p class='bcode w1000'>
-       https://dashboard.heroku.com/apps
-       </p>
-       <img class='bordered w1000' src='doc-files/jers.Heroku.1.png'>
-       
-       <p>
-               Click the <l>New</l> button to create a new app, give it a 
unique name:
-       </p>
-       <p class='bcode w1000'>
-       https://dashboard.heroku.com/new-app
-       </p>
-       <img class='bordered w1000' src='doc-files/jers.Heroku.2.png'>
-       
-       <p>
-               After clicking the <l>Create app</l> button, you should see 
this page:
-       </p>
-       <p class='bcode w1000'>
-       https://dashboard.heroku.com/apps/juneau-examples-rest/deploy/heroku-git
-       </p>
-       <img class='bordered w1000' src='doc-files/jers.Heroku.3.png'>
-       
-       <p>
-               For this example, we'll use the <l>Heroku Git</l> option for 
deploying our application.
-               Follow the instructions for installing the Heroku CLI and 
logging into Heroku:
-       </p>
-       <p class='bcode w1000'>
-       https://dashboard.heroku.com/apps/juneau-examples-rest/deploy/heroku-git
-       </p>
-       <img class='bordered w1000' src='doc-files/jers.Heroku.4.png'>
-       
-       <p>
-               Next, run the following commands to cd into our Eclipse project 
and initialize it as a local git repo:
-       </p>
-       <p class='bconsole'>
-       $ cd juneau-examples-rest-springboot/
-       $ git init
-       </p>
-       <h5 class='figure'>Output</h5>
-       <p class='bconsole'>
-       $ cd juneau-examples-rest-springboot/
-       $ git init
-       Initialized empty Git repository in 
/.../juneau-examples-rest-springboot/.git/
-       </p>
-       
-       <p>
-               Next, run the following command to link our project to the 
Heroku app:
-       </p>
-       <p class='bconsole'>
-       $ heroku git:remote -a juneau-examples-rest
-       </p>
-       <h5 class='figure'>Output</h5>
-       <p class='bconsole'>
-       $ heroku git:remote -a juneau-examples-rest
-       set git remote heroku to https://git.heroku.com/juneau-examples-rest.git
-       </p>
-       
-       <p>
-               Next, run the following commands to add our files to the git 
repo and push to the Heroku master branch:
-       </p>
-       <p class='bconsole'>
-       $ git add .
-       $ git commit -am "Initial deploy"
-       $ git push heroku master
-       </p>
-       <h5 class='figure'>Output</h5>
-       <p class='bconsole'>
-       $ git add .
-       master (root-commit) 7c94cb9] Initial deploy
-        123 files changed, 11986 insertions(+)
-       Counting objects: 127, done.
-       $ git commit -am "Initial deploy"
-       $ git push heroku master
-       Delta compression using up to 8 threads.
-       Compressing objects: 100% (113/113), done.
-       Writing objects: 100% (127/127), 363.91 KiB | 21.41 MiB/s, done.
-       ...
-       remote: -----> Compressing...
-       remote:        Done: 85.9M
-       remote: -----> Launching...
-       remote:        Released v3
-       remote:        https://juneau-examples-rest.herokuapp.com/ deployed to 
Heroku
-       remote: 
-       remote: Verifying deploy... done.
-       To https://git.heroku.com/juneau-examples-rest.git
-        * [new branch]      master -> master
-       </p>
-       <p>
-               If no errors were shown, then our application should now be 
live.
-               You can click on the <l>Open app</l> button to open the 
examples application in a browser:
-       </p>
-       <img class='bordered w400' src='doc-files/jers.Heroku.5.png'>
-       
-       <p>
-               If everything worked, your browser should now be loaded with 
our example REST app:
-       </p>
-       <p class='bcode w1000'>
-       https://juneau-examples-rest.herokuapp.com
-       </p>
-       <img class='bordered w1000' src='doc-files/jers.Heroku.6.png'>
 </div>
-</div><!-- END: 19.4 - juneau-examples-rest-springboot.jers.DeployingToHeroku 
-->
-</div><!-- END: 19 - juneau-examples-rest-springboot -->
+</div><!-- END: 18 - juneau-examples-rest-jetty -->
 
 <!-- 
====================================================================================================
 -->
 
-<h2 class='topic' onclick='toggle(this)'><a href='#juneau-petstore' 
id='juneau-petstore'>20 - juneau-pestore</a><span class='update'>created: 
8.2.0, <b><red>todo</red></b></span></h2>
-<div class='topic'><!-- START: 20 - juneau-petstore -->
+<h2 class='topic' onclick='toggle(this)'><a href='#juneau-petstore' 
id='juneau-petstore'>19 - juneau-pestore</a><span class='update'>created: 
8.2.0, <b><red>todo</red></b></span></h2>
+<div class='topic'><!-- START: 19 - juneau-petstore -->
 <div class='topic'>
        <p>
                TODO
@@ -29350,8 +27937,8 @@
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-petstore.jp.Installing' id='juneau-petstore.jp.Installing'>20.1 - 
Installing in Eclipse</a><span class='update'>created: 8.2.0, 
<b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 20.1 - juneau-petstore.jp.Installing -->
+<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-petstore.jp.Installing' id='juneau-petstore.jp.Installing'>19.1 - 
Installing in Eclipse</a><span class='update'>created: 8.2.0, 
<b><red>todo</red></b></span></h3>
+<div class='topic'><!-- START: 19.1 - juneau-petstore.jp.Installing -->
 <div class='topic'>
        <p>
                How to import Petstore to Eclipse or Spring Tool Suite: <br><br>
@@ -29363,12 +27950,12 @@
                </ol>
        </p>            
 </div>
-</div><!-- END: 20.1 - juneau-petstore.jp.Installing -->
+</div><!-- END: 19.1 - juneau-petstore.jp.Installing -->
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a href='#juneau-petstore.jp.Running' 
id='juneau-petstore.jp.Running'>20.2 - Running Petstore manually</a><span 
class='update'>created: 8.2.0, <b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 20.2 - juneau-petstore.jp.Running -->
+<h3 class='topic' onclick='toggle(this)'><a href='#juneau-petstore.jp.Running' 
id='juneau-petstore.jp.Running'>19.2 - Running Petstore manually</a><span 
class='update'>created: 8.2.0, <b><red>todo</red></b></span></h3>
+<div class='topic'><!-- START: 19.2 - juneau-petstore.jp.Running -->
 <div class='topic'>
        <p>
                        How to run Petstore --Java Backend-- in Eclipse or 
Spring Tool Suite: <br><br>
@@ -29386,12 +27973,12 @@
                </ol>
        </p>
 </div>
-</div><!-- END: 20.2 - juneau-petstore.jp.Running -->
+</div><!-- END: 19.2 - juneau-petstore.jp.Running -->
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-petstore.jp.Building' id='juneau-petstore.jp.Building'>20.3 - 
Building and Running from Command-Line (Using Dockerfiles)</a><span 
class='update'>created: 8.2.0, <b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 20.3 - juneau-petstore.jp.Building -->
+<h3 class='topic' onclick='toggle(this)'><a 
href='#juneau-petstore.jp.Building' id='juneau-petstore.jp.Building'>19.3 - 
Building and Running from Command-Line (Using Dockerfiles)</a><span 
class='update'>created: 8.2.0, <b><red>todo</red></b></span></h3>
+<div class='topic'><!-- START: 19.3 - juneau-petstore.jp.Building -->
 <div class='topic'>
        <p>
                        How to build and run Petstore using Docker: <br>
@@ -29406,12 +27993,12 @@
                </ol>
        </p>
 </div>
-</div><!-- END: 20.3 - juneau-petstore.jp.Building -->
+</div><!-- END: 19.3 - juneau-petstore.jp.Building -->
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a href='#juneau-petstore.jp.App' 
id='juneau-petstore.jp.App'>20.4 - About Petstore App</a><span 
class='update'>created: 8.2.0, <b><red>todo</red></b></span></h3>
-<div class='topic'><!-- START: 20.4 - juneau-petstore.jp.App -->
+<h3 class='topic' onclick='toggle(this)'><a href='#juneau-petstore.jp.App' 
id='juneau-petstore.jp.App'>19.4 - About Petstore App</a><span 
class='update'>created: 8.2.0, <b><red>todo</red></b></span></h3>
+<div class='topic'><!-- START: 19.4 - juneau-petstore.jp.App -->
 <div class='topic'>
        <div style="width: 70%;">
            <h3 style="color: blue;">
@@ -29474,13 +28061,13 @@
        
        </div>
 </div>
-</div><!-- END: 20.4 - juneau-petstore.jp.App -->
-</div><!-- END: 20 - juneau-petstore -->
+</div><!-- END: 19.4 - juneau-petstore.jp.App -->
+</div><!-- END: 19 - juneau-petstore -->
 
 <!-- 
====================================================================================================
 -->
 
-<h2 class='topic' onclick='toggle(this)'><a href='#Glossaries' 
id='Glossaries'>21 - Glossaries</a><span class='update'>created: 
8.1.3</span></h2>
-<div class='topic'><!-- START: 21 - Glossaries -->
+<h2 class='topic' onclick='toggle(this)'><a href='#Glossaries' 
id='Glossaries'>20 - Glossaries</a><span class='update'>created: 
8.1.3</span></h2>
+<div class='topic'><!-- START: 20 - Glossaries -->
 <div class='topic'>
        <p>
        </p>
@@ -29488,8 +28075,8 @@
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a 
href='#Glossaries.g.LanguageSupport' id='Glossaries.g.LanguageSupport'>21.1 - 
Language Support</a><span class='update'>created: 8.1.3</span></h3>
-<div class='topic'><!-- START: 21.1 - Glossaries.g.LanguageSupport -->
+<h3 class='topic' onclick='toggle(this)'><a 
href='#Glossaries.g.LanguageSupport' id='Glossaries.g.LanguageSupport'>20.1 - 
Language Support</a><span class='update'>created: 8.1.3</span></h3>
+<div class='topic'><!-- START: 20.1 - Glossaries.g.LanguageSupport -->
 <div class='topic'>
        <table class='styled w1000'>
                <tr>
@@ -29623,12 +28210,12 @@
                </tr>
        </table>
 </div>
-</div><!-- END: 21.1 - Glossaries.g.LanguageSupport -->
+</div><!-- END: 20.1 - Glossaries.g.LanguageSupport -->
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a href='#Glossaries.g.Annotations' 
id='Glossaries.g.Annotations'>21.2 - Annotations</a><span 
class='update'>created: 8.1.3</span></h3>
-<div class='topic'><!-- START: 21.2 - Glossaries.g.Annotations -->
+<h3 class='topic' onclick='toggle(this)'><a href='#Glossaries.g.Annotations' 
id='Glossaries.g.Annotations'>20.2 - Annotations</a><span 
class='update'>created: 8.1.3</span></h3>
+<div class='topic'><!-- START: 20.2 - Glossaries.g.Annotations -->
 <h5 class='topic'>Serialization Annotations (used to modify how artifacts are 
marshalled)</h5>
 <div class='topic'>
        <table class='styled w1000'>
@@ -29948,13 +28535,13 @@
                </tr>
        </table>
 </div>
-</div><!-- END: 21.2 - Glossaries.g.Annotations -->
-</div><!-- END: 21 - Glossaries -->
+</div><!-- END: 20.2 - Glossaries.g.Annotations -->
+</div><!-- END: 20 - Glossaries -->
 
 <!-- 
====================================================================================================
 -->
 
-<h2 class='topic' onclick='toggle(this)'><a href='#Security' id='Security'>22 
- Security Best-Practices</a></h2>
-<div class='topic'><!-- START: 22 - Security -->
+<h2 class='topic' onclick='toggle(this)'><a href='#Security' id='Security'>21 
- Security Best-Practices</a></h2>
+<div class='topic'><!-- START: 21 - Security -->
 <div class='topic'>
        <p>
                Security is always an ongoing concern in any library.  
@@ -29967,8 +28554,8 @@
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a href='#Security.s.Marshall' 
id='Security.s.Marshall'>22.1 - juneau-marshall</a><span 
class='update'>created: 8.2.0</span></h3>
-<div class='topic'><!-- START: 22.1 - Security.s.Marshall -->
+<h3 class='topic' onclick='toggle(this)'><a href='#Security.s.Marshall' 
id='Security.s.Marshall'>21.1 - juneau-marshall</a><span 
class='update'>created: 8.2.0</span></h3>
+<div class='topic'><!-- START: 21.1 - Security.s.Marshall -->
 <h5 class='topic'>Demarshalling vulnerabilities</h5>
 <div class='topic'>
        <p>
@@ -30038,12 +28625,12 @@
                        As of <c>7.0.1</c>, no known security vulnerabilities 
exist that affect Juneau at this time.
        </ul>
 </div>
-</div><!-- END: 22.1 - Security.s.Marshall -->
+</div><!-- END: 21.1 - Security.s.Marshall -->
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a href='#Security.s.Svl' 
id='Security.s.Svl'>22.2 - juneau-svl</a><span class='update'>created: 
8.2.0</span></h3>
-<div class='topic'><!-- START: 22.2 - Security.s.Svl -->
+<h3 class='topic' onclick='toggle(this)'><a href='#Security.s.Svl' 
id='Security.s.Svl'>21.2 - juneau-svl</a><span class='update'>created: 
8.2.0</span></h3>
+<div class='topic'><!-- START: 21.2 - Security.s.Svl -->
 <div class='topic'>
        <p>
                Care must be used when defining new {@link 
org.apache.juneau.svl.Var Vars} using the SVL API since mistakes 
@@ -30090,12 +28677,12 @@
                methods to prevent recursive handling of variables.
        </p>
 </div>
-</div><!-- END: 22.2 - Security.s.Svl -->
+</div><!-- END: 21.2 - Security.s.Svl -->
 
 <!-- 
====================================================================================================
 -->
 
-<h3 class='topic' onclick='toggle(this)'><a href='#Security.s.Rest' 
id='Security.s.Rest'>22.3 - juneau-rest-server</a><span class='update'>created: 
8.2.0</span></h3>
-<div class='topic'><!-- START: 22.3 - Security.s.Rest -->
+<h3 class='topic' onclick='toggle(this)'><a href='#Security.s.Rest' 
id='Security.s.Rest'>21.3 - juneau-rest-server</a><span class='update'>created: 
8.2.0</span></h3>
+<div class='topic'><!-- START: 21.3 - Security.s.Rest -->
 <div class='topic'>
        <p>
                Denial of service attacks can be alleviated through the {@link 
org.apache.juneau.rest.annotation.Rest#maxInput() maxInput()}
@@ -30109,8 +28696,8 @@
                RDF, you may want to consider lowering the max-input value 
above.
        </p>
 </div>
-</div><!-- END: 22.3 - Security.s.Rest -->
-</div><!-- END: 22 - Security -->
+</div><!-- END: 21.3 - Security.s.Rest -->
+</div><!-- END: 21 - Security -->
 
 
 <h2 class='topic' onclick='toggle(this)'><a href='#ReleaseNotes' 
id='ReleaseNotes'>Release Notes</a></h2>
diff --git a/juneau-doc/src/main/javadoc/resources/docs.txt 
b/juneau-doc/src/main/javadoc/resources/docs.txt
index 0de9e442e..a4e213207 100644
--- a/juneau-doc/src/main/javadoc/resources/docs.txt
+++ b/juneau-doc/src/main/javadoc/resources/docs.txt
@@ -84,20 +84,6 @@ jd.Atom = #juneau-dto.jd.Atom, Overview > juneau-dto > Atom
 jd.Html5 = #juneau-dto.jd.Html5, Overview > juneau-dto > HTML5
 jd.Swagger = #juneau-dto.jd.Swagger, Overview > juneau-dto > Swagger
 jd.SwaggerUi = #juneau-dto.jd.SwaggerUi, Overview > juneau-dto > Swagger UI
-jec.Examples = #juneau-examples-core.jec.Examples, Overview > 
juneau-examples-core > Examples
-jec.Installing = #juneau-examples-core.jec.Installing, Overview > 
juneau-examples-core > Installing in Eclipse
-jer.ConfigResource = #juneau-examples-rest.jer.ConfigResource, Overview > 
juneau-examples-rest > ConfigResource
-jer.DtoExamples = #juneau-examples-rest.jer.DtoExamples, Overview > 
juneau-examples-rest > DtoExamples
-jer.HelloWorldResource = #juneau-examples-rest.jer.HelloWorldResource, 
Overview > juneau-examples-rest > HelloWorldResource
-jer.LogsResource = #juneau-examples-rest.jer.LogsResource, Overview > 
juneau-examples-rest > LogsResource
-jer.RootResources = #juneau-examples-rest.jer.RootResources, Overview > 
juneau-examples-rest > RootResources
-jerj.Building = #juneau-examples-rest-jetty.jerj.Building, Overview > 
juneau-examples-rest-jetty > Building and Running from Command-Line
-jerj.Installing = #juneau-examples-rest-jetty.jerj.Installing, Overview > 
juneau-examples-rest-jetty > Installing in Eclipse
-jerj.Running = #juneau-examples-rest-jetty.jerj.Running, Overview > 
juneau-examples-rest-jetty > Running in Eclipse
-jers.Building = #juneau-examples-rest-springboot.jers.Building, Overview > 
juneau-examples-rest-springboot > Building and Running from Command-Line
-jers.DeployingToHeroku = 
#juneau-examples-rest-springboot.jers.DeployingToHeroku, Overview > 
juneau-examples-rest-springboot > Deploying to Heroku
-jers.Installing = #juneau-examples-rest-springboot.jers.Installing, Overview > 
juneau-examples-rest-springboot > Installing in Eclipse
-jers.Running = #juneau-examples-rest-springboot.jers.Running, Overview > 
juneau-examples-rest-springboot > Running in Eclipse
 jm.AutoSwaps = #juneau-marshall.jm.Swaps.jm.AutoSwaps, Overview > 
juneau-marshall > Swaps > Auto-detected swaps
 jm.BasicHtmlDocTemplate = 
#juneau-marshall.jm.HtmlDetails.jm.BasicHtmlDocTemplate, Overview > 
juneau-marshall > HTML Details > BasicHtmlDocTemplate
 jm.BeanAnnotation = #juneau-marshall.jm.JavaBeansSupport.jm.BeanAnnotation, 
Overview > juneau-marshall > Java Beans Support > @Bean Annotation
@@ -266,7 +252,6 @@ jrs.Encoders = #juneau-rest-server.jrs.Encoders, Overview > 
juneau-rest-server >
 jrs.ExecutionStatistics = #juneau-rest-server.jrs.ExecutionStatistics, 
Overview > juneau-rest-server > REST method execution statistics
 jrs.Guards = #juneau-rest-server.jrs.Guards, Overview > juneau-rest-server > 
Guards
 jrs.HandlingFormPosts = #juneau-rest-server.jrs.HandlingFormPosts, Overview > 
juneau-rest-server > Form Posts
-jrs.HelloWorldExample = #juneau-rest-server.jrs.HelloWorldExample, Overview > 
juneau-rest-server > Hello World Example
 jrs.HtmlBeans = #juneau-rest-server.jrs.HtmlBeans, Overview > 
juneau-rest-server > Using with HTML Beans
 jrs.HtmlDocAnnotation = #juneau-rest-server.jrs.HtmlDocAnnotation, Overview > 
juneau-rest-server > @HtmlDocConfig
 jrs.HtmlPredefinedWidgets = 
#juneau-rest-server.jrs.HtmlDocAnnotation.jrs.HtmlPredefinedWidgets, Overview > 
juneau-rest-server > @HtmlDocConfig > Predefined Widgets
@@ -289,6 +274,7 @@ jrs.Marshalling = #juneau-rest-server.jrs.Marshalling, 
Overview > juneau-rest-se
 jrs.Matchers = #juneau-rest-server.jrs.RestOpAnnotatedMethods.jrs.Matchers, 
Overview > juneau-rest-server > @RestOp-Annotated Methods > Matchers
 jrs.OtherNotes = #juneau-rest-server.jrs.OtherNotes, Overview > 
juneau-rest-server > Other Notes
 jrs.OverloadingHttpMethods = 
#juneau-rest-server.jrs.RestOpAnnotatedMethods.jrs.OverloadingHttpMethods, 
Overview > juneau-rest-server > @RestOp-Annotated Methods > Overloading HTTP 
Methods
+jrs.Overview = #juneau-rest-server.jrs.Overview, Overview > juneau-rest-server 
> Overview
 jrs.PartMarshallers = #juneau-rest-server.jrs.HttpParts.jrs.PartMarshallers, 
Overview > juneau-rest-server > HTTP Parts > Part Marshallers
 jrs.PathPatterns = 
#juneau-rest-server.jrs.RestOpAnnotatedMethods.jrs.PathPatterns, Overview > 
juneau-rest-server > @RestOp-Annotated Methods > Path Patterns
 jrs.PathVariables = 
#juneau-rest-server.jrs.AnnotatedClasses.jrs.PathVariables, Overview > 
juneau-rest-server > @Rest-Annotated Classes > Path Variables
@@ -319,7 +305,6 @@ juneau-dto = #juneau-dto, Overview > juneau-dto
 juneau-examples-core = #juneau-examples-core, Overview > juneau-examples-core
 juneau-examples-rest = #juneau-examples-rest, Overview > juneau-examples-rest
 juneau-examples-rest-jetty = #juneau-examples-rest-jetty, Overview > 
juneau-examples-rest-jetty
-juneau-examples-rest-springboot = #juneau-examples-rest-springboot, Overview > 
juneau-examples-rest-springboot
 juneau-marshall = #juneau-marshall, Overview > juneau-marshall
 juneau-marshall-rdf = #juneau-marshall-rdf, Overview > juneau-marshall-rdf
 juneau-microservice-core = #juneau-microservice-core, Overview > 
juneau-microservice-core
diff --git a/juneau-doc/src/main/javadoc/resources/fragments/toc.html 
b/juneau-doc/src/main/javadoc/resources/fragments/toc.html
index 0bae7aa61..0d162dbb1 100644
--- a/juneau-doc/src/main/javadoc/resources/fragments/toc.html
+++ b/juneau-doc/src/main/javadoc/resources/fragments/toc.html
@@ -206,7 +206,7 @@
        </ol>
        <li><p class='toc2'><a class='doclink' 
href='{OVERVIEW_URL}#juneau-rest-server'>juneau-rest-server</a><span 
class='update'>updated: <b>9.0.0</b></span></p>
        <ol>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-rest-server.jrs.HelloWorldExample'>Hello World 
Example</a><span class='update'>updated: <b>9.0.0</b></span></p>
+               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-rest-server.jrs.Overview'>Overview</a><span 
class='update'>created: <b>9.0.0</b></span></p>
                <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-rest-server.jrs.AnnotatedClasses'>@Rest-Annotated 
Classes</a><span class='update'>updated: 8.1.2,<b>9.0.0</b></span></p>
                <ol>
                        <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-rest-server.jrs.AnnotatedClasses.jrs.PredefinedClasses'>Predefined
 Classes</a><span class='update'>updated: <b>9.0.0</b></span></p>
@@ -362,31 +362,8 @@
                <li><p><a class='doclink' 
href='{OVERVIEW_URL}#my-springboot-microservice.msm.Building'>Building and 
Running from Command-Line</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></p>
        </ol>
        <li><p class='toc2'><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-core'>juneau-examples-core</a><span 
class='update'>updated: 8.0.0</span></p>
-       <ol>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-core.jec.Installing'>Installing in 
Eclipse</a><span class='update'>created: 8.0.0</span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-core.jec.Examples'>Examples</a><span 
class='update'>created: 8.0.0</span></p>
-       </ol>
        <li><p class='toc2'><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest'>juneau-examples-rest</a><span 
class='update'>updated: 8.0.0, <b><red>todo</red></b></span></p>
-       <ol>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest.jer.RootResources'>RootResources</a><span
 class='update'>updated: 8.0.0,8.1.0, <b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest.jer.HelloWorldResource'>HelloWorldResource</a><span
 class='update'>updated: 8.0.0, <b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest.jer.DtoExamples'>DtoExamples</a><span 
class='update'>created: 8.0.0, updated: 8.1.0, <b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest.jer.ConfigResource'>ConfigResource</a><span
 class='update'><b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest.jer.LogsResource'>LogsResource</a><span
 class='update'><b><red>todo</red></b></span></p>
-       </ol>
        <li><p class='toc2'><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest-jetty'>juneau-examples-rest-jetty</a><span
 class='update'>created: 8.0.0, deprecated: 8.1.2</span></p>
-       <ol>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest-jetty.jerj.Installing'>Installing in 
Eclipse</a><span class='update'>created: 8.0.0, deprecated: 8.1.2, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest-jetty.jerj.Running'>Running in 
Eclipse</a><span class='update'>created: 8.0.0, deprecated: 8.1.2, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest-jetty.jerj.Building'>Building and 
Running from Command-Line</a><span class='update'>created: 8.0.0, deprecated: 
8.1.2, <b><red>todo</red></b></span></p>
-       </ol>
-       <li><p class='toc2'><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest-springboot'>juneau-examples-rest-springboot</a><span
 class='update'>created: 8.0.0, <b><red>todo</red></b></span></p>
-       <ol>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest-springboot.jers.Installing'>Installing
 in Eclipse</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest-springboot.jers.Running'>Running in 
Eclipse</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest-springboot.jers.Building'>Building 
and Running from Command-Line</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></p>
-               <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-examples-rest-springboot.jers.DeployingToHeroku'>Deploying
 to Heroku</a><span class='update'>created: 8.0.0, 
<b><red>todo</red></b></span></p>
-       </ol>
        <li><p class='toc2'><a class='doclink' 
href='{OVERVIEW_URL}#juneau-petstore'>juneau-pestore</a><span 
class='update'>created: 8.2.0, <b><red>todo</red></b></span></p>
        <ol>
                <li><p><a class='doclink' 
href='{OVERVIEW_URL}#juneau-petstore.jp.Installing'>Installing in 
Eclipse</a><span class='update'>created: 8.2.0, 
<b><red>todo</red></b></span></p>

Reply via email to