7.2.1 (Sept 25, 2018)
7.2.1 is a major release that introduces several significant new features:
ExternalDocs
Items
Schema
SubItems
RemoteInterfaceServlet or REST @Query ("*" ), @FormData ("*" ), @Header ("*" ), @Path ("*" )
@Bean (typeName) was not being detected on non-bean POJO classes.
@BeanProperty (name) but forget to
add it to your @Bean (properties) annotation.
@Html (asXml) and @Html (asPlainText) replaced with
{@link oaj.html.annotation.Html#format() @Html(format)}.
@Html (format=XML ).
org.apache.juneau.parser.ParseException: Expected '[' at beginning of JSON array. At line 80, column 20. While parsing into: currentClass: List<String> currentProperty: required: java.util.List, field=[null], getter=[public java.util.List org.apache.juneau.dto.swagger.SchemaInfo.getRequired()], setter=[public org.apache.juneau.dto.swagger.SchemaInfo org.apache.juneau.dto.swagger.SchemaInfo.setRequired(java.util.Collection)] ---start-- 0075: "name": "body", 0076: "description": "Pet object that needs to be added to the store", 0077: "required": true, 0078: "schema": { 0079: "required": true, 0080: } 0081: } 0082: ], 0083: "responses": { 0084: "405": { 0085: "description": "Invalid input" ---end---
toString() method.
getX() and isX() method, the getX() method takes precedence.
@JsonSchema annotation.
NullPointerException when serializing beans with a dyna-property (i.e. @Bean ("*" ))
which returns a @Bean ("*" )) using a method that returns a collection of extra keys.
JsonSerializer.Simple is JsonSerializer.Simple class has been moved into the top-level {@link oaj.json.SimpleJsonSerializer} class.
RdfSerializer.Xml -> {@link oaj.jena.RdfXmlSerializer}
RdfSerializer.XmlAbbrev -> {@link oaj.jena.RdfXmlAbbrevSerializer}
RdfSerializer.N3 -> {@link oaj.jena.N3Serializer}
RdfSerializer.NTriple -> {@link oaj.jena.NTripleSerializer}
RdfSerializer.Turtle -> {@link oaj.jena.TurtleSerializer}
RdfParser.Xml -> {@link oaj.jena.RdfXmlParser}
RdfParser.N3 -> {@link oaj.jena.N3Parser}
RdfParser.NTriple -> {@link oaj.jena.NTripleParser}
RdfParser.Turtle -> {@link oaj.jena.TurtleParser}
new Select().disabled(true ) will produce <select disabled='disabled'>
UriResolver when request path info had special characters.
text/html+schema instead of text/html for schema documents).
RemoteableServlet class has been moved and renamed to RemoteInterfaceServlet.
RemoteInterfaceServlet now provides a form page for invoking remote interface methods in a browser.
@HtmlDoc (script) when serialized which could cause script lines to become commented out.
@Path ("/*" ) to access the path remainder which includes all the new OpenAPI parsing support.
ReaderResource
ReaderResourceBuilder
StreamResource
StreamResourceBuilder
nav() are free-form HTML that gets rendered immediately after the navigation links.
$F variable can now be used as a initialization time variable.
AtomFeedResource example pulls a bean example from a file on the classpath:
$F variable to retrieve localized versions of files (since you're not within
the scope of a client request.
RestResource.nowrap() annotation has been changed to a string with a default value of @RestMethod (inherit) annotation has been removed and replaced with the following classes:
Inherit class.
RequestPathMatch class has been renamed to {@link oajr.RequestPath}.
RedirectToServletRoot class has been renamed to {@link oajr.helper.SeeOtherRoot}.
Accept and Content-Type headers:
RestCall.execute() method.
RestCall.input(Object) method renamed to {@link oajrc.RestCall#body(Object)} to match OpenAPI terminology.
RestClient and RestClientBuilder protected so that they can be subclassed.
RestClient.getRemoteableProxy() methods have been split into separate methods for Remote Interfaces and Remote Resources:
RestClient.getRemoteInterface(Class)
RestClient.getRemoteInterface(Class,Object)
RestClient.getRemoteInterface(Class,Object,Serializer,Parser)
files:
files directory in the working directory,
and you have access to modify the CSS theme files.
SwaggerUI.css file controls the look-and-feel of the Swagger UI, so you can make
modification there as well.
BasicRestConfig interface (which defines the default settings for the BasicRestServlet class)
now looks like this...
PoweredByApache widget which used to serve as a page footer has been eliminated.