Welcome!

Microservices Expo Authors: Elizabeth White, Liz McMillan, Yeshim Deniz, Pat Romanski, Zakia Bouachraoui

Related Topics: Java IoT, Microsoft Cloud, @CloudExpo

Java IoT: Article

PaaS: .NET vs Java EE

Java EE PaaS options

Windows Azure and PaaS for the .NET World
Ever since the beginning of this century a comparison between the platform capabilities of Java EE (Java Enterprise Edition) and Microsoft .NET has been a common discussion when choosing an enterprise platforms.

With the advent of Cloud, Microsoft has taken a lead with the Windows Azure PaaS (Platform as a Service).

Many key decision makers for cloud enablement now have questions on how good an equivalent the Java EE platform could be.

Windows Azure Stack
From a platform perspective Windows Azure provides a complete list of options that are available to.NET developers  in a  ‘On Premise' setup, which includes:

  • Full support for .NET framework and languages like C#, Visual Basic
  • Web development using ASP.NET
  • Distributed processing using WCF (Windows Communication Framework)
  • Enterprise database support with SQL Azure
  • Data access services using ADO.NET and LINQ
  • Rich Internet Application support using Silverlight

Above all is out-of-the box support from .NET IDE VisualStudio, which provides customized templates for the development and deployment of applications to cloud.

Windows Azure acts as a robust PaaS in the sense that with the support from Visual Studio we could develop, configure and publish a package from an end-to-end perspective to the Azure platform.

Java EE PaaS Options
The Java counterpart of the .NET platform, referred to earlier as J2EE, is now called  Java EE and it offers several enterprise class features for multi-tiered enterprise development. Java Platform, Enterprise Edition (Java EE) 6 is the industry standard for enterprise Java computing. Utilize the new, lightweight Java EE 6 Web Profile to create next-generation web applications, and the full power of the Java EE 6 platform for enterprise applications. Developers will benefit from productivity improvements with more annotations, more POJOs, simplified packaging, and less XML configuration. The following are some of the PaaS offering for Java EE in Cloud.

1. Google App Engine for Java
Google App Engine enables you to build and host web apps on the same systems that power Google applications. App Engine offers fast development and deployment; simple administration, with no need to worry about hardware, patches or backups; and effortless scalability.

Google App Engine provides a PaaS environment for both Java EE and Python. The following features are supported especially for Java EE:

  • The Java environment provides a Java 6 JVM, a Java Servlets interface, and support for standard interfaces to the App Engine scalable datastore and services, such as JDO, JPA, JavaMail, and JCache.
  • Much like Visual Studio for Azure, Google App Engine for the Java EE Platform is supported by the Eclipse IDE for simplified development and deployment of Java EE applications.

Unsupported Features in Google App Engine:

  • Enterprise JavaBeans (EJB) is not supported as part of the Google Apps Engine
  • A UI development framework like JSF (JavaServer Faces) is not directly supported
  • Other Java EE standards like JMS (Messaging Service) and Web Service Specifications

2. Makara (Red Hat) PaaS Platform
The Makara Cloud Application Platform is the first intelligent auto-scaling solution for applications in the cloud that doesn't require templates to be tweaked or scripts to be written and maintained. Create rich, collaborative Custom Cloud 2 apps fast without buying hardware or installing software. Force.com provide a complete platform with a simplified programming model.

The Makara Platform enables organizations to deploy, manage, monitor and scale their Java and LAMP applications on both public and private clouds, such as Amazon EC2 and VMware-based Clouds, without any modifications.

Currently supported software components include:

  • Apache
  • MySQL
  • PHP
  • Java
  • Tomcat
  • JBoss

Much like the Google App Engine, enterprise Java EE features such as JMS and EJB are not available in the Makara platform and also the reference implementations and case studies have yet to evolve.

3. Force.com
SalesForce is a leading provider of the SaaS platform for customer relationship management on Cloud. They also have a PaaS offering Force.com that give developers a platform to create rich, collaborative Custom Cloud 2 apps fast without buying hardware or installing software. Force.com provides a complete platform with a simplified programming model.

The development platform of Force.com, called Apex, is ‘Java Like' but not truly Java.

With Force.com, you get a full enterprise application development stack including a complete user interface to your data, comprehensive reporting and analytic capabilities, a flexible security and sharing model, and workflow and approvals - all available and integrated from the start. You can even leverage extended features such as built-in internationalization, full support for mobile devices, and integration with existing systems.

Some of the pros that makes it convenient for Java EE developers are :

  • Eclipse-based IDE
  • Syntax similar to Java EE
  • Web services support
  • Standard MVC design
  • HTML and other web technologies such as AJAX and CSS

