SYS-CON MEDIA Authors: Pat Romanski, Liz McMillan, Yeshim Deniz, Elizabeth White, Courtney Abud

Related Topics: Weblogic

Weblogic: Article

Open Source, Java, and WebLogic

Open Source, Java, and WebLogic

BEA believes that both open-source projects and commercial Java platform products like WebLogic are crucial to the health of the Java ecosystem. That's why WebLogic runs on top of, incorporates, contributes to, and creates open-source technologies.

Even open-source projects that provide functionality similar to WebLogic tend to be best used in a different part of the Java ecosystem than the one WebLogic occupies.

The Roles of Open Source
To understand open source's contribution to the Java ecosystem, let's look at the many roles it plays. Open source allows the Java community to amortize the cost of commodity technologies as widely as possible. For example, let's look at general-purpose XML parsers. The principles behind designing one are well understood. Therefore, outside of application-specific optimizations, most projects won't be able to differentiate themselves based on the quality of their XML parsers. As such, everyone is better off if the community comes together in an open-source project, produces an XML parser that everyone is free to use and modify, and therefore spreads the cost of developing and maintaining the code across the community.

For this reason, BEA WebLogic incorporates Xerces (a generalized XML parser) and Xalan (a generalized style sheet processor), both from the Apache Software Foundation. By using these open-source implementations, BEA can focus its resources on adding value that customers are willing to pay for, rather than reinventing the (XML parser) wheel.

Open source is also an effective vehicle for lowering the barriers to adoption of new technologies.

BEA is a strong proponent of open sourcing Java Specification Request (JSR) Reference Implementations (RIs) and Java Test Compliance Kits (TCKs). Open source gives the Java community immediate and unrestricted access to the new technologies embodied in JSRs, speeding adoption and ensuring compatibility.

This is why, with the JSRs that BEA is leading - such as JSR 181 for Java Web Services (JWS) files - we will generally make the results available through an open-source license. It is also why BEA and its partners have submitted a reference implementation of the XML Script technology now being standardized in ECMA to Mozilla's Rhino project. XML Script is a new technology that makes XML a native data type of JavaScript/ECMAScript. Rhino is an open-source Java implementation of JavaScript/ECMAScript.

In addition to point technologies, open source has proven itself as a means to develop broader software platforms. Two of the most successful open-source projects, Linux and Apache, are of that type. BEA WebLogic was one of the first application servers to treat Linux as a tier-one platform, and the most popular Web server for "front ending" WebLogic applications has long been Apache. Both Linux and Apache help BEA's customers lower the total cost of ownership (TCO) of WebLogic deployments, while giving BEA engineers unfettered access to the underlying implementations.

BEA WebLogic and Tomcat/JBoss
Open-source application platforms raise the greatest number of questions with respect to WebLogic. Two projects in particular are worth mentioning - Tomcat and JBoss.

Tomcat, from the Apache Software Foundation, provides the official reference implementation for Java servlets - the Web containers for J2EE. JBoss provides an implementation of Enterprise JavaBeans (EJB) 2.0, the predominant server-side component model for Java.

Both projects are important members of the Java ecosystem. Tomcat has helped ensure the ubiquity of servlets and JavaServer Pages (JSPs) as well as compatibility between implementations. JBoss has made EJBs, formerly the domain of high-end application servers, available to a wider audience, thereby enabling broader adoption of EJBs than would otherwise have been possible.

In comparing these open-source projects to WebLogic, you may find yourself thinking that even if they don't provide all of J2EE or WebLogic's features, at least they're free. However, the cost of the application platform is usually just a tiny proportion of the TCO for an enterprise software project. The majority of the TCO comes from managing and maintaining the application once it has been deployed, followed by the cost of developing the application, and then more distantly by the cost of the application platform software itself. Many of the critical features needed to reduce TCO are not available in open-source projects, so free often turns out to be more expensive than it seems.

In deciding between BEA WebLogic and open-source alternatives for your Java enterprise project, we recommend considering the following areas of competency.

Comprehensive and Tightly Integrated J2EE Programming
The J2EE standard combines the essential elements for building a Java enterprise application - a Web container (servlets/JSP), server-side transactional components (EJBs), remote method invocation (RMI), messaging (JMS), XML processing, Web services, database access (JDBC), connector/adapter architecture (J2EE CA), naming/directory (JNDI), and transactions (JTA). Most Java enterprise projects use a combination of these features. Using a combination of point solutions means having to do additional expensive integration work. WebLogic, however, is a complete and certified J2EE-compliant platform that provides all of these features in one integrated solution.

Development and Deployment Tools
Open-source projects are generally written by experts for experts. This often means that the development and deployment environments tend to be flexible but not very easy to use. While most open-source developers feel comfortable using Emacs and shell scripts, most business application developers want a friendlier, more integrated environment. That's why BEA has spent an enormous effort on lowering the barrier to developing and deploying Java enterprise applications employing a broad range of developer skillsets and across highly distributed configurations. The latest example of this is WebLogic Workshop and EJBGen, which bring J2EE development to a wider range of application developers and substantially cut programming costs.

