P3/COBOL for Cloud: Gradle, Maven and a little bit of ANT
P3/COBOL for Cloud: Batch Server
The framework underpinning an Enterprise application is key for all of this, which makes it important to ask: am I able to use my existing COBOL application, and specifically the business core, in a modern framework?
To explore this, we first take a look at P3/COBOL in the context of Java EE and Spring Boot, followed by container based deployment (for instance, Docker). We also consider the development flow.
P3/COBOL for Cloud: Java EE & Spring Boot
Today, development of modern applications following a RestAPI or MVC principle uses Java EE or Spring Boot. While that leads to changes in interfaces compared to legacy architecture, it leaves the business core untouched.
P3/COBOL for Cloud simply takes the COBOL business core and integrates it into the new Java architecture. Java-typical interfaces allow uninterrupted and continued use of COBOL programmes in Java.
Transferring parameters to the COBOL programme happens as if it were Java:
Client call via RestAPI
Transfer in JSON format
Dto-mapping via Getter- or Setter methods (from JSON object to Java object within COBOL language structures)
Transfer to the COBOL program (Java)
This means: reliable business logic developed, tried and tested over decades, with continued significant business value, and written in COBOL, needs no re-invention or re-development.
The chosen Java framework and flexible configuration within P3/COBOL for Cloud guarantee transaction safety.
It only takes a few simple steps to transfer COBOL to the Cloud.
P3/COBOL for Cloud: Docker, Podman and Co.
Over recent years, productive environments – where software is run – have changed. For one, flexible containers are increasingly taking over the functions and tasks of unwieldy virtual machines.
And when it comes to orchestrating containers, Kubernetes is often the go-to solution. But, there are alternatives:
Docker Swarm (Docker proprietary tool for cluster orchestration)
Apache Mesos (Apache solution for large systems)
AWS Fargate
OpenShift (RedHat, capable of roll outs on various Cloud environments)
Rancher (based on Kubernetes: useful to manage multiple Kubernetes clusters through one central interface)
Nomad (HashiCorp solution which can be used together with Kubernetes, or in isolation)
All these solutions have one common denominator: they provide deployable software in a container.
P3/COBOL for Cloud transfers COBOL applications to Java. Packaging takes place through a Java typical JAR archive.
As explained in the above Java EE and Spring Boot example, the entire application is packaged in a container image and deployed.
And with that, every COBOL application is container ready.
P3/COBOL for Cloud: Gradle, Maven and a bit of ANT in between
Thanks to P3/COBOL Eclipse Plugin, developers who use Eclipse as development platform can combine both worlds: Java development and COBOL development with just one developer tool.
P3/COBOL integration into familiar and modern build and deploy processes with Maven and Gradle is easy:
This example, using Gradle, shows how easy it is to integrate P3/COBOL in a modern build system.
Gradle or Maven offer everything needed for build, test and deploy. As a result, COBOL and Java applications can be automated together, from development to production, through CI/CD pipelines (continuous integration / continuous delivery).
With P3/COBOL for Cloud, COBOL applications are CI/CD ready.