You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@juneau.apache.org by ja...@apache.org on 2022/07/02 12:45:53 UTC
[juneau-website] branch asf-site updated: Update about page.
This is an automated email from the ASF dual-hosted git repository.
jamesbognar pushed a commit to branch asf-site
in repository https://gitbox.apache.org/repos/asf/juneau-website.git
The following commit(s) were added to refs/heads/asf-site by this push:
new 61e10dbd2 Update about page.
61e10dbd2 is described below
commit 61e10dbd2a3fa1706987c8b84db0766b34620e23
Author: JamesBognar <ja...@salesforce.com>
AuthorDate: Sat Jul 2 08:45:34 2022 -0400
Update about page.
---
content/about.html | 83 ++++++++++++++++++++++++++++++++++++++++++++--------
templates/about.html | 83 ++++++++++++++++++++++++++++++++++++++++++++--------
2 files changed, 140 insertions(+), 26 deletions(-)
diff --git a/content/about.html b/content/about.html
index baa8ebec3..aaac328fe 100644
--- a/content/about.html
+++ b/content/about.html
@@ -42,39 +42,39 @@
</td>
</tr>
<tr class='dark bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html##juneau-marshall-rdf'>juneau-marshall-rdf</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html#juneau-marshall-rdf'>juneau-marshall-rdf</a></td>
<td style='padding:10px;'>
Extended marshalling support for RDF/XML, N3, N-Tuple, and Turtle.
</td>
</tr>
<tr class='dark bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html##juneau-dto'>juneau-dto</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html#juneau-dto'>juneau-dto</a></td>
<td style='padding:10px;'>
A variety of predefined DTOs for serializing and parsing languages such as HTML5, Swagger and ATOM.
</td>
</tr>
<tr class='dark bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html##juneau-config'>juneau-config</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html#juneau-config'>juneau-config</a></td>
<td style='padding:10px;'>
A sophisticated configuration file API.
</td>
</tr>
<tr class='light bb'>
<td rowspan="3" style='text-align:center;font-weight:bold;padding:20px;' class='code'>juneau-rest</td>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html##juneau-rest-server'>juneau-rest-server</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html#juneau-rest-server'>juneau-rest-server</a></td>
<td style='padding:10px;'>
A universal REST server API for creating Swagger-based self-documenting REST interfaces using POJOs, simply deployed as
one or more top-level servlets in any Servlet 3.1.0+ container.
</td>
</tr>
<tr class='light bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html##juneau-rest-server-springboot'>juneau-rest-server-springboot</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html#juneau-rest-server-springboot'>juneau-rest-server-springboot</a></td>
<td style='padding:10px;'>
Spring Boot integration.
</td>
</tr>
<tr class='light bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html##juneau-rest-client'>juneau-rest-client</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html#juneau-rest-client'>juneau-rest-client</a></td>
<td style='padding:10px;'>
A universal REST client API for interacting with Juneau or 3rd-party REST interfaces using POJOs and proxy interfaces.
</td>
@@ -96,6 +96,69 @@
<h5 class='toc'>Features</h5>
<div class='topic'>
+ <p>
+ The <a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html#juneau-marshall'>juneau-marshall</a> module
+ provides memory-efficient POJO serializing and parsing for 12 languages:
+ </p>
+ <p class='bjava'>
+ | <jc>// A simple bean</jc>
+ | <jk>public class</jk> Person {
+ | <jk>public</jk> String <jf>name</jf> = <js>"John Smith"</js>;
+ | <jk>public int</jk> <jf>age</jf> = 21;
+ | }
+ |
+ | <jc>// Produces:
+ | // "{"name":"John Smith","age":21}"</jc>
+ | String <jv>json</jv> = Json.<jsm>of</jsm>(<jk>new</jk> Person());
+ |
+ | <jc>// Parse back into a bean.</jc>
+ | Person <jv>person</jv> = Json.<jsm>from</jsm>(<jv>json</jv>, Person.<jk>class</jk>);
+ </p>
+ <p>
+ The <a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html#juneau-rest-server'>juneau-rest-server</a>
+ and <a class='doclink' href='http://juneau.apache.org/site/apidocs-9.0.0/overview-summary.html#juneau-rest-client'>juneau-rest-client</a> libraries
+ provide server and client side REST capabilities that can be used by themselves, or together to create
+ simplified yet sophisticated Java-based REST communications layers that completely hide away the complexities
+ of the REST protocol.
+ </p>
+ <p class='bjava'>
+ | <jc>// Server-side endpoint</jc>
+ | <ja>@Rest</ja>(path=<js>"/petstore"</js>)
+ | <jk>public class</jk> PetStore {
+ |
+ | <ja>@RestPost</ja>(path=<js>"/pets"</js>, guards=AdminGuard.<jk>class</jk>)
+ | <jk>public</jk> Ok addPet(
+ | <ja>@Content</ja> CreatePet <jv>createPetBean</jv>,
+ | <ja>@Header</ja>(<js>"E-Tag"</js>) UUID <jv>etag</jv>,
+ | <ja>@Query</ja>(<js>"debug"</js>) <jk>boolean</jk> <jv>debug</jv>
+ | ) <jk>throws</jk> BadRequest, Unauthorized, InternalServerError {
+ | <jc>// Process request.</jc>
+ | <jk>return</jk> Ok.<jsf>OK</jsf>; <jc>// Standard 400-OK response.</jc>
+ | }
+ | }
+ |
+ | <jc>// Client-side Java interface that describes the REST endpoint</jc>
+ | <ja>@Remote</ja>(path=<js>"/petstore"</js>)
+ | <jk>public interface</jk> PetStoreService {
+ |
+ | <ja>@RemotePost</ja>(<js>"/pets"</js>)
+ | Ok addPet(
+ | <ja>@Content</ja> CreatePet <jv>createPet</jv>,
+ | <ja>@Header</ja>(<js>"E-Tag"</js>) UUID <jv>etag</jv>,
+ | <ja>@Query</ja>(<js>"debug"</js>) <jk>boolean</jk> <jv>debug</jv>
+ | ) <jk>throws</jk> BadRequest, Unauthorized, InternalServerError;
+ | }
+ |
+ | <jc>// Use a RestClient with default Simple JSON support and BASIC auth.</jc>
+ | RestClient <jv>client</jv> = RestClient.<jsm>create</jsm>().simpleJson().basicAuth(...).build();
+ |
+ | <jc>// Instantiate our proxy interface.</jc>
+ | PetStore <jv>store</jv> = <jv>client</jv>.getRemote(PetStore.<jk>class</jk>, <js>"http://localhost:10000"</js>);
+ |
+ | <jc>// Use it to create a pet.</jc>
+ | CreatePet <jv>createPet</jv> = <jk>new</jk> CreatePet(<js>"Fluffy"</js>, 9.99);
+ | Pet <jv>pet</jv> = <jv>store</jv>.addPet(<jv>createPet</jv>, UUID.<jsm>randomUUID</jsm>(), <jk>true</jk>);
+ </p>
<ul class='spaced-list'>
<li>
Fast memory-efficient serialization.
@@ -112,13 +175,7 @@
<li>
Lots of up-to-date documentation and examples
<li>
- Minimal library dependencies:
- <ul>
- <li><b>juneau-marshall</b>, <b>juneau-dto</b>, <b>juneau-svl</b>, <b>juneau-config</b> - No external dependencies. Entirely self-contained.
- <li><b>juneau-marshall-rdf</b> - Optional RDF support. Requires Apache Jena 2.7.1+.
- <li><b>juneau-rest-server</b> - Any Servlet 3.1.0+ container.
- <li><b>juneau-rest-client</b> - Apache HttpClient 4.5+.
- </ul>
+ Minimal library dependencies making them optimal for uber-jars
<li>
Built on top of Servlet and Apache HttpClient APIs that allow you to use the newest HTTP/2 features
such as request/response multiplexing and server push.
diff --git a/templates/about.html b/templates/about.html
index 38ef2e86a..cf6bfb868 100644
--- a/templates/about.html
+++ b/templates/about.html
@@ -42,39 +42,39 @@
</td>
</tr>
<tr class='dark bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html##juneau-marshall-rdf'>juneau-marshall-rdf</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html#juneau-marshall-rdf'>juneau-marshall-rdf</a></td>
<td style='padding:10px;'>
Extended marshalling support for RDF/XML, N3, N-Tuple, and Turtle.
</td>
</tr>
<tr class='dark bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html##juneau-dto'>juneau-dto</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html#juneau-dto'>juneau-dto</a></td>
<td style='padding:10px;'>
A variety of predefined DTOs for serializing and parsing languages such as HTML5, Swagger and ATOM.
</td>
</tr>
<tr class='dark bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html##juneau-config'>juneau-config</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html#juneau-config'>juneau-config</a></td>
<td style='padding:10px;'>
A sophisticated configuration file API.
</td>
</tr>
<tr class='light bb'>
<td rowspan="3" style='text-align:center;font-weight:bold;padding:20px;' class='code'>juneau-rest</td>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html##juneau-rest-server'>juneau-rest-server</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html#juneau-rest-server'>juneau-rest-server</a></td>
<td style='padding:10px;'>
A universal REST server API for creating Swagger-based self-documenting REST interfaces using POJOs, simply deployed as
one or more top-level servlets in any Servlet 3.1.0+ container.
</td>
</tr>
<tr class='light bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html##juneau-rest-server-springboot'>juneau-rest-server-springboot</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html#juneau-rest-server-springboot'>juneau-rest-server-springboot</a></td>
<td style='padding:10px;'>
Spring Boot integration.
</td>
</tr>
<tr class='light bb'>
- <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html##juneau-rest-client'>juneau-rest-client</a></td>
+ <td class='code'><a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html#juneau-rest-client'>juneau-rest-client</a></td>
<td style='padding:10px;'>
A universal REST client API for interacting with Juneau or 3rd-party REST interfaces using POJOs and proxy interfaces.
</td>
@@ -96,6 +96,69 @@
<h5 class='toc'>Features</h5>
<div class='topic'>
+ <p>
+ The <a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html#juneau-marshall'>juneau-marshall</a> module
+ provides memory-efficient POJO serializing and parsing for 12 languages:
+ </p>
+ <p class='bjava'>
+ | <jc>// A simple bean</jc>
+ | <jk>public class</jk> Person {
+ | <jk>public</jk> String <jf>name</jf> = <js>"John Smith"</js>;
+ | <jk>public int</jk> <jf>age</jf> = 21;
+ | }
+ |
+ | <jc>// Produces:
+ | // "{"name":"John Smith","age":21}"</jc>
+ | String <jv>json</jv> = Json.<jsm>of</jsm>(<jk>new</jk> Person());
+ |
+ | <jc>// Parse back into a bean.</jc>
+ | Person <jv>person</jv> = Json.<jsm>from</jsm>(<jv>json</jv>, Person.<jk>class</jk>);
+ </p>
+ <p>
+ The <a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html#juneau-rest-server'>juneau-rest-server</a>
+ and <a class='doclink' href='http://juneau.apache.org/site/apidocs-{@property juneauVersion}/overview-summary.html#juneau-rest-client'>juneau-rest-client</a> libraries
+ provide server and client side REST capabilities that can be used by themselves, or together to create
+ simplified yet sophisticated Java-based REST communications layers that completely hide away the complexities
+ of the REST protocol.
+ </p>
+ <p class='bjava'>
+ | <jc>// Server-side endpoint</jc>
+ | <ja>@Rest</ja>(path=<js>"/petstore"</js>)
+ | <jk>public class</jk> PetStore {
+ |
+ | <ja>@RestPost</ja>(path=<js>"/pets"</js>, guards=AdminGuard.<jk>class</jk>)
+ | <jk>public</jk> Ok addPet(
+ | <ja>@Content</ja> CreatePet <jv>createPetBean</jv>,
+ | <ja>@Header</ja>(<js>"E-Tag"</js>) UUID <jv>etag</jv>,
+ | <ja>@Query</ja>(<js>"debug"</js>) <jk>boolean</jk> <jv>debug</jv>
+ | ) <jk>throws</jk> BadRequest, Unauthorized, InternalServerError {
+ | <jc>// Process request.</jc>
+ | <jk>return</jk> Ok.<jsf>OK</jsf>; <jc>// Standard 400-OK response.</jc>
+ | }
+ | }
+ |
+ | <jc>// Client-side Java interface that describes the REST endpoint</jc>
+ | <ja>@Remote</ja>(path=<js>"/petstore"</js>)
+ | <jk>public interface</jk> PetStoreService {
+ |
+ | <ja>@RemotePost</ja>(<js>"/pets"</js>)
+ | Ok addPet(
+ | <ja>@Content</ja> CreatePet <jv>createPet</jv>,
+ | <ja>@Header</ja>(<js>"E-Tag"</js>) UUID <jv>etag</jv>,
+ | <ja>@Query</ja>(<js>"debug"</js>) <jk>boolean</jk> <jv>debug</jv>
+ | ) <jk>throws</jk> BadRequest, Unauthorized, InternalServerError;
+ | }
+ |
+ | <jc>// Use a RestClient with default Simple JSON support and BASIC auth.</jc>
+ | RestClient <jv>client</jv> = RestClient.<jsm>create</jsm>().simpleJson().basicAuth(...).build();
+ |
+ | <jc>// Instantiate our proxy interface.</jc>
+ | PetStore <jv>store</jv> = <jv>client</jv>.getRemote(PetStore.<jk>class</jk>, <js>"http://localhost:10000"</js>);
+ |
+ | <jc>// Use it to create a pet.</jc>
+ | CreatePet <jv>createPet</jv> = <jk>new</jk> CreatePet(<js>"Fluffy"</js>, 9.99);
+ | Pet <jv>pet</jv> = <jv>store</jv>.addPet(<jv>createPet</jv>, UUID.<jsm>randomUUID</jsm>(), <jk>true</jk>);
+ </p>
<ul class='spaced-list'>
<li>
Fast memory-efficient serialization.
@@ -112,13 +175,7 @@
<li>
Lots of up-to-date documentation and examples
<li>
- Minimal library dependencies:
- <ul>
- <li><b>juneau-marshall</b>, <b>juneau-dto</b>, <b>juneau-svl</b>, <b>juneau-config</b> - No external dependencies. Entirely self-contained.
- <li><b>juneau-marshall-rdf</b> - Optional RDF support. Requires Apache Jena 2.7.1+.
- <li><b>juneau-rest-server</b> - Any Servlet 3.1.0+ container.
- <li><b>juneau-rest-client</b> - Apache HttpClient 4.5+.
- </ul>
+ Minimal library dependencies making them optimal for uber-jars
<li>
Built on top of Servlet and Apache HttpClient APIs that allow you to use the newest HTTP/2 features
such as request/response multiplexing and server push.