5.1.0.19 (Aug 15, 2015)

Juno 5.1.0.19 is a minor update in terms of core functionality. But it introduces a {@del Microservices} project for building REST microservices and docker containers.

##### Core

- Beans can now be serialized to and parsed from {@del oaj.ObjectMap ObjectMaps}. See Serializing to ObjectMaps for details.
- New {@del oaj.ObjectMap#include(String[])} and {@del oaj.ObjectMap#exclude(String[])} methods.
- {@link oaj.html.annotation.Html @Html} annotations can now be applied to bean properties.
- New {@link oaj.utils.IOPipe} utility class.
- Behavior change on {@del StringVarResolver}. null input now results in blank strings instead of null.

##### Client

- New {@del RestClient#doCallback(String)} method.

##### Server

- New {@link oajr.RestRequest#getHeaders()} method.
- New RestResponse.getUnbufferedWriter() method.
- Fixed bug that was preventing x-response-headers parameter from working correctly.
- Added {@link oaj.annotation.Bean#properties() @Bean.properties} annotations to the various classes in org.apache.juneau.rest.labels so that the order of the bean properties are consistent on all JVMs. On IBM JVMs this is unnecessary because the order of the properties as defined in the class are stored in the bytecode. Other JVMs such as OpenJRE do not implement this feature causing the bean properties to be in random order.
- New {@del ResourceDescription#ResourceDescription(RestRequest,String,String)} constructor.