Reliability, Availability, and Scalability (RAS)
For high reliability projects, Web sessions, Web services sessions, EJBs, messaging services, XML/HTML content, and database connections must offer automated replication, caching, load balancing, failover, and data-dependent routing, just to name a few of the requirements. These features are provided transparently by WebLogic today.

Operations, Administration, and Management (OA&M)
For most projects, the lion's share of TCO comes not from development costs but from OA&M. Understanding this, we've worked to ensure that WebLogic offers the best OA&M experience in the industry. OA&M tools are provided, both directly and through partners, that make it easier to configure and maintain a highly reliable, highly distributed system. But clearly more work is needed. Looking forward, BEA continues to make aggressive investments in new technologies to make WebLogic more self-optimizing and self-healing - moving toward more "lights out" administration of even large WebLogic clusters.

Security Framework
Most Java enterprise projects live in a complex security world requiring Web identity, single sign-on, delegation, integration with third-party security products, and policy-/rules-based authorization of access. WebLogic addresses this by providing a security framework that can handle all of these tasks, including extensive integration with multiple third-party security offerings, while at the same time offering ease-of-use to administrators and keeping the complexity of application security out of the business logic (and the programmer's hair).

Support Costs
Business-critical deployments often require 24x7 support around the world and in the local language. Moreover, commercial vendors often are contractually obliged to ensure that their quality-assurance regimen reflects the diverse range of configurations that their paying customers run in production, including JVMs, operating systems, databases, and third-party technologies (content management tools, development tools, application management tools, security plug-ins, integration adapters, etc.). Quality assurance even extends to interoperability testing with other commercial application platforms (such as that carried out for Web services under WS-I).

Quality of Service and Performance Monitoring
WebLogic provides numerous tools, both directly and in cooperation with its partners, to enable configurable qualities of service across distributed platforms.

Rich Integration and Portal Technologies
Most Java enterprise applications exist in heterogeneous environments that require them to work seamlessly with other enterprise applications and external data, for example, to automate business processes or to provide a unified view of the customer. The BEA WebLogic platform includes Java products such as WebLogic Portal, WebLogic Integration, and Liquid Data for WebLogic to enable this integration.

These criteria are a snapshot of the state of the application server market today. The market is constantly changing, however. Features that were once thought of as the exclusive preserve of high-end application servers such as BEA WebLogic may eventually find their way into open-source projects. As the market changes, the evaluation criteria will change as well.

Conclusion
Almost everyone reading this is developing commercial software. Whether you are a software end user, ISV, or system integrator, you are developing intellectual property (software) that offers a commercial advantage to your employers that they can capitalize on (that is, profit from). In this endeavor, we can and should remain happy to contribute to and leverage open-source.

Because of open source's rich contributions, BEA software runs on top of, incorporates, and contributes to open-source projects. For open-source projects that provide functionality similar to WebLogic, the choice between WebLogic and open source is rarely exclusive. Rather, WebLogic and projects like Tomcat and JBoss serve different parts of the Java community, so deciding which one to use should be done on a project by project basis.

In the end, the story of WebLogic and open source is more about beneficial coexistence than competition.

More Stories By Scott Dietzen

Scott is widely credited with helping put together the J2EE standard, launching the Web application server category, launching the Java Community Process, and driving the Web services collaboration with Microsoft and IBM. Prior to Zimbra, Scott was CTO of BEA Systems where he was the principal architect of the technology strategy for the WebLogic product family.

More Stories By Yaron Y. Goland

Yaron Y. Goland is a senior principal technologist in the Office of the CTO at BEA, with responsibility for BP standards. Yaron is a coauthor on BPEL and BEA’s representative to the W3C Choreography Working Group.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.


Latest Stories
Here to help unpack insights into the new era of using containers to gain ease with multi-cloud deployments are our panelists: Matt Baldwin, Founder and CEO at StackPointCloud, based in Seattle; Nic Jackson, Developer Advocate at HashiCorp, based in San Francisco, and Reynold Harbin, Director of Product Marketing at DigitalOcean, based in New York. The discussion is moderated by Dana Gardner, principal analyst at Interarbor Solutions.
Skeuomorphism usually means retaining existing design cues in something new that doesn’t actually need them. However, the concept of skeuomorphism can be thought of as relating more broadly to applying existing patterns to new technologies that, in fact, cry out for new approaches. In his session at DevOps Summit, Gordon Haff, Senior Cloud Strategy Marketing and Evangelism Manager at Red Hat, discussed why containers should be paired with new architectural practices such as microservices rathe...
In 2014, Amazon announced a new form of compute called Lambda. We didn't know it at the time, but this represented a fundamental shift in what we expect from cloud computing. Now, all of the major cloud computing vendors want to take part in this disruptive technology. In his session at 20th Cloud Expo, John Jelinek IV, a web developer at Linux Academy, will discuss why major players like AWS, Microsoft Azure, IBM Bluemix, and Google Cloud Platform are all trying to sidestep VMs and containers...
Using serverless computing has a number of obvious benefits over traditional application infrastructure - you pay only for what you use, scale up or down immediately to match supply with demand, and avoid operating any server infrastructure at all. However, implementing maintainable and scalable applications using serverless computing services like AWS Lambda poses a number of challenges. The absence of long-lived, user-managed servers means that states cannot be maintained by the service. Lo...
With the new Kubernetes offering, ClearDATA solves one of the largest challenges in healthcare IT around time-to-deployment. Using ClearDATA's Automated Safeguards for Kubernetes, healthcare organizations have access to the container orchestration to dynamically deploy new containers on demand, monitor the health of each container for threats and seamlessly roll back faulty application updates to a previous version, avoid system-wide downtime and ensure secure continuous access to patient data.
Isomorphic Software is the global leader in high-end, web-based business applications. We develop, market, and support the SmartClient & Smart GWT HTML5/Ajax platform, combining the productivity and performance of traditional desktop software with the simplicity and reach of the open web. With staff in 10 timezones, Isomorphic provides a global network of services related to our technology, with offerings ranging from turnkey application development to SLA-backed enterprise support. Leadin...
With the rise of Docker, Kubernetes, and other container technologies, the growth of microservices has skyrocketed among dev teams looking to innovate on a faster release cycle. This has enabled teams to finally realize their DevOps goals to ship and iterate quickly in a continuous delivery model. Why containers are growing in popularity is no surprise — they’re extremely easy to spin up or down, but come with an unforeseen issue. However, without the right foresight, DevOps and IT teams may lo...
Platform9, the open-source-as-a-service company making cloud infrastructure easy, today announced the general availability of its Managed Kubernetes service, the industry's first infrastructure-agnostic, SaaS-managed offering. Unlike legacy software distribution models, Managed Kubernetes is deployed and managed entirely as a SaaS solution, across on-premises and public cloud infrastructure. The company also introduced Fission, a new, open source, serverless framework built on Kubernetes. These ...
Emil Sayegh is an early pioneer of cloud computing and is recognized as one of the industry's true veterans. A cloud visionary, he is credited with launching and leading the cloud computing and hosting businesses for HP, Rackspace, and Codero. Emil built the Rackspace cloud business while serving as the company's GM of the Cloud Computing Division. Earlier at Rackspace he served as VP of the Product Group and launched the company's private cloud and hosted exchange services. He later moved o...
As you know, enterprise IT conversation over the past year have often centered upon the open-source Kubernetes container orchestration system. In fact, Kubernetes has emerged as the key technology -- and even primary platform -- of cloud migrations for a wide variety of organizations. Kubernetes is critical to forward-looking enterprises that continue to push their IT infrastructures toward maximum functionality, scalability, and flexibility. As they do so, IT professionals are also embr...
Kubernetes is a new and revolutionary open-sourced system for managing containers across multiple hosts in a cluster. Ansible is a simple IT automation tool for just about any requirement for reproducible environments. In his session at @DevOpsSummit at 18th Cloud Expo, Patrick Galbraith, a principal engineer at HPE, will discuss how to build a fully functional Kubernetes cluster on a number of virtual machines or bare-metal hosts. Also included will be a brief demonstration of running a Galer...
DevOps is under attack because developers don’t want to mess with infrastructure. They will happily own their code into production, but want to use platforms instead of raw automation. That’s changing the landscape that we understand as DevOps with both architecture concepts (CloudNative) and process redefinition (SRE). Rob Hirschfeld’s recent work in Kubernetes operations has led to the conclusion that containers and related platforms have changed the way we should be thinking about DevOps and...
Cloud-Native thinking and Serverless Computing are now the norm in financial services, manufacturing, telco, healthcare, transportation, energy, media, entertainment, retail and other consumer industries, as well as the public sector. The widespread success of cloud computing is driving the DevOps revolution in enterprise IT. Now as never before, development teams must communicate and collaborate in a dynamic, 24/7/365 environment. There is no time to wait for long development cycles that pro...
Docker is sweeping across startups and enterprises alike, changing the way we build and ship applications. It's the most prominent and widely known software container platform, and it's particularly useful for eliminating common challenges when collaborating on code (like the "it works on my machine" phenomenon that most devs know all too well). With Docker, you can run and manage apps side-by-side - in isolated containers - resulting in better compute density. It's something that many developer...
Technology has changed tremendously in the last 20 years. From onion architectures to APIs to microservices to cloud and containers, the technology artifacts shipped by teams has changed. And that's not all - roles have changed too. Functional silos have been replaced by cross-functional teams, the skill sets people need to have has been redefined and the tools and approaches for how software is developed and delivered has transformed. When we move from highly defined rigid roles and systems to ...