Skip to main content

Release 5.0.0.14

Date: Mar 23, 2013

Juno 5.0.0.14 is a major update.

The biggest change is that the RestSerializer, RestParser, RestSerializerGroup, and RestParserGroup classes have been eliminated entirely. Instead, the existing Serializer, Parser, SerializerGroup, and ParserGroup classes of the core API have been augmented to replace them.

Adoptions will be required if you have previously used these classes.

Core API changes

  • New org.apache.juneau.serializer package.

    • Entirely reworked class hierarchy to make it easier to define new serializers.
    • New WriterSerializer base class for defining character-based serializers.
    • New OutputStreamSerializer base class for defining byte-based serializers.
    • Updated SerializerGroup class with full support for RFC2616 Accept-Content headers.
    • Improved cloning support on serializers and serializer groups.
  • New org.apache.juneau.parser package.

    • Entirely reworked class hierarchy to make it easier to define new parsers.
    • New ReaderParser base class for defining character-based parsers.
    • New InputStreamParser base class for defining byte-based parsers.
    • Improved cloning support on parsers and parser groups.
  • New org.apache.juneau.swap package.

    • Cleaner class structure.
    • Improved BeanFilter class for defining property filters on beans.
    • Improved PojoQuery class for defining filters on objects (previously called ObjectFilter).
  • New org.apache.juneau.encoders package.

    • Defines API for Encoders for enabling compression in REST servlets and clients.
    • Previously, gzip compression was enabled by default. This new API allows you to plug in your own compression algorithms.
    • New GzipEncoder class for enabling gzip compression.
    • New EncoderGroup class for managing multiple encoders and finding them based on RFC2616 Accept-Encoding header values.
  • New org.apache.juneau.plaintext package.

  • New org.apache.juneau.jso package.

    • New JsoSerializer class for serializing application/x-java-serialized-object content.
  • New org.apache.juneau.soap package.

  • Improved cloning support on the BeanContext class.

    • Better caching. Improved caching performance.
  • JsonMap and JsonList changed to ObjectMap and ObjectList to better reflect that they're not limited to just JSON support.

  • Renamed PojoSwap to PojoQuery to not confuse it with the new Filter API.

REST server API changes

  • Eliminated org.apache.juneau.rest.serializers and org.apache.juneau.rest.parsers packages.
    • All existing REST serializers and parsers merged into the core API.

REST client API changes

  • Simplified RestClient API.

    • You can now only specify a single serializer or parser per client. This significantly simplifies the code.
    • Support for Encoders.
  • Eliminated RestCmdLine (since it's essentially redundant with CURL).