From a classic perspective, Force.com is not a Java EE platform but the similarities are enough for it to be considered as a PaaS choice by Java EE developers.

4. Amazon EC2 + IBM Stack
This is not a PaaS offering but rather a customized IaaS offering. However, for the sake of choice for Java EE on Cloud, this is still a strong contender.

Amazon EC2 presents a true virtual computing environment that allows you to use web service interfaces to launch instances with a variety of operating systems, load them with your custom application environment, manage your network's access permissions, and run your image using as many or few systems as you desire.

Amazon EC2 enables partners and customers to build and customize Amazon Machine Images (AMIs) with software based on their needs. IBM and Amazon Web Services have teamed up to provide the ability to use Amazon EC2 to run several IBM platform technologies such as WebSphere Application Server, which provides a Java EE platform.

Conclusion
Java EE PaaS offerings are evolving and we'll see more players in the future. However, due to full support from the Azure platform, .NET as a PaaS is fully mature. But the above mentioned Java EE PaaS will support developer needs.

More Stories By Srinivasan Sundara Rajan

Highly passionate about utilizing Digital Technologies to enable next generation enterprise. Believes in enterprise transformation through the Natives (Cloud Native & Mobile Native).

Microservices Articles
Most DevOps journeys involve several phases of maturity. Research shows that the inflection point where organizations begin to see maximum value is when they implement tight integration deploying their code to their infrastructure. Success at this level is the last barrier to at-will deployment. Storage, for instance, is more capable than where we read and write data. In his session at @DevOpsSummit at 20th Cloud Expo, Josh Atwell, a Developer Advocate for NetApp, will discuss the role and value...
DevOpsSummit New York 2018, colocated with CloudEXPO | DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City. Digital Transformation (DX) is a major focus with the introduction of DXWorldEXPO within the program. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term.
CloudEXPO New York 2018, colocated with DXWorldEXPO New York 2018 will be held November 11-13, 2018, in New York City and will bring together Cloud Computing, FinTech and Blockchain, Digital Transformation, Big Data, Internet of Things, DevOps, AI, Machine Learning and WebRTC to one location.
Consumer-driven contracts are an essential part of a mature microservice testing portfolio enabling independent service deployments. In this presentation we'll provide an overview of the tools, patterns and pain points we've seen when implementing contract testing in large development organizations.
Adding public cloud resources to an existing application can be a daunting process. The tools that you currently use to manage the software and hardware outside the cloud aren’t always the best tools to efficiently grow into the cloud. All of the major configuration management tools have cloud orchestration plugins that can be leveraged, but there are also cloud-native tools that can dramatically improve the efficiency of managing your application lifecycle. In his session at 18th Cloud Expo, ...
Using new techniques of information modeling, indexing, and processing, new cloud-based systems can support cloud-based workloads previously not possible for high-throughput insurance, banking, and case-based applications. In his session at 18th Cloud Expo, John Newton, CTO, Founder and Chairman of Alfresco, described how to scale cloud-based content management repositories to store, manage, and retrieve billions of documents and related information with fast and linear scalability. He addresse...
Containers and Kubernetes allow for code portability across on-premise VMs, bare metal, or multiple cloud provider environments. Yet, despite this portability promise, developers may include configuration and application definitions that constrain or even eliminate application portability. In this session we'll describe best practices for "configuration as code" in a Kubernetes environment. We will demonstrate how a properly constructed containerized app can be deployed to both Amazon and Azure ...
SYS-CON Events announced today that DatacenterDynamics has been named “Media Sponsor” of SYS-CON's 18th International Cloud Expo, which will take place on June 7–9, 2016, at the Javits Center in New York City, NY. DatacenterDynamics is a brand of DCD Group, a global B2B media and publishing company that develops products to help senior professionals in the world's most ICT dependent organizations make risk-based infrastructure and capacity decisions.
Enterprise architects are increasingly adopting multi-cloud strategies as they seek to utilize existing data center assets, leverage the advantages of cloud computing and avoid cloud vendor lock-in. This requires a globally aware traffic management strategy that can monitor infrastructure health across data centers and end-user experience globally, while responding to control changes and system specification at the speed of today’s DevOps teams. In his session at 20th Cloud Expo, Josh Gray, Chie...
Discussions of cloud computing have evolved in recent years from a focus on specific types of cloud, to a world of hybrid cloud, and to a world dominated by the APIs that make today's multi-cloud environments and hybrid clouds possible. In this Power Panel at 17th Cloud Expo, moderated by Conference Chair Roger Strukhoff, panelists addressed the importance of customers being able to use the specific technologies they need, through environments and ecosystems that expose their APIs to make true ...