Construct HTML fragments Atom feeds Swagger documents using Apache Juneau

What is Apache Juneau


Apache Juneau is a set of open source modules for marshaling POJOs to a wide variety of content types using a common framework, and for creating sophisticated self-documenting REST interfaces and microservices quickly and with very little code.Modules of the single cohesive Java ecosystem can be find here

As the definition says the module Apache Juneau MARSHALL is handling core process on marshaling POJOS.A tech guide on this module can be find here,

I will be focusing about the another core module in Apache Juneau which used construct Html fragments as Java objects.This is call as juneau-dto.

This module is a separate core module which can be used as a separate juneau module on you’re Java projects.It has 3 ways introduced to integrate with you’re java projects.

1.Maven Dependency

2. Java Library

3.OSGi Module

It has provided several libraries that allows you to serialize commonly used documents.

  • HTML5
  • Atom
  • Cognos
  • JSON-Schema
  • Swagger 2.0

Usage of HTML5 DTOs to generate HTML5 documents and fragments.


And not only converting to HTML5 documents.It can serialize HTML5 beans using JsonSerializers to clean JSON objects.


With the use of ATOM DTOs and XML serializer Atom feeds which are developed according to Atom standards can be generated.All Atom feeds that generates are well-formed XML documents with Atom predefined element types.


And another use case is generating Swagger documents.

The following is an example Swagger document from the Swagger website.


Like wise juneau-dto module will help you on Constructing Html5 , Swagger and many more.This is a single core module in Apache Juneau.Tech world giants like IBM and Salesforce are using Apache Juneau because of the ability it has as a cohesive framework that allows developers to marshal POJOs (Plain Old Java Objects) and develop REST (Representational State Transfer) microservices and APIs..Since the project is opensource any one can contribute to improve it.

#apache #opensource #openmrs

#apache #opensource #openmrs