| <!-- |
| /*************************************************************************************************************************** |
| * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file |
| * distributed with this work for additional information regarding copyright ownership. The ASF licenses this file |
| * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance |
| * with the License. You may obtain a copy of the License at |
| * |
| * http://www.apache.org/licenses/LICENSE-2.0 |
| * |
| * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an |
| * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the |
| * specific language governing permissions and limitations under the License. |
| ***************************************************************************************************************************/ |
| --> |
| |
| 5.0.0.20 (Apr 7, 2013) |
| |
| <p> |
| Juno 5.0.0.20 is a major update. |
| </p> |
| <h5 class='topic w800'>Core API changes</h5> |
| <ul class='spaced-list'> |
| <li> |
| New Jena-based {@link oaj.jena.RdfSerializer} for serializing POJOs to RDF/XML, RDF/XML-ABBREV, N-Triple, Turtle, and N3.<br> |
| Serializes ANY POJOs to RDF, even simple objects and primitives. |
| </li> |
| <li> |
| New Jena-based {@link oaj.jena.RdfParser} for parsing RDF/XML, RDF/XML-ABBREV, N3, Turtle, and N-Triple back into POJOs. |
| </li> |
| <li> |
| <dc>XmlSerializerContext.XML_autoDetectNamespaces</dc> default changed to <jk>true</jk>.<br> |
| The old default value would cause XML with unmapped namespaces if you didn't manually specify them via the <dc>XmlSerializerContext.XML_namespaces</dc> annotation.<br> |
| While setting the default to <jk>true</jk> is somewhat slower (since the serializer must crawl the POJO tree to find namespaces), the benefits of having it work out-of-the-box outweighs the performance concerns.<br> |
| For developers concerned about performance, they can always change it back to false and specify the namespaces themselves. |
| </li> |
| </ul> |
| <h5 class='topic w800'>REST server API changes</h5> |
| <ul class='spaced-list'> |
| <li> |
| Allow inheritance of <dc>@RestResource</dc> annotation.<br> |
| Serializers, parsers, filters, properties , guards, and converters definitions are automatically inherited from parent classes and interfaces. |
| </li> |
| <li> |
| Enhancements to {@link oajr.annotation.RestMethod @RestMethod} annotation: |
| <ul> |
| <li> |
| New <c>RestMethod.filters()</c> annotation for defining POJO filters at the method level. |
| </li> |
| <li> |
| New <dc>RestMethod.serializersInherit()</dc> and <dc>RestMethod.parsersInherit()</dc> annotations for controlling how serializers and parsers (and associated filters and properties) are inherited from the class.<br> |
| This replaces the previous <c>addSerializers</c> and <c>addParsers</c> annotations. |
| </ul> |
| </li> |
| <li> |
| New <dc>RestServletJenaDefault</dc> servlet that includes serialization/parsing support for all Jena-based serializers and parsers. |
| </li> |
| <li> |
| New <dc>DefaultJenaProvider</dc> JAX-RS provider that includes serialization/parsing support for all Jena-based serializers and parsers. |
| </li> |
| <li> |
| Eliminated <c>RestServletChild</c> class.<br> |
| It's redundant with the introduction of inheritable annotations. |
| </li> |
| <li> |
| New methods on {@link oajr.RestServlet}: |
| <ul> |
| <li><c>RestServlet.createConfigFactory()</c></li> |
| <li><c>RestServlet.createSerializers()</c></li> |
| <li><c>RestServlet.createParsers()</c></li> |
| </ul> |
| These augment the existing <c>getBeanContext()</c> / <c>getSerializers()</c> / <c>getParsers()</c> methods. |
| </li> |
| </ul> |
| <h5 class='topic w800'>REST client API changes</h5> |
| <ul class='spaced-list'> |
| <li> |
| New <c>RestCall.setDateHeader(String,Object)</c> method for setting ISO8601 datetime headers. |
| </li> |
| </ul> |