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 2017/06/27 02:38:20 UTC

[06/19] incubator-juneau git commit: Clean up javadocs.

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/CallMethod.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/CallMethod.java b/juneau-rest/src/main/java/org/apache/juneau/rest/CallMethod.java
index f645bc4..8022e1d 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/CallMethod.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/CallMethod.java
@@ -192,7 +192,10 @@ class CallMethod implements Comparable<CallMethod>  {
 				htmlCssUrl = hd.cssUrl().isEmpty() ? context.getHtmlCssUrl() : hd.cssUrl();
 				htmlNoWrap = hd.nowrap() ? hd.nowrap() : context.getHtmlNoWrap();
 				htmlNoResultsMessage = hd.noResultsMessage().isEmpty() ? context.getHtmlNoResultsMessage() : hd.header();
-				htmlTemplate = hd.template() == HtmlDocTemplate.class ? context.getHtmlTemplate() : ClassUtils.newInstance(HtmlDocTemplate.class, hd.template());
+				htmlTemplate =
+					hd.template() == HtmlDocTemplate.class
+					? context.getHtmlTemplate()
+					: ClassUtils.newInstance(HtmlDocTemplate.class, hd.template());
 
 				List<Inherit> si = Arrays.asList(m.serializersInherit());
 				List<Inherit> pi = Arrays.asList(m.parsersInherit());
@@ -201,7 +204,9 @@ class CallMethod implements Comparable<CallMethod>  {
 				ParserGroupBuilder pgb = null;
 				UrlEncodingParserBuilder uepb = null;
 
-				if (m.serializers().length > 0 || m.parsers().length > 0 || m.properties().length > 0 || m.flags().length > 0 || m.beanFilters().length > 0 || m.pojoSwaps().length > 0 || m.bpIncludes().length() > 0 || m.bpExcludes().length() > 0) {
+				if (m.serializers().length > 0 || m.parsers().length > 0 || m.properties().length > 0 || m.flags().length > 0
+						|| m.beanFilters().length > 0 || m.pojoSwaps().length > 0 || m.bpIncludes().length() > 0
+						|| m.bpExcludes().length() > 0) {
 					sgb = new SerializerGroupBuilder();
 					pgb = new ParserGroupBuilder();
 					uepb = new UrlEncodingParserBuilder(urlEncodingParser.createPropertyStore());
@@ -267,13 +272,15 @@ class CallMethod implements Comparable<CallMethod>  {
 						try {
 							sgb.includeProperties((Map)JsonParser.DEFAULT.parse(m.bpIncludes(), Map.class, String.class, String.class));
 						} catch (ParseException e) {
-							throw new RestServletException("Invalid format for @RestMethod.bpIncludes() on method ''{0}''.  Must be a valid JSON object.  \nValue: {1}", sig, m.bpIncludes());
+							throw new RestServletException(
+									"Invalid format for @RestMethod.bpIncludes() on method ''{0}''.  Must be a valid JSON object.  \nValue: {1}", sig, m.bpIncludes());
 						}
 					if (! m.bpExcludes().isEmpty())
 						try {
 							sgb.excludeProperties((Map)JsonParser.DEFAULT.parse(m.bpExcludes(), Map.class, String.class, String.class));
 						} catch (ParseException e) {
-							throw new RestServletException("Invalid format for @RestMethod.bpExcludes() on method ''{0}''.  Must be a valid JSON object.  \nValue: {1}", sig, m.bpExcludes());
+							throw new RestServletException(
+								"Invalid format for @RestMethod.bpExcludes() on method ''{0}''.  Must be a valid JSON object.  \nValue: {1}", sig, m.bpExcludes());
 						}
 					sgb.beanFilters(m.beanFilters());
 					sgb.pojoSwaps(m.pojoSwaps());
@@ -321,7 +328,8 @@ class CallMethod implements Comparable<CallMethod>  {
 						try {
 							g.append(c);
 						} catch (Exception e) {
-							throw new RestServletException("Exception occurred while trying to instantiate Encoder on method ''{0}'': ''{1}''", sig, c.getSimpleName()).initCause(e);
+							throw new RestServletException(
+								"Exception occurred while trying to instantiate Encoder on method ''{0}'': ''{1}''", sig, c.getSimpleName()).initCause(e);
 						}
 					}
 					encoders = g.build();
@@ -331,7 +339,8 @@ class CallMethod implements Comparable<CallMethod>  {
 				for (String s : m.defaultRequestHeaders()) {
 					String[] h = RestUtils.parseKeyValuePair(s);
 					if (h == null)
-						throw new RestServletException("Invalid default request header specified on method ''{0}'': ''{1}''.  Must be in the format: ''name[:=]value''", sig, s);
+						throw new RestServletException(
+							"Invalid default request header specified on method ''{0}'': ''{1}''.  Must be in the format: ''name[:=]value''", sig, s);
 					defaultRequestHeaders.put(h[0], h[1]);
 				}
 
@@ -339,7 +348,8 @@ class CallMethod implements Comparable<CallMethod>  {
 				for (String s : m.defaultQuery()) {
 					String[] h = RestUtils.parseKeyValuePair(s);
 					if (h == null)
-						throw new RestServletException("Invalid default query parameter specified on method ''{0}'': ''{1}''.  Must be in the format: ''name[:=]value''", sig, s);
+						throw new RestServletException(
+							"Invalid default query parameter specified on method ''{0}'': ''{1}''.  Must be in the format: ''name[:=]value''", sig, s);
 					defaultQuery.put(h[0], h[1]);
 				}
 
@@ -347,7 +357,8 @@ class CallMethod implements Comparable<CallMethod>  {
 				for (String s : m.defaultFormData()) {
 					String[] h = RestUtils.parseKeyValuePair(s);
 					if (h == null)
-						throw new RestServletException("Invalid default form data parameter specified on method ''{0}'': ''{1}''.  Must be in the format: ''name[:=]value''", sig, s);
+						throw new RestServletException(
+							"Invalid default form data parameter specified on method ''{0}'': ''{1}''.  Must be in the format: ''name[:=]value''", sig, s);
 					defaultFormData.put(h[0], h[1]);
 				}
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/CallRouter.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/CallRouter.java b/juneau-rest/src/main/java/org/apache/juneau/rest/CallRouter.java
index bbac14c..acc4de4 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/CallRouter.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/CallRouter.java
@@ -19,11 +19,11 @@ import java.util.*;
 import javax.servlet.http.*;
 
 /**
- * Represents a group of CallMethods on a REST resource that handle the same HTTP Method name but
- * with different paths/matchers/guards/etc...
+ * Represents a group of CallMethods on a REST resource that handle the same HTTP Method name but with different
+ * paths/matchers/guards/etc...
  * <p>
- * Incoming requests for a particular HTTP method type (e.g. <js>"GET"</js>) are handed off to this class
- * and then dispatched to the appropriate CallMethod.
+ * Incoming requests for a particular HTTP method type (e.g. <js>"GET"</js>) are handed off to this class and then
+ * dispatched to the appropriate CallMethod.
  */
 class CallRouter {
 	private final CallMethod[] callMethods;

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/ReaderResource.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/ReaderResource.java b/juneau-rest/src/main/java/org/apache/juneau/rest/ReaderResource.java
index bed46f1..93478c2 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/ReaderResource.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/ReaderResource.java
@@ -25,8 +25,8 @@ import org.apache.juneau.rest.response.*;
 import org.apache.juneau.svl.*;
 
 /**
- * Represents the contents of a text file with convenience methods for resolving
- * 	{@link Parameter} variables and adding HTTP response headers.
+ * Represents the contents of a text file with convenience methods for resolving {@link Parameter} variables and adding
+ * HTTP response headers.
  * <p>
  * This class is handled special by the {@link WritableHandler} class.
  */
@@ -39,6 +39,7 @@ public class ReaderResource implements Writable {
 
 	/**
 	 * Constructor.
+	 *
 	 * @param mediaType The HTTP media type.
 	 * @param contents The contents of this resource.
 	 * <br>If multiple contents are specified, the results will be concatenated.
@@ -56,6 +57,7 @@ public class ReaderResource implements Writable {
 
 	/**
 	 * Constructor.
+	 *
 	 * @param mediaType The resource media type.
 	 * @param headers The HTTP response headers for this streamed resource.
 	 * @param varSession Optional variable resolver for resolving variables in the string.
@@ -110,6 +112,7 @@ public class ReaderResource implements Writable {
 
 		/**
 		 * Specifies the resource media type string.
+		 *
 		 * @param mediaType The resource media type string.
 		 * @return This object (for method chaining).
 		 */
@@ -120,6 +123,7 @@ public class ReaderResource implements Writable {
 
 		/**
 		 * Specifies the resource media type string.
+		 *
 		 * @param mediaType The resource media type string.
 		 * @return This object (for method chaining).
 		 */

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/Redirect.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/Redirect.java b/juneau-rest/src/main/java/org/apache/juneau/rest/Redirect.java
index ad81006..1a79d24 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/Redirect.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/Redirect.java
@@ -23,7 +23,7 @@ import org.apache.juneau.urlencoding.*;
  * REST methods can return this object as a shortcut for performing <code>HTTP 302</code> redirects.
  * <p>
  * The following example shows the difference between handling redirects via the {@link RestRequest}/{@link RestResponse},
- * 	and the simplified approach of using this class.
+ * and the simplified approach of using this class.
  * <p class='bcode'>
  * 	<jc>// Redirect to "/contextPath/servletPath/foobar"</jc>
  *
@@ -48,8 +48,8 @@ import org.apache.juneau.urlencoding.*;
  * 	}
  * </p>
  * <p>
- * The arguments are serialized to strings using the servlet's {@link UrlEncodingSerializer},
- * 	so any filters defined on the serializer or REST method/class will be used when present.
+ * The arguments are serialized to strings using the servlet's {@link UrlEncodingSerializer}, so any filters defined on
+ * the serializer or REST method/class will be used when present.
  * The arguments will also be automatically URL-encoded.
  * <p>
  * Redirecting to the servlet root can be accomplished by simply using the no-arg constructor.
@@ -62,8 +62,8 @@ import org.apache.juneau.urlencoding.*;
  * 	}
  * </p>
  * <p>
- * This class is handled by {@link org.apache.juneau.rest.response.RedirectHandler}, a built-in default
- * 	response handler created in {@link RestConfig}.
+ * This class is handled by {@link org.apache.juneau.rest.response.RedirectHandler}, a built-in default response
+ * handler created in {@link RestConfig}.
  */
 public final class Redirect {
 

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/RequestBody.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestBody.java b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestBody.java
index 80fe80a..a7fe2e5 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestBody.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestBody.java
@@ -134,7 +134,7 @@ public class RequestBody {
 	 * <p>
 	 * Refer to <a class="doclink" href="../../../../overview-summary.html#Core.PojoCategories">POJO Categories</a> for
 	 * a complete definition of supported POJOs.
-	 * <p>
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into an integer.</jc>
@@ -166,7 +166,7 @@ public class RequestBody {
 
 	/**
 	 * Reads the input from the HTTP request as JSON, XML, or HTML and converts the input to a POJO.
-	 * <p>
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into a linked-list of strings.</jc>
@@ -183,12 +183,12 @@ public class RequestBody {
 	 * </p>
 	 *
 	 * @param type The type of object to create.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
-	 * 	{@link GenericArrayType}
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
 	 * @param args The type arguments of the class if it's a collection or map.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
-	 * 	{@link GenericArrayType}
-	 * 	<br>Ignored if the main type is not a map or collection.
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
+	 * <br>Ignored if the main type is not a map or collection.
 	 * @param <T> The class type to instantiate.
 	 * @return The input parsed to a POJO.
 	 */
@@ -230,6 +230,7 @@ public class RequestBody {
 	 * string.
 	 * <p>
 	 * Automatically handles GZipped input streams.
+	 *
 	 * @return The body contents as a reader.
 	 * @throws IOException
 	 */
@@ -260,8 +261,7 @@ public class RequestBody {
 	 * Automatically handles GZipped input streams.
 	 *
 	 * @return The negotiated input stream.
-	 * @throws IOException If any error occurred while trying to get the input stream or wrap it
-	 * 	in the GZIP wrapper.
+	 * @throws IOException If any error occurred while trying to get the input stream or wrap it in the GZIP wrapper.
 	 */
 	public ServletInputStream getInputStream() throws IOException {
 
@@ -281,8 +281,8 @@ public class RequestBody {
 	/**
 	 * Returns the parser and media type matching the request <code>Content-Type</code> header.
 	 *
-	 * @return The parser matching the request <code>Content-Type</code> header, or <jk>null</jk>
-	 * 	if no matching parser was found.
+	 * @return The parser matching the request <code>Content-Type</code> header, or <jk>null</jk> if no matching parser
+	 * was found.
 	 * Includes the matching media type.
 	 */
 	public ParserMatch getParserMatch() {
@@ -305,8 +305,8 @@ public class RequestBody {
 	/**
 	 * Returns the parser matching the request <code>Content-Type</code> header.
 	 *
-	 * @return The parser matching the request <code>Content-Type</code> header, or <jk>null</jk>
-	 * 	if no matching parser was found.
+	 * @return The parser matching the request <code>Content-Type</code> header, or <jk>null</jk> if no matching parser
+	 * was found.
 	 */
 	public Parser getParser() {
 		ParserMatch pm = getParserMatch();
@@ -316,8 +316,8 @@ public class RequestBody {
 	/**
 	 * Returns the reader parser matching the request <code>Content-Type</code> header.
 	 *
-	 * @return The reader parser matching the request <code>Content-Type</code> header, or <jk>null</jk>
-	 * 	if no matching reader parser was found, or the matching parser was an input stream parser.
+	 * @return The reader parser matching the request <code>Content-Type</code> header, or <jk>null</jk> if no matching
+	 * reader parser was found, or the matching parser was an input stream parser.
 	 */
 	public ReaderParser getReaderParser() {
 		Parser p = getParser();
@@ -399,6 +399,7 @@ public class RequestBody {
 
 	/**
 	 * Returns the content length of the body.
+	 *
 	 * @return The content length of the body in bytes.
 	 */
 	public int getContentLength() {

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/RequestFormData.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestFormData.java b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestFormData.java
index 7de7cdb..4c56c33 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestFormData.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestFormData.java
@@ -77,12 +77,14 @@ public class RequestFormData extends LinkedHashMap<String,String[]> {
 	 * Returns a form data parameter value.
 	 * <p>
 	 * Parameter lookup is case-insensitive (consistent with WAS, but differs from Tomcat).
-	 * <p>
+	 *
 	 * <h5 class='section'>Notes:</h5>
 	 * <ul>
-	 * 	<li>Calling this method on URL-Encoded FORM posts causes the body content to be loaded and parsed by the underlying servlet API.
-	 * 	<li>This method returns the raw unparsed value, and differs from calling <code>getFormDataParameter(name, String.<jk>class</js>)</code>
-	 * 		which will convert the value from UON notation:
+	 * 	<li>Calling this method on URL-Encoded FORM posts causes the body content to be loaded and parsed by the
+	 * 		underlying servlet API.
+	 * 	<li>This method returns the raw unparsed value, and differs from calling
+	 * 		<code>getFormDataParameter(name, String.<jk>class</js>)</code> which will convert the value from UON
+	 * 		notation:
 	 * 		<ul>
 	 * 			<li><js>"null"</js> =&gt; <jk>null</jk>
 	 * 			<li><js>"'null'"</js> =&gt; <js>"null"</js>
@@ -165,9 +167,9 @@ public class RequestFormData extends LinkedHashMap<String,String[]> {
 	}
 
 	/**
-	 * Returns the specified form data parameter value converted to a POJO using the
-	 * 	{@link UrlEncodingParser} registered with this servlet.
-	 * <p>
+	 * Returns the specified form data parameter value converted to a POJO using the {@link UrlEncodingParser}
+	 * registered with this servlet.
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into an integer.</jc>
@@ -185,10 +187,11 @@ public class RequestFormData extends LinkedHashMap<String,String[]> {
 	 * 	<jc>// Parse into a map of object keys/values.</jc>
 	 * 	Map myparam = req.getFormDataParameter(<js>"myparam"</js>, TreeMap.<jk>class</jk>);
 	 * </p>
-	 * <p>
+	 *
 	 * <h5 class='section'>Notes:</h5>
 	 * <ul>
-	 * 	<li>Calling this method on URL-Encoded FORM posts causes the body content to be loaded and parsed by the underlying servlet API.
+	 * 	<li>Calling this method on URL-Encoded FORM posts causes the body content to be loaded and parsed by the
+	 * 		underlying servlet API.
 	 * </ul>
 	 *
 	 * @param name The parameter name.
@@ -217,7 +220,7 @@ public class RequestFormData extends LinkedHashMap<String,String[]> {
 
 	/**
 	 * Same as {@link #get(String, Class)} except for use on multi-part parameters
-	 * 	(e.g. <js>"key=1&amp;key=2&amp;key=3"</js> instead of <js>"key=(1,2,3)"</js>)
+	 * (e.g. <js>"key=1&amp;key=2&amp;key=3"</js> instead of <js>"key=(1,2,3)"</js>)
 	 * <p>
 	 * This method must only be called when parsing into classes of type Collection or array.
 	 *
@@ -231,15 +234,16 @@ public class RequestFormData extends LinkedHashMap<String,String[]> {
 	}
 
 	/**
-	 * Returns the specified form data parameter value converted to a POJO using the
-	 * 	{@link UrlEncodingParser} registered with this servlet.
-	 * <p>
+	 * Returns the specified form data parameter value converted to a POJO using the {@link UrlEncodingParser}
+	 * registered with this servlet.
+	 *
 	 * <h5 class='section'>Notes:</h5>
 	 * <ul>
-	 * 	<li>Calling this method on URL-Encoded FORM posts causes the body content to be loaded and parsed by the underlying servlet API.
+	 * 	<li>Calling this method on URL-Encoded FORM posts causes the body content to be loaded and parsed by the
+	 * 		underlying servlet API.
 	 * 	<li>Use this method if you want to parse into a parameterized <code>Map</code>/<code>Collection</code> object.
 	 * </ul>
-	 * <p>
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into a linked-list of strings.</jc>
@@ -257,10 +261,12 @@ public class RequestFormData extends LinkedHashMap<String,String[]> {
 	 *
 	 * @param name The parameter name.
 	 * @param type The type of object to create.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
 	 * @param args The type arguments of the class if it's a collection or map.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
-	 * 	<br>Ignored if the main type is not a map or collection.
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
+	 * <br>Ignored if the main type is not a map or collection.
 	 * @return The parameter value converted to the specified class type.
 	 * @throws ParseException
 	 */
@@ -270,16 +276,18 @@ public class RequestFormData extends LinkedHashMap<String,String[]> {
 
 	/**
 	 * Same as {@link #get(String, Type, Type...)} except for use on multi-part parameters
-	 * 	(e.g. <js>"key=1&amp;key=2&amp;key=3"</js> instead of <js>"key=(1,2,3)"</js>)
+	 * (e.g. <js>"key=1&amp;key=2&amp;key=3"</js> instead of <js>"key=(1,2,3)"</js>)
 	 * <p>
 	 * This method must only be called when parsing into classes of type Collection or array.
 	 *
 	 * @param name The parameter name.
 	 * @param type The type of object to create.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
 	 * @param args The type arguments of the class if it's a collection or map.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
-	 * 	<br>Ignored if the main type is not a map or collection.
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
+	 * <br>Ignored if the main type is not a map or collection.
 	 * @return The parameter value converted to the specified class type.
 	 * @throws ParseException
 	 */

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/RequestHeaders.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestHeaders.java b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestHeaders.java
index 992f954..ff3f3cd 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestHeaders.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestHeaders.java
@@ -99,7 +99,8 @@ public class RequestHeaders extends TreeMap<String,String[]> {
 	/**
 	 * Returns the specified header value, or <jk>null</jk> if the header doesn't exist.
 	 * <p>
-	 * If {@code allowHeaderParams} init parameter is <jk>true</jk>, then first looks for {@code &HeaderName=x} in the URL query string.
+	 * If {@code allowHeaderParams} init parameter is <jk>true</jk>, then first looks for {@code &HeaderName=x} in the
+	 * URL query string.
 	 * <p>
 	 * @param name The header name.
 	 * @return The header value, or <jk>null</jk> if it doesn't exist.
@@ -118,7 +119,8 @@ public class RequestHeaders extends TreeMap<String,String[]> {
 	/**
 	 * Returns the specified header value, or a default value if the header doesn't exist.
 	 * <p>
-	 * If {@code allowHeaderParams} init parameter is <jk>true</jk>, then first looks for {@code &HeaderName=x} in the URL query string.
+	 * If {@code allowHeaderParams} init parameter is <jk>true</jk>, then first looks for {@code &HeaderName=x} in the
+	 * URL query string.
 	 *
 	 * @param name The HTTP header name.
 	 * @param def The default value to return if the header value isn't found.
@@ -186,9 +188,9 @@ public class RequestHeaders extends TreeMap<String,String[]> {
 	/**
 	 * Returns the specified header value converted to a POJO.
 	 * <p>
-	 * The type can be any POJO type convertable from a <code>String</code>
-	 * (See <a class="doclink" href="package-summary.html#PojosConvertableFromString">POJOs Convertable From Strings</a>).
-	 * <p>
+	 * The type can be any POJO type convertible from a <code>String</code>
+	 * (See <a class="doclink" href="package-summary.html#PojosConvertableFromString">POJOs Convertible From Strings</a>).
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into an integer.</jc>
@@ -227,9 +229,9 @@ public class RequestHeaders extends TreeMap<String,String[]> {
 	/**
 	 * Returns the specified header value converted to a POJO.
 	 * <p>
-	 * The type can be any POJO type convertable from a <code>String</code>
-	 * (See <a class="doclink" href="package-summary.html#PojosConvertableFromString">POJOs Convertable From Strings</a>).
-	 * <p>
+	 * The type can be any POJO type convertible from a <code>String</code>
+	 * (See <a class="doclink" href="package-summary.html#PojosConvertableFromString">POJOs Convertible From Strings</a>).
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into a linked-list of strings.</jc>
@@ -238,10 +240,12 @@ public class RequestHeaders extends TreeMap<String,String[]> {
 	 *
 	 * @param name The HTTP header name.
 	 * @param type The type of object to create.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
 	 * @param args The type arguments of the class if it's a collection or map.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
-	 * 	<br>Ignored if the main type is not a map or collection.
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
+	 * <br>Ignored if the main type is not a map or collection.
 	 * @param <T> The class type to convert the header value to.
 	 * @return The parameter value converted to the specified class type.
 	 * @throws ParseException If the header could not be converted to the specified type.
@@ -254,6 +258,7 @@ public class RequestHeaders extends TreeMap<String,String[]> {
 
 	/**
 	 * Returns a copy of this object, but only with the specified header names copied.
+	 *
 	 * @param headers The headers to include in the copy.
 	 * @return A new headers object.
 	 */
@@ -267,6 +272,7 @@ public class RequestHeaders extends TreeMap<String,String[]> {
 
 	/**
 	 * Same as {@link #subset(String...)}, but allows you to specify header names as a comma-delimited list.
+	 *
 	 * @param headers The headers to include in the copy.
 	 * @return A new headers object.
 	 */
@@ -285,7 +291,6 @@ public class RequestHeaders extends TreeMap<String,String[]> {
 	 * </p>
 	 *
 	 * @return The parsed <code>Accept</code> header on the request, or <jk>null</jk> if not found.
-	 *
 	 */
 	public Accept getAccept() {
 		return Accept.forString(getString("Accept"));
@@ -490,7 +495,8 @@ public class RequestHeaders extends TreeMap<String,String[]> {
 	 * Returns the <code>If-Match</code> header on the request.
 	 * <p>
 	 * Only perform the action if the client supplied entity matches the same entity on the server.
-	 * This is mainly for methods like PUT to only update a resource if it has not been modified since the user last updated it.
+	 * This is mainly for methods like PUT to only update a resource if it has not been modified since the user last
+	 * updated it.
 	 *
 	 * <h6 class='figure'>Example:</h6>
 	 * <p class='bcode'>

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/RequestPathMatch.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestPathMatch.java b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestPathMatch.java
index 7712a3d..fa75767 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestPathMatch.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestPathMatch.java
@@ -66,9 +66,9 @@ public class RequestPathMatch extends TreeMap<String,String> {
 	/**
 	 * Returns the specified path parameter converted to a POJO.
 	 * <p>
-	 * The type can be any POJO type convertable from a <code>String</code> (See <a class="doclink"
-	 * href="package-summary.html#PojosConvertableFromString">POJOs Convertable From Strings</a>).
-	 * <p>
+	 * The type can be any POJO type convertible from a <code>String</code> (See <a class="doclink"
+	 * href="package-summary.html#PojosConvertibleFromString">POJOs Convertible From Strings</a>).
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into an integer.</jc>
@@ -100,10 +100,11 @@ public class RequestPathMatch extends TreeMap<String,String> {
 	/**
 	 * Returns the specified path parameter converted to a POJO.
 	 * <p>
-	 * The type can be any POJO type convertable from a <code>String</code> (See <a class="doclink" href="package-summary.html#PojosConvertableFromString">POJOs Convertable From Strings</a>).
+	 * The type can be any POJO type convertible from a <code>String</code> (See <a class="doclink"
+	 * href="package-summary.html#PojosConvertibleFromString">POJOs Convertible From Strings</a>).
 	 * <p>
 	 * Use this method if you want to parse into a parameterized <code>Map</code>/<code>Collection</code> object.
-	 * <p>
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into a linked-list of strings.</jc>
@@ -121,10 +122,12 @@ public class RequestPathMatch extends TreeMap<String,String> {
 	 *
 	 * @param name The attribute name.
 	 * @param type The type of object to create.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
 	 * @param args The type arguments of the class if it's a collection or map.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
-	 * 	<br>Ignored if the main type is not a map or collection.
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
+	 * <br>Ignored if the main type is not a map or collection.
 	 * @param <T> The class type to convert the attribute value to.
 	 * @return The attribute value converted to the specified class type.
 	 * @throws ParseException
@@ -205,7 +208,7 @@ public class RequestPathMatch extends TreeMap<String,String> {
 	/**
 	 * Same as {@link #getRemainder()} but doesn't decode characters.
 	 *
-	 * @return The undecoded path remainder.
+	 * @return The un-decoded path remainder.
 	 */
 	public String getRemainderUndecoded() {
 		return remainder;

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/RequestQuery.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestQuery.java b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestQuery.java
index 104e4b9..c4d9a7c 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/RequestQuery.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/RequestQuery.java
@@ -79,9 +79,11 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	/**
 	 * Returns a query parameter value.
 	 * <p>
-	 * Same as {@link HttpServletRequest#getParameter(String)} except only looks in the URL string, not parameters from URL-Encoded FORM posts.
+	 * Same as {@link HttpServletRequest#getParameter(String)} except only looks in the URL string, not parameters from
+	 * URL-Encoded FORM posts.
 	 * <p>
-	 * This method can be used to retrieve a parameter without triggering the underlying servlet API to load and parse the request body.
+	 * This method can be used to retrieve a parameter without triggering the underlying servlet API to load and parse
+	 * the request body.
 	 * <p>
 	 * If multiple query parameters have the same name, this returns only the first instance.
 	 *
@@ -103,11 +105,13 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	}
 
 	/**
-	 * Same as {@link #getString(String)} but returns the specified default value if the query parameter was not specified.
+	 * Same as {@link #getString(String)} but returns the specified default value if the query parameter was not
+	 * specified.
 	 *
 	 * @param name The URL parameter name.
 	 * @param def The default value.
-	 * @return The parameter value, or the default value if parameter not specified or has no value (e.g. <js>"&amp;foo"</js>.
+	 * @return The parameter value, or the default value if parameter not specified or has no value
+	 * (e.g. <js>"&amp;foo"</js>.
 	 */
 	public String getString(String name, String def) {
 		String s = getString(name);
@@ -118,7 +122,8 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	 * Same as {@link #getString(String)} but converts the value to an integer.
 	 *
 	 * @param name The URL parameter name.
-	 * @return The parameter value, or <code>0</code> if parameter not specified or has no value (e.g. <js>"&amp;foo"</js>.
+	 * @return The parameter value, or <code>0</code> if parameter not specified or has no value
+	 * (e.g. <js>"&amp;foo"</js>.
 	 */
 	public int getInt(String name) {
 		return getInt(name, 0);
@@ -129,7 +134,8 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	 *
 	 * @param name The URL parameter name.
 	 * @param def The default value.
-	 * @return The parameter value, or the default value if parameter not specified or has no value (e.g. <js>"&amp;foo"</js>.
+	 * @return The parameter value, or the default value if parameter not specified or has no value
+	 * (e.g. <js>"&amp;foo"</js>.
 	 */
 	public int getInt(String name, int def) {
 		String s = getString(name);
@@ -140,7 +146,8 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	 * Same as {@link #getString(String)} but converts the value to a boolean.
 	 *
 	 * @param name The URL parameter name.
-	 * @return The parameter value, or <jk>false</jk> if parameter not specified or has no value (e.g. <js>"&amp;foo"</js>.
+	 * @return The parameter value, or <jk>false</jk> if parameter not specified or has no value
+	 * (e.g. <js>"&amp;foo"</js>.
 	 */
 	public boolean getBoolean(String name) {
 		return getBoolean(name, false);
@@ -151,7 +158,8 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	 *
 	 * @param name The URL parameter name.
 	 * @param def The default value.
-	 * @return The parameter value, or the default value if parameter not specified or has no value (e.g. <js>"&amp;foo"</js>.
+	 * @return The parameter value, or the default value if parameter not specified or has no value
+	 * (e.g. <js>"&amp;foo"</js>.
 	 */
 	public boolean getBoolean(String name, boolean def) {
 		String s = getString(name);
@@ -161,8 +169,9 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	/**
 	 * Returns the specified query parameter value converted to a POJO.
 	 * <p>
-	 * This method can be used to retrieve a parameter without triggering the underlying servlet API to load and parse the request body.
-	 * <p>
+	 * This method can be used to retrieve a parameter without triggering the underlying servlet API to load and parse
+	 * the request body.
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into an integer.</jc>
@@ -208,10 +217,11 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	/**
 	 * Returns the specified query parameter value converted to a POJO.
 	 * <p>
-	 * This method can be used to retrieve a parameter without triggering the underlying servlet API to load and parse the request body.
+	 * This method can be used to retrieve a parameter without triggering the underlying servlet API to load and parse
+	 * the request body.
 	 * <p>
 	 * Use this method if you want to parse into a parameterized <code>Map</code>/<code>Collection</code> object.
-	 * <p>
+	 *
 	 * <h5 class='section'>Examples:</h5>
 	 * <p class='bcode'>
 	 * 	<jc>// Parse into a linked-list of strings.</jc>
@@ -229,10 +239,12 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	 *
 	 * @param name The parameter name.
 	 * @param type The type of object to create.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
 	 * @param args The type arguments of the class if it's a collection or map.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
-	 * 	<br>Ignored if the main type is not a map or collection.
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
+	 * <br>Ignored if the main type is not a map or collection.
 	 * @param <T> The class type to convert the parameter value to.
 	 * @return The parameter value converted to the specified class type.
 	 * @throws ParseException
@@ -246,10 +258,12 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	 *
 	 * @param name The parameter name.
 	 * @param type The type of object to create.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
 	 * @param args The type arguments of the class if it's a collection or map.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
-	 * 	<br>Ignored if the main type is not a map or collection.
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
+	 * <br>Ignored if the main type is not a map or collection.
 	 * @param def The default value if the parameter was not specified or is <jk>null</jk>.
 	 * @param <T> The class type to convert the parameter value to.
 	 * @return The parameter value converted to the specified class type.
@@ -283,10 +297,12 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	 *
 	 * @param name The query parameter name.
 	 * @param type The type of object to create.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
 	 * @param args The type arguments of the class if it's a collection or map.
-	 * 	<br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType}, {@link GenericArrayType}
-	 * 	<br>Ignored if the main type is not a map or collection.
+	 * <br>Can be any of the following: {@link ClassMeta}, {@link Class}, {@link ParameterizedType},
+	 * {@link GenericArrayType}
+	 * <br>Ignored if the main type is not a map or collection.
 	 * @param <T> The class type to convert the parameter value to.
 	 * @return The query parameter value converted to the specified class type.
 	 * @throws ParseException
@@ -313,26 +329,32 @@ public final class RequestQuery extends LinkedHashMap<String,String[]> {
 	 * <p>
 	 * The query arguments are as follows:
 	 * <ul>
-	 * 	<li><js>"&amp;s="</js> - A comma-delimited list of column-name/search-token pairs.
+	 * 	<li>
+	 * 		<js>"&amp;s="</js> - A comma-delimited list of column-name/search-token pairs.
 	 * 		<br>Example: <js>"&amp;s=column1=foo*,column2=*bar"</js>
-	 * 	<li><js>"&amp;v="</js> - A comma-delimited list column names to view.
+	 * 	<li>
+	 * 		<js>"&amp;v="</js> - A comma-delimited list column names to view.
 	 * 		<br>Example: <js>"&amp;v=column1,column2"</js>
-	 * 	<li><js>"&amp;o="</js> - A comma-delimited list column names to sort by.
+	 * 	<li>
+	 * 		<js>"&amp;o="</js> - A comma-delimited list column names to sort by.
 	 * 		<br>Column names can be suffixed with <js>'-'</js> to indicate descending order.
 	 * 		<br>Example: <js>"&amp;o=column1,column2-"</js>
-	 * 	<li><js>"&amp;p="</js> - The zero-index row number of the first row to display.
+	 * 	<li>
+	 * 		<js>"&amp;p="</js> - The zero-index row number of the first row to display.
 	 * 		<br>Example: <js>"&amp;p=100"</js>
-	 * 	<li><js>"&amp;l="</js> - The number of rows to return.
+	 * 	<li>
+	 * 		<js>"&amp;l="</js> - The number of rows to return.
 	 * 		<br><code>0</code> implies return all rows.
 	 * 		<br>Example: <js>"&amp;l=100"</js>
-	 * 	<li><js>"&amp;i="</js> - The case-insensitive search flag.
+	 * 	<li>
+	 * 		<js>"&amp;i="</js> - The case-insensitive search flag.
 	 * 		<br>Example: <js>"&amp;i=true"</js>
 	 * </ul>
 	 * <p>
 	 * Whitespace is trimmed in the parameters.
 	 *
 	 * @return A new {@link SearchArgs} object initialized with the special search query arguments.
-	 * 	<jk>null</jk> if no search arguments were found.
+	 * <jk>null</jk> if no search arguments were found.
 	 */
 	public SearchArgs getSearchArgs() {
 		if (hasAny("s","v","o","p","l","i")) {

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/ResponseHandler.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/ResponseHandler.java b/juneau-rest/src/main/java/org/apache/juneau/rest/ResponseHandler.java
index da7c3e9..43dbc4f 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/ResponseHandler.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/ResponseHandler.java
@@ -23,32 +23,41 @@ import org.apache.juneau.rest.response.*;
 /**
  * Defines the interface for handlers that convert POJOs to appropriate HTTP responses.
  * <p>
- * The {@link RestServlet} API uses the concept of registered response handlers for
- * 	converting objects returned by REST methods or set through {@link RestResponse#setOutput(Object)}
- * 	into appropriate HTTP responses.
+ * The {@link RestServlet} API uses the concept of registered response handlers for converting objects returned by REST
+ * methods or set through {@link RestResponse#setOutput(Object)} into appropriate HTTP responses.
  * <p>
  * Response handlers can be associated with {@link RestServlet RestServlets} through the following ways:
  * <ul class='spaced-list'>
- * 	<li>Through the {@link RestResource#responseHandlers @RestResource.responseHandlers} annotation.
- * 	<li>By calling the {@link RestConfig#addResponseHandlers(Class...)} and augmenting or creating your
+ * 	<li>
+ * 		Through the {@link RestResource#responseHandlers @RestResource.responseHandlers} annotation.
+ * 	<li>
+ * 		By calling the {@link RestConfig#addResponseHandlers(Class...)} and augmenting or creating your
  * 		own list of handlers.
  * </ul>
  * <p>
  * By default, {@link RestServlet RestServlets} are registered with the following response handlers:
  * <ul class='spaced-list'>
- * 	<li>{@link DefaultHandler} - Serializes POJOs using the Juneau serializer API.
- * 	<li>{@link ReaderHandler} - Pipes the output of {@link Reader Readers} to the response writer ({@link RestResponse#getWriter()}).
- * 	<li>{@link InputStreamHandler} - Pipes the output of {@link InputStream InputStreams} to the response output stream ({@link RestResponse#getOutputStream()}).
- * 	<li>{@link RedirectHandler} - Handles {@link Redirect} objects.
- * 	<li>{@link WritableHandler} - Handles {@link Writable} objects.
- * 	<li>{@link StreamableHandler} - Handles {@link Streamable} objects.
+ * 	<li>
+ * 		{@link DefaultHandler} - Serializes POJOs using the Juneau serializer API.
+ * 	<li>
+ * 		{@link ReaderHandler} - Pipes the output of {@link Reader Readers} to the response writer
+ * 		({@link RestResponse#getWriter()}).
+ * 	<li>
+ * 		{@link InputStreamHandler} - Pipes the output of {@link InputStream InputStreams} to the response output
+ * 		stream ({@link RestResponse#getOutputStream()}).
+ * 	<li>
+ * 		{@link RedirectHandler} - Handles {@link Redirect} objects.
+ * 	<li>
+ * 		{@link WritableHandler} - Handles {@link Writable} objects.
+ * 	<li>
+ * 		{@link StreamableHandler} - Handles {@link Streamable} objects.
  * </ul>
  * <p>
  * Response handlers can be used to process POJOs that cannot normally be handled through Juneau serializers, or
- * 	because it's simply easier to define response handlers for special cases.
+ * because it's simply easier to define response handlers for special cases.
  * <p>
- * The following example shows how to create a response handler to handle special <code>Foo</code> objects outside the normal
- * 	Juneau architecture.
+ * The following example shows how to create a response handler to handle special <code>Foo</code> objects outside the
+ * normal Juneau architecture.
  * <p class='bcode'>
  * 	<ja>@RestResource</ja>(
  * 		path=<js>"/example"</js>,
@@ -87,8 +96,10 @@ public interface ResponseHandler {
 	 * @param res The HTTP servlet response;
 	 * @param output The POJO returned by the REST method that now needs to be sent to the response.
 	 * @return true If this handler handled the response.
-	 * @throws IOException If low-level exception occurred on output stream.  Results in a {@link HttpServletResponse#SC_INTERNAL_SERVER_ERROR} error.
-	 * @throws RestException If some other exception occurred.  Can be used to provide an appropriate HTTP response code and message.
+	 * @throws IOException If low-level exception occurred on output stream.
+	 * Results in a {@link HttpServletResponse#SC_INTERNAL_SERVER_ERROR} error.
+	 * @throws RestException If some other exception occurred.
+	 * Can be used to provide an appropriate HTTP response code and message.
 	 */
 	boolean handle(RestRequest req, RestResponse res, Object output) throws IOException, RestException;
 }

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/RestCallHandler.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/RestCallHandler.java b/juneau-rest/src/main/java/org/apache/juneau/rest/RestCallHandler.java
index d60c489..663b184 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/RestCallHandler.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/RestCallHandler.java
@@ -47,6 +47,7 @@ public class RestCallHandler {
 
 	/**
 	 * Constructor.
+	 *
 	 * @param context The resource context.
 	 */
 	public RestCallHandler(RestContext context) {
@@ -71,7 +72,7 @@ public class RestCallHandler {
 
 	/**
 	 * Creates a {@link RestResponse} object based on the specified incoming {@link HttpServletResponse} object
-	 * 	and the request returned by {@link #createRequest(HttpServletRequest)}.
+	 * and the request returned by {@link #createRequest(HttpServletRequest)}.
 	 * <p>
 	 * Subclasses may choose to override this method to provide a specialized response object.
 	 *
@@ -188,14 +189,15 @@ public class RestCallHandler {
 	}
 
 	/**
-	 * The main method for serializing POJOs passed in through the {@link RestResponse#setOutput(Object)} method or returned by
-	 * the Java method.
+	 * The main method for serializing POJOs passed in through the {@link RestResponse#setOutput(Object)} method or
+	 * returned by the Java method.
 	 * <p>
-	 * Subclasses may override this method if they wish to modify the way the output is rendered or support
-	 * 	other output formats.
+	 * Subclasses may override this method if they wish to modify the way the output is rendered or support other output
+	 * formats.
 	 * <p>
 	 * The default implementation simply iterates through the response handlers on this resource
-	 * looking for the first one whose {@link ResponseHandler#handle(RestRequest, RestResponse, Object)} method returns <jk>true</jk>.
+	 * looking for the first one whose {@link ResponseHandler#handle(RestRequest, RestResponse, Object)} method returns
+	 * <jk>true</jk>.
 	 *
 	 * @param req The HTTP request.
 	 * @param res The HTTP response.
@@ -239,7 +241,8 @@ public class RestCallHandler {
 	/**
 	 * Method for handling response errors.
 	 * <p>
-	 * The default implementation logs the error and calls {@link #renderError(HttpServletRequest,HttpServletResponse,RestException)}.
+	 * The default implementation logs the error and calls
+	 * {@link #renderError(HttpServletRequest,HttpServletResponse,RestException)}.
 	 * <p>
 	 * Subclasses can override this method to provide their own custom error response handling.
 	 *
@@ -257,8 +260,8 @@ public class RestCallHandler {
 	/**
 	 * Method for rendering response errors.
 	 * <p>
-	 * The default implementation renders a plain text English message, optionally with a stack trace
-	 * 	if {@link RestContext#REST_renderResponseStackTraces} is enabled.
+	 * The default implementation renders a plain text English message, optionally with a stack trace if
+	 * {@link RestContext#REST_renderResponseStackTraces} is enabled.
 	 * <p>
 	 * Subclasses can override this method to provide their own custom error response handling.
 	 *
@@ -316,8 +319,8 @@ public class RestCallHandler {
 	/**
 	 * Callback method that gets invoked right before the REST Java method is invoked.
 	 * <p>
-	 * Subclasses can override this method to override request headers or set request-duration properties
-	 * 	before the Java method is invoked.
+	 * Subclasses can override this method to override request headers or set request-duration properties before the
+	 * Java method is invoked.
 	 *
 	 * @param req The HTTP servlet request object.
 	 * @throws RestException If any error occurs.
@@ -328,11 +331,11 @@ public class RestCallHandler {
 	}
 
 	/**
-	 * Callback method that gets invoked right after the REST Java method is invoked, but before
-	 * 	the serializer is invoked.
+	 * Callback method that gets invoked right after the REST Java method is invoked, but before the serializer is
+	 * invoked.
 	 * <p>
-	 * Subclasses can override this method to override request and response headers, or
-	 * 	set/override properties used by the serializer.
+	 * Subclasses can override this method to override request and response headers, or set/override properties used by
+	 * the serializer.
 	 *
 	 * @param req The HTTP servlet request object.
 	 * @param res The HTTP servlet response object.

http://git-wip-us.apache.org/repos/asf/incubator-juneau/blob/0d913b38/juneau-rest/src/main/java/org/apache/juneau/rest/RestConfig.java
----------------------------------------------------------------------
diff --git a/juneau-rest/src/main/java/org/apache/juneau/rest/RestConfig.java b/juneau-rest/src/main/java/org/apache/juneau/rest/RestConfig.java
index df84f52..0e99c03 100644
--- a/juneau-rest/src/main/java/org/apache/juneau/rest/RestConfig.java
+++ b/juneau-rest/src/main/java/org/apache/juneau/rest/RestConfig.java
@@ -278,7 +278,7 @@ public class RestConfig implements ServletConfig {
 	 * used to resolve string variables of the form <js>"$X{...}"</js>.
 	 * <p>
 	 * By default, this config includes the following variables:
-	 * <ul class='spaced-list'>
+	 * <ul>
 	 * 	<li>{@link SystemPropertiesVar}
 	 * 	<li>{@link EnvVariablesVar}
 	 * 	<li>{@link ConfigFileVar}
@@ -308,11 +308,12 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Adds a var context object to this config.
 	 * <p>
-	 * Var context objects are read-only objects associated with the variable resolver for
-	 * vars that require external information.
+	 * Var context objects are read-only objects associated with the variable resolver for vars that require external
+	 * information.
 	 * <p>
-	 * For example, the {@link ConfigFileVar} needs access to this resource's {@link ConfigFile} through the {@link ConfigFileVar#SESSION_config}
-	 * object that can be specified as either a session object (temporary) or context object (permanent).
+	 * For example, the {@link ConfigFileVar} needs access to this resource's {@link ConfigFile} through the
+	 * {@link ConfigFileVar#SESSION_config} object that can be specified as either a session object (temporary) or
+	 * context object (permanent).
 	 * In this case, we call the following code to add it to the context map:
 	 * <p class='bcode'>
 	 * 	config.addVarContextObject(<jsf>SESSION_config</jsf>, configFile);
@@ -330,7 +331,8 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Overwrites the default config file with a custom config file.
 	 * <p>
-	 * By default, the config file is determined using the {@link RestResource#config() @RestResource.config()} annotation.
+	 * By default, the config file is determined using the {@link RestResource#config() @RestResource.config()}
+	 * annotation.
 	 * This method allows you to programmatically override it with your own custom config file.
 	 *
 	 * @param configFile The new config file.
@@ -373,9 +375,11 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Adds class-level bean filters to this resource.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#beanFilters() @RestResource.beanFilters()} annotation.
+	 * This is the programmatic equivalent to the {@link RestResource#beanFilters() @RestResource.beanFilters()}
+	 * annotation.
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 *
 	 * @param beanFilters The bean filters to add to this config.
 	 * @return This object (for method chaining).
@@ -390,7 +394,8 @@ public class RestConfig implements ServletConfig {
 	 * <p>
 	 * This is the programmatic equivalent to the {@link RestResource#pojoSwaps() @RestResource.pojoSwaps()} annotation.
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 *
 	 * @param pojoSwaps The pojo swaps to add to this config.
 	 * @return This object (for method chaining).
@@ -403,7 +408,8 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Specifies the serializer listener class to use for listening to non-fatal serialization errors.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#serializerListener() @RestResource.serializerListener()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#serializerListener() @RestResource.serializerListener()} annotation.
 	 *
 	 * @param listener The listener to add to this config.
 	 * @return This object (for method chaining).
@@ -417,7 +423,8 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Specifies the parser listener class to use for listening to non-fatal parse errors.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#parserListener() @RestResource.parserListener()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#parserListener() @RestResource.parserListener()} annotation.
 	 *
 	 * @param listener The listener to add to this config.
 	 * @return This object (for method chaining).
@@ -431,7 +438,8 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Adds class-level parameter resolvers to this resource.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#paramResolvers() @RestResource.paramResolvers()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#paramResolvers() @RestResource.paramResolvers()} annotation.
 	 *
 	 * @param paramResolvers The parameter resolvers to add to this config.
 	 * @return This object (for method chaining).
@@ -444,9 +452,11 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Adds class-level serializers to this resource.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#serializers() @RestResource.serializers()} annotation.
+	 * This is the programmatic equivalent to the {@link RestResource#serializers() @RestResource.serializers()}
+	 * annotation.
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 *
 	 * @param serializers The serializer classes to add to this config.
 	 * @return This object (for method chaining).
@@ -460,12 +470,14 @@ public class RestConfig implements ServletConfig {
 	 * Adds class-level serializers to this resource.
 	 * <p>
 	 * Same as {@link #addSerializers(Class...)} except allows you to pass in serializer instances.
-	 * The actual serializer ends up being the result of this operation using the bean filters, pojo swaps, and properties on this config:
+	 * The actual serializer ends up being the result of this operation using the bean filters, pojo swaps, and
+	 * properties on this config:
 	 * <p class='bcode'>
 	 * 	serializer = serializer.builder().beanFilters(beanFilters).pojoSwaps(pojoSwaps).properties(properties).build();
 	 * </p>
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 *
 	 * @param serializers The serializers to add to this config.
 	 * @return This object (for method chaining).
@@ -480,7 +492,8 @@ public class RestConfig implements ServletConfig {
 	 * <p>
 	 * This is the programmatic equivalent to the {@link RestResource#parsers() @RestResource.parsers()} annotation.
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 *
 	 * @param parsers The parser classes to add to this config.
 	 * @return This object (for method chaining).
@@ -494,12 +507,14 @@ public class RestConfig implements ServletConfig {
 	 * Adds class-level parsers to this resource.
 	 * <p>
 	 * Same as {@link #addParsers(Class...)} except allows you to pass in parser instances.
-	 * The actual parser ends up being the result of this operation using the bean filters, pojo swaps, and properties on this config:
+	 * The actual parser ends up being the result of this operation using the bean filters, pojo swaps, and properties
+	 * on this config:
 	 * <p class='bcode'>
 	 * 	parser = parser.builder().beanFilters(beanFilters).pojoSwaps(pojoSwaps).properties(properties).build();
 	 * </p>
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 *
 	 * @param parsers The parsers to add to this config.
 	 * @return This object (for method chaining).
@@ -514,7 +529,8 @@ public class RestConfig implements ServletConfig {
 	 * <p>
 	 * This is the programmatic equivalent to the {@link RestResource#encoders() @RestResource.encoders()} annotation.
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 * <p>
 	 * By default, only the {@link IdentityEncoder} is included in this list.
 	 *
@@ -542,12 +558,14 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Adds class-level converters to this resource.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#converters() @RestResource.converters()} annotation.
+	 * This is the programmatic equivalent to the {@link RestResource#converters() @RestResource.converters()}
+	 * annotation.
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 * <p>
 	 * By default, this config includes the following converters:
-	 * <ul class='spaced-list'>
+	 * <ul>
 	 * 	<li>{@link StreamableHandler}
 	 * 	<li>{@link WritableHandler}
 	 * 	<li>{@link ReaderHandler}
@@ -582,7 +600,8 @@ public class RestConfig implements ServletConfig {
 	 * <p>
 	 * This is the programmatic equivalent to the {@link RestResource#guards() @RestResource.guards()} annotation.
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 *
 	 * @param guards The guard classes to add to this config.
 	 * @return This object (for method chaining).
@@ -617,7 +636,7 @@ public class RestConfig implements ServletConfig {
 	 * Refer to {@link MimetypesFileTypeMap#addMimeTypes(String)} for an explanation of the format.
 	 * <p>
 	 * By default, this config includes the following mime-type definitions:
-	 * <ul class='spaced-list'>
+	 * <ul>
 	 * 	<li><js>"text/css css CSS"</js>
 	 * 	<li><js>"text/html html htm HTML"</js>
 	 * 	<li><js>"text/plain txt text TXT"</js>
@@ -641,9 +660,11 @@ public class RestConfig implements ServletConfig {
 	 * Adds class-level default HTTP request headers to this resource.
 	 * <p>
 	 * Default request headers are default values for when HTTP requests do not specify a header value.
-	 * For example, you can specify a default value for <code>Accept</code> if a request does not specify that header value.
+	 * For example, you can specify a default value for <code>Accept</code> if a request does not specify that header
+	 * value.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#defaultRequestHeaders() @RestResource.defaultRequestHeaders()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#defaultRequestHeaders() @RestResource.defaultRequestHeaders()} annotation.
 	 *
 	 * @param name The HTTP header name.
 	 * @param value The HTTP header value.
@@ -658,9 +679,11 @@ public class RestConfig implements ServletConfig {
 	 * Adds class-level default HTTP request headers to this resource.
 	 * <p>
 	 * Default request headers are default values for when HTTP requests do not specify a header value.
-	 * For example, you can specify a default value for <code>Accept</code> if a request does not specify that header value.
+	 * For example, you can specify a default value for <code>Accept</code> if a request does not specify that header
+	 * value.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#defaultRequestHeaders() @RestResource.defaultRequestHeaders()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#defaultRequestHeaders() @RestResource.defaultRequestHeaders()} annotation.
 	 *
 	 * @param headers HTTP headers of the form <js>"Name: Value"</js>.
 	 * @return This object (for method chaining).
@@ -680,11 +703,13 @@ public class RestConfig implements ServletConfig {
 	 * Adds class-level default HTTP response headers to this resource.
 	 * <p>
 	 * Default response headers are headers that will be appended to all responses if those headers have not already been
-	 * 	set on the response object.
+	 * set on the response object.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#defaultResponseHeaders() @RestResource.defaultResponseHeaders()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#defaultResponseHeaders() @RestResource.defaultResponseHeaders()} annotation.
 	 * <p>
-	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the annotation.
+	 * Values are added AFTER those found in the annotation and therefore take precedence over those defined via the
+	 * annotation.
 	 *
 	 * @param name The HTTP header name.
 	 * @param value The HTTP header value.
@@ -699,9 +724,10 @@ public class RestConfig implements ServletConfig {
 	 * Adds class-level default HTTP response headers to this resource.
 	 * <p>
 	 * Default response headers are headers that will be appended to all responses if those headers have not already been
-	 * 	set on the response object.
+	 * set on the response object.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#defaultResponseHeaders() @RestResource.defaultResponseHeaders()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#defaultResponseHeaders() @RestResource.defaultResponseHeaders()} annotation.
 	 *
 	 * @param headers HTTP headers of the form <js>"Name: Value"</js>.
 	 * @return This object (for method chaining).
@@ -723,7 +749,7 @@ public class RestConfig implements ServletConfig {
 	 * Response handlers are responsible for converting various POJOs returned by REST methods into actual HTTP responses.
 	 * <p>
 	 * By default, this config includes the following response handlers:
-	 * <ul class='spaced-list'>
+	 * <ul>
 	 * 	<li>{@link StreamableHandler}
 	 * 	<li>{@link WritableHandler}
 	 * 	<li>{@link ReaderHandler}
@@ -732,7 +758,8 @@ public class RestConfig implements ServletConfig {
 	 * 	<li>{@link DefaultHandler}
 	 * </ul>
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#responseHandlers() @RestResource.responseHandlers()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#responseHandlers() @RestResource.responseHandlers()} annotation.
 	 *
 	 * @param responseHandlers The response handlers to add to this config.
 	 * @return This object (for method chaining).
@@ -880,7 +907,8 @@ public class RestConfig implements ServletConfig {
 	 * 	<li>{@link CharSequence}
 	 * 	<li><code><jk>byte</jk>[]</code>
 	 * </ul>
-	 * The contents of all these stylesheets will be aggregated into a single page in the order they are specified in this list.
+	 * The contents of all these stylesheets will be aggregated into a single page in the order they are specified in
+	 * this list.
 	 *
 	 * @param styleSheets The new list of style sheets that make up the <code>styles.css</code> page.
 	 * @return This object (for method chaining).
@@ -983,12 +1011,14 @@ public class RestConfig implements ServletConfig {
 	 * <p>
 	 * Use this method to specify resources located in the classpath to be served up as static files.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#staticFiles() @RestResource.staticFiles()} annotation.
+	 * This is the programmatic equivalent to the {@link RestResource#staticFiles() @RestResource.staticFiles()}
+	 * annotation.
 	 *
 	 * @param resourceClass The resource class used to resolve the resource streams.
 	 * @param staticFilesString A JSON string denoting a map of child URLs to classpath subdirectories.
 	 * For example, if this string is <js>"{htdocs:'docs'}"</js> with class <code>com.foo.MyResource</code>,
-	 * then URLs of the form <js>"/resource-path/htdocs/..."</js> will resolve to files located in the <code>com.foo.docs</code> package.
+	 * then URLs of the form <js>"/resource-path/htdocs/..."</js> will resolve to files located in the
+	 * <code>com.foo.docs</code> package.
 	 * @return This object (for method chaining).
 	 */
 	public RestConfig addStaticFiles(Class<?> resourceClass, String staticFilesString) {
@@ -1001,10 +1031,12 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Overrides the default REST resource resolver.
 	 * <p>
-	 * The resource resolver is used to resolve instances from {@link Class} objects defined in the {@link RestResource#children()} annotation.
+	 * The resource resolver is used to resolve instances from {@link Class} objects defined in the
+	 * {@link RestResource#children()} annotation.
 	 * The default value is the base class {@link RestResourceResolver}.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#resourceResolver() @RestResource.resourceResolver()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#resourceResolver() @RestResource.resourceResolver()} annotation.
 	 *
 	 * @param resourceResolver The new resource resolver.
 	 * @return This object (for method chaining).
@@ -1045,7 +1077,8 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Sets name of the header used to denote the client version on HTTP requests.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#clientVersionHeader() @RestResource.clientVersionHeader()} annotation.
+	 * This is the programmatic equivalent to the
+	 * {@link RestResource#clientVersionHeader() @RestResource.clientVersionHeader()} annotation.
 	 *
 	 * @param clientVersionHeader The name of the HTTP header that denotes the client version.
 	 * @return This object (for method chaining).
@@ -1061,7 +1094,7 @@ public class RestConfig implements ServletConfig {
 	 * The format of this value is plain text.
 	 * <p>
 	 * It gets wrapped in a <code><xt>&lt;h3&gt; <xa>class</xa>=<xs>'title'</xs>&gt;</xt></code> element and then added
-	 * 	to the <code><xt>&lt;header&gt;</code> section on the page.
+	 * to the <code><xt>&lt;header&gt;</code> section on the page.
 	 * <p>
 	 * If not specified, the page title is pulled from one of the following locations:
 	 * <ol>
@@ -1100,7 +1133,7 @@ public class RestConfig implements ServletConfig {
 	 * The format of this value is plain text.
 	 * <p>
 	 * It gets wrapped in a <code><xt>&lt;h5&gt; <xa>class</xa>=<xs>'description'</xs>&gt;</xt></code> element and then
-	 * 	added to the <code><xt>&lt;header&gt;</code> section on the page.
+	 * added to the <code><xt>&lt;header&gt;</code> section on the page.
 	 * <p>
 	 * If not specified, the page title is pulled from one of the following locations:
 	 * <ol>
@@ -1162,9 +1195,10 @@ public class RestConfig implements ServletConfig {
 	 * The format of this value is HTML.
 	 * <p>
 	 * The page header normally contains the title and description, but this value can be used to override the contents
-	 * 	to be whatever you want.
+	 * to be whatever you want.
 	 * <p>
-	 * When a value is specified, the {@link #setHtmlTitle(String)} and {@link #setHtmlDescription(String)} values will be ignored.
+	 * When a value is specified, the {@link #setHtmlTitle(String)} and {@link #setHtmlDescription(String)} values will
+	 * be ignored.
 	 * <p>
 	 * A value of <js>"NONE"</js> can be used to force no header.
 	 * <p>
@@ -1184,7 +1218,7 @@ public class RestConfig implements ServletConfig {
 	 * Sets the links in the HTML nav section.
 	 * <p>
 	 * The format of this value is a lax-JSON map of key/value pairs where the keys are the link text and the values are
-	 * 	relative (to the servlet) or absolute URLs.
+	 * relative (to the servlet) or absolute URLs.
 	 * <p>
 	 * The page links are positioned immediately under the title and text.
 	 * <p>
@@ -1300,7 +1334,7 @@ public class RestConfig implements ServletConfig {
 	 * The format of this value is CSS.
 	 * <p>
 	 * This field can contain variables (e.g. <js>"$L{my.localized.variable}"</js>) and can use URL protocols defined
-	 * 	by {@link UriResolver}.
+	 * by {@link UriResolver}.
 	 * <p>
 	 * This is the programmatic equivalent to the {@link HtmlDoc#cssUrl() @HtmlDoc.cssUrl()} annotation.
 	 *
@@ -1328,7 +1362,8 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Specifies the text to display when serializing an empty array or collection.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link HtmlDoc#noResultsMessage() @HtmlDoc.noResultsMessage()} annotation.
+	 * This is the programmatic equivalent to the {@link HtmlDoc#noResultsMessage() @HtmlDoc.noResultsMessage()}
+	 * annotation.
 	 *
 	 * @param value The text to display when serializing an empty array or collection.
 	 * @return This object (for method chaining).
@@ -1358,9 +1393,8 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Specifies the template class to use for rendering the HTML page.
 	 * <p>
-	 * By default, uses {@link HtmlDocTemplateBasic} to render the contents, although you can provide
-	 * 	 your own custom renderer or subclasses from the basic class to have full control over how the page is
-	 * 	rendered.
+	 * By default, uses {@link HtmlDocTemplateBasic} to render the contents, although you can provide your own custom
+	 * renderer or subclasses from the basic class to have full control over how the page is rendered.
 	 * <p>
 	 * This is the programmatic equivalent to the {@link HtmlDoc#template() @HtmlDoc.template()} annotation.
 	 *
@@ -1374,7 +1408,7 @@ public class RestConfig implements ServletConfig {
 
 	/**
 	 * Defines widgets that can be used in conjunction with string variables of the form <js>"$W{name}"</js>to quickly
-	 * 	generate arbitrary replacement text.
+	 * generate arbitrary replacement text.
 	 * <p>
 	 * Widgets are inherited from parent to child, but can be overridden by reusing the widget name.
 	 *
@@ -1419,7 +1453,8 @@ public class RestConfig implements ServletConfig {
 	 * The call handler is the object that handles execution of REST HTTP calls.
 	 * Subclasses can be created that customize the behavior of how REST calls are handled.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#callHandler() @RestResource.callHandler()} annotation.
+	 * This is the programmatic equivalent to the {@link RestResource#callHandler() @RestResource.callHandler()}
+	 * annotation.
 	 *
 	 * @param restHandler The new call handler for this resource.
 	 * @return This object (for method chaining).
@@ -1435,7 +1470,8 @@ public class RestConfig implements ServletConfig {
 	 * The call handler is the object that handles execution of REST HTTP calls.
 	 * Subclasses can be created that customize the behavior of how REST calls are handled.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#callHandler() @RestResource.callHandler()} annotation.
+	 * This is the programmatic equivalent to the {@link RestResource#callHandler() @RestResource.callHandler()}
+	 * annotation.
 	 *
 	 * @param restHandler The new call handler for this resource.
 	 * @return This object (for method chaining).
@@ -1451,7 +1487,8 @@ public class RestConfig implements ServletConfig {
 	 * The info provider provides all the various information about a resource such as the Swagger documentation.
 	 * Subclasses can be created that customize the information.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#infoProvider() @RestResource.infoProvider()} annotation.
+	 * This is the programmatic equivalent to the {@link RestResource#infoProvider() @RestResource.infoProvider()}
+	 * annotation.
 	 *
 	 * @param infoProvider The new info provider for this resource.
 	 * @return This object (for method chaining).
@@ -1467,7 +1504,8 @@ public class RestConfig implements ServletConfig {
 	 * The info provider provides all the various information about a resource such as the Swagger documentation.
 	 * Subclasses can be created that customize the information.
 	 * <p>
-	 * This is the programmatic equivalent to the {@link RestResource#infoProvider() @RestResource.infoProvider()} annotation.
+	 * This is the programmatic equivalent to the {@link RestResource#infoProvider() @RestResource.infoProvider()}
+	 * annotation.
 	 *
 	 * @param infoProvider The new info provider for this resource.
 	 * @return This object (for method chaining).
@@ -1479,6 +1517,7 @@ public class RestConfig implements ServletConfig {
 
 	/**
 	 * Creates a new {@link PropertyStore} object initialized with the properties defined in this config.
+	 *
 	 * @return A new property store.
 	 */
 	protected PropertyStore createPropertyStore() {
@@ -1493,7 +1532,8 @@ public class RestConfig implements ServletConfig {
 	/**
 	 * Returns the external configuration file for this resource.
 	 * <p>
-	 * The configuration file location is determined via the {@link RestResource#config() @RestResource.config()} annotation on the resource.
+	 * The configuration file location is determined via the {@link RestResource#config() @RestResource.config()}
+	 * annotation on the resource.
 	 * <p>
 	 * The config file can be programmatically overridden by adding the following method to your resource:
 	 * <p class='bcode'>
@@ -1539,7 +1579,8 @@ public class RestConfig implements ServletConfig {
 	 * 	<li>{@link SwitchVar}
 	 * </ul>
 	 * <p>
-	 * Note that the variables supported here are only a subset of those returned by {@link RestRequest#getVarResolverSession()}.
+	 * Note that the variables supported here are only a subset of those returned by
+	 * {@link RestRequest#getVarResolverSession()}.
 	 *
 	 * @return The variable resolver for this resource.  Never <jk>null</jk>.
 	 */