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 2016/08/22 15:31:15 UTC

incubator-juneau-website git commit: https://issues.apache.org/jira/browse/JUNEAU-14

Repository: incubator-juneau-website
Updated Branches:
  refs/heads/asf-site f0b3b4270 -> 42f2cb3fa


https://issues.apache.org/jira/browse/JUNEAU-14

Project: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/commit/42f2cb3f
Tree: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/tree/42f2cb3f
Diff: http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/diff/42f2cb3f

Branch: refs/heads/asf-site
Commit: 42f2cb3fa73669ffe3d5e3211a53c0053d01d630
Parents: f0b3b42
Author: jamesbognar <ja...@gmail.com>
Authored: Mon Aug 22 11:30:45 2016 -0400
Committer: jamesbognar <ja...@gmail.com>
Committed: Mon Aug 22 11:30:45 2016 -0400

----------------------------------------------------------------------
 content/about.html      | 51 ++++++++++++++++++++++++++++++++++++++++----
 content/sourceCode.html |  2 +-
 2 files changed, 48 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/42f2cb3f/content/about.html
----------------------------------------------------------------------
diff --git a/content/about.html b/content/about.html
index a872002..062bbb4 100644
--- a/content/about.html
+++ b/content/about.html
@@ -87,13 +87,37 @@
 	<jk>int</jk>[] i6 = parser.parse(json, <jk>int</jk>[].<jk>class</jk>);
 	</p>
 	<p>
-		The REST server API allows for annotated REST servlets that automatically support all language types...
+		Above the serializers and parsers, the <code>SerializerGroup</code> and <code>ParserGroup</code> classes allow serializers and parsers 
+		to be retrieved by W3C HTTP <code>Accept</code> and <code>Content-Type</code> values.
+	</p>
+	<p class='bcode'>
+	<jc>// Construct a new serializer group with configuration parameters that get applied to all serializers.</jc>
+	SerializerGroup sg = <jk>new</jk> SerializerGroup()
+		.append(JsonSerializer.<jk>class</jk>, UrlEncodingSerializer.<jk>class</jk>);
+		.setProperty(SerializerContext.<jsf>SERIALIZER_useIndentation</jsf>, <jk>true</jk>)
+		.addTransforms(CalendarTransform.ISO8601DT.<jk>class</jk>);
+
+	<jc>// Find the appropriate serializer by Accept type and serialize our POJO to the specified writer.</jc>
+	sg.getSerializer(<js>"text/invalid, text/json;q=0.8, text/*;q:0.6, *\/*;q=0.0"</js>)
+		.serialize(myPersonObject, myWriter);
+		
+	<jc>// Construct a new parser group with configuration parameters that get applied to all parsers.</jc>
+	ParserGroup pg = <jk>new</jk> ParserGroup()
+		.append(JsonSerializer.<jk>class</jk>, UrlEncodingSerializer.<jk>class</jk>);
+ 		.addTransforms(CalendarTransform.ISO8601DT.<jk>class</jk>);
+
+	Person p = pg.getParser(<js>"text/json"</js>).parse(myReader, Person.<jk>class</jk>);
+	</p>
+	<p>
+		The REST server API builds upon the <code>SerializerGroup</code> and <code>ParserGroup</code> classes 
+		to provide annotated REST servlets that automatically negotiate the HTTP media types and allow the developer
+		to work with POJOs as input and output...
 	</p>
 	<p class='bcode'>
 	<ja>@RestResource</ja>(
 	   path=<js>"/systemProperties"</js>
 	)
-	<jk>public class</jk> SystemPropertiesService <jk>extends</jk> RestServletJenaDefault {
+	<jk>public class</jk> SystemPropertiesService <jk>extends</jk> RestServletDefault {
 	
 	   <jd>/** [OPTIONS /*] - Show resource options. */</jd>
 	   <ja>@RestMethod</ja>(name=<js>"OPTIONS"</js>, path=<js>"/*"</js>)
@@ -129,7 +153,23 @@
 	}
 	</p>
 	<p>
-		The REST client API allows you to easily interact with REST interfaces using POJOs...
+		Since the server API is based on JEE servlets, it can be easily deployed in any JEE environment.
+	</p>
+	<p>
+		Features include:
+	</p> 
+	<ul>
+		<li>Extremely simple debuggability using nothing more than your browser.
+		<li>Self-documenting interface through automatically generated OPTIONS pages.
+		<li>Servlet and method level guards.
+		<li>Pre/post-processing of requests/responses.
+		<li>Client-versioned responses.
+		<li>Configurability through external INI files.
+		<li>Automated error handling.
+		<li>much more!....
+	</ul>
+	<p>
+		The REST client API allows you to access REST interfaces using POJOs...
 	</p>
 	<p class='bcode'>
 	<jc>// Create a reusable JSON client.</jc>
@@ -162,6 +202,9 @@
  	IAddressBook ab = client.getRemoteableProxy(IAddressBook.<jk>class</jk>);
  	ab.createPerson(...);
 	</p>
+	<p>
+		Since the remote proxy API is built on top of REST, it can be debugged using nothing more than a browser.
+	</p>
 
 	<p>
 		The config file API allows you to interact with INI files using POJOs.  
@@ -256,7 +299,7 @@
 		<li>Atom
 		<li>Cognos
 		<li>JSON-Schema
-		<li>XHTML
+		<li>HTML 5
 	</ul>
 </body>
 </html>

http://git-wip-us.apache.org/repos/asf/incubator-juneau-website/blob/42f2cb3f/content/sourceCode.html
----------------------------------------------------------------------
diff --git a/content/sourceCode.html b/content/sourceCode.html
index c127e58..f710427 100644
--- a/content/sourceCode.html
+++ b/content/sourceCode.html
@@ -18,7 +18,7 @@
 		<li><a class='doclink' href='https://git-wip-us.apache.org/repos/asf/incubator-juneau.git' target="_top">Apache GIT repository</a>
 		<li><a class='doclink' href='http://github.com/apache/incubator-juneau' target="_top">GitHub mirror</a>
 		<li><a class='doclink' href='https://git-wip-us.apache.org/repos/asf/incubator-juneau-website.git' target="_top">GIT repository for this website</a>
-		<li><a class='doclink' href='https://cwiki.apache.org/confluence/display/JUNEAU/Juneau+Home' target="_top">Workspace setup instructions (coming soon)</a>
+		<li><a class='doclink' href='https://cwiki.apache.org/confluence/display/JUNEAU/Setting+up+your+Eclipse+workspace' target="_top">Workspace setup instructions</a>
 	</ul>
 	<h5 class='toc'>Builds</h5>
 	<ul class='spaced-list'>