Weblogic Authors: Yeshim Deniz, Elizabeth White, Michael Meiner, Michael Bushong, Avi Rosenthal

Related Topics: Weblogic

Weblogic: Article

Web 2.0: XML & Java - Standard Integration

Web 2.0: XML & Java - Standard Integration

Standards can drive revolutionary changes in technology: consider the impact that SQL has had on the database market, or consider that the World Wide Web was launched by the combination of HTML, HTTP, URL, and SSL. Our belief is that protocol standards (XML, Web services) and programming standards (Java and the .NET alternatives, XML Query, etc.) will have a similarly profound impact on integration.

Integration encompasses a broad range of information technology (IT) needs (see Figure 1):

  • Enterprise application integration (EAI): Directly interconnecting two or more business applications over intranets (that is, behind corporate firewalls)
  • Business-to-business integration (B2BI): Directly interconnecting the business applications of one company with those of a business partner across the Internet or a virtual private network
  • User interface (UI) integration: Aggregating and personalizing UI across applications so that the human user experiences a single unified "Web flow" (e.g., Java page flows within a portal), bringing together those disparate back-end systems
  • Data integration: Aggregating data queried from disparate applications and data stores in order to define a unified view of a business object - for example, creating a unified "customer" schema by combining data from a customer relationship management (CRM) system, an Enterprise Resource Planning (ERP) system, and so on

    Today, the integration market remains largely fragmented across proprietary solutions, none of which scale to meet the needs of our Web-oriented world. (Note: Consider that proprietary integration technologies generally require the user to run a particular vendor's software on all participating nodes. Convincing a worldwide company and all of its business partners to run the same proprietary integration software just will not fly.) At the same time, integration remains very expensive - by various measures consuming 70+% of discretionary IT funding, and remains sufficiently complex that organizations tend to only integrate applications as it becomes a business imperative.

    Clearly, the industry must do better. We are convinced the answer lies in extending the Web from the UI platform it is now (browser to data/application) to become an integration platform. Today, most new applications are "Web ready" out of the box - i.e., designed to support a Web browser front end. Our claim is that future applications will also be "Web integration ready" out of the box - that is, ready to plug into this emerging "backplane" of eXtensible Markup Language (XML) and Web services that will enable them to seamlessly interconnect with other Web-based applications.

    But XML and Web services only define the protocols - that is, the standard wire formats that ensure interoperability. How will the industry protect investment in the programming of the orchestration logic that ties Web applications together? Just as application programming standards like servlets, JavaServer Pages (JSP), and Active Server Pages (ASP) were crucial to the success of the Web, integration programming standards are essential to Web-based integration.

    In fact, most of the infrastructure standards necessary to enable such a "sea change" are already in place. As a result, the integration market, like that for Web application development before it, is poised for sweeping standardization. BEA has been collaborating with our platform competitors (primarily IBM and Microsoft) as well as our allies to remake the Web into an application development and integration platform - Web 2.0 if you will! Assuming we are successful (as industry analysts now predict), Web application servers (for Web application development and hosting) will be superceded by Web application platforms, which include tightly integrated portal, EAI, B2BI, and data integration technologies. Web 2.0, then, may well have a bigger impact on enterprise IT than Web 1.0 did!

    Integration Technology Stack
    The stack of technologies required for integration is relatively well understood. Our proposed factoring appears in Figure 2. Let's consider each of the layers in turn (bottom up).

    Middleware Infrastructure
    The foundation of all integration products (including the more traditional proprietary technologies as well as the emerging Web platform alternatives) is the middleware bus that provides interconnections and ensures quality of service. Historically, the industry has selected industry-standard middleware (either Java 2 Enterprise Edition/[J2EE] or .NET-based) for developing and hosting Web applications, but proprietary middleware for integrating those applications. But the promise of Web 2.0 is based on convergence to a single unified platform that does both. As a result, the standard Web application servers (WebLogic, WebSphere, .NET, etc.) are displacing proprietary integration middleware: it turns out to be a lot easier to extend standard Web application servers to do integration than it is to remake proprietary integration brokers into Web-standard application servers. (Note: The fact that most of the historically proprietary integration vendors are now including application server technology within their next-generation integration solutions is more compelling evidence for this convergence. The challenge for those vendors, of course, is that this is the "home court" that the Web application platform leaders [BEA, IBM, Microsoft] staked out years ago.)

    Extra-Application Connectivity
    Web services and adapters link the Web integration platform to other applications and data sources. While the middleware layer is colored green (meaning that J2EE and .NET are now safe bets), this layer is a mix of red and green since the essential Web services standards are still being fleshed out.

    XML/Web Services
    Web services are simply conventions for passing XML between applications. Figure 3 illustrates the when and where of Web services - Web services should be preferred for inter-application interoperability. The art is in defining the ideal coarse-grained, long-lived business interfaces that best encapsulate the application. Business application architects should carefully review such candidate Web services.

    Our take on the emerging suite of XML/Web services standards (a.k.a., acronym soup) is depicted in Figure 4. As with the Web stack before it, we propose an essential core set of standards from which the "integration Web" will reach critical mass.

    We include within this core the technologies that Web Services Interoperability (WS-I) validates in its basic profile. (Note: Today inter-container interoperability for Web services should likely be restricted to the WS-I basic profile of XML Schema, SOAP 1.1, and WSDL 1.1. By venturing outside the scope of what we vendors are ourselves testing, you are likely to encounter interoperability issues between different containers - e.g., between WebLogic and .NET. Intra-container interoperability, however, should not be an issue for the newer Web service standards.)

    An XML-based schema language, typically XML Schema, is the preferred choice for Web service payloads. If XML Schema is becoming a lingua franca for interoperable business objects, then the Simple Object Access Protocol (SOAP) is the framework of "composable" message headers for defining ever higher qualities of service for passing those business objects between applications (e.g., security, guaranteed delivery).

    With Web services, programmers should be careful not to "hardwire" schemas to the business logic so as to achieve the looser coupling that made the Web so successful. Unfortunately, loose coupling is not inherent in Web services - you must program for it. (Note: Loose coupling works on the Web in the sense that a Web site can undergo dramatic change [say a migration from .NET to Java] without affecting the end users [who may not even notice ASPs turning into JSPs]. Web services loose-coupling is fundamentally harder to achieve. The Web client [browser] and schema [HTML] are fixed, while both sides of the Web services "wire" are expected to accommodate change independently.)

    In particular, we recommend that if you use Java as your Web services "design center" (that is, you autogenerate Web Services Definition Language [WSDL] from Java classes), you should use "wrapper" classes rather than directly exporting application objects. We also recommend that you leverage the extensibility model of XML Schema, and use higher-level bindings like XML Query and "schema compilers" such as XML Beans, JAX-B, and JAX-RPC. Developers can thereby ensure that application changes will be less likely to break Web service interfaces and interface changes will be less likely to break applications.

    Above the basic profile defined by WS-I are our proposals for the standards that will complete the Web services core. WS-Security provides selective encryption (privacy), nonrepudiation, and support for delegation (propagation of security context). This emerging OASIS standard is poised to be the "SSL" of Web services.

    WS-Reliable Messaging (WS-RM) and WS-Addressing (from BEA, IBM, Microsoft, and others) ensure that message delivery can be transactionally guaranteed across unreliable networks and systems. WS-RM and WS-Addressing use store and forward messaging to commoditize into the Web services stack what has historically been the domain of proprietary message-oriented middleware like MQSeries. BEA remains convinced that such asynchronous Web services are the "sweet spot" for transactions/updates, while synchronous Web services tend to be better suited to queries. This is why we have put so much energy into making asynchronous Web services as easy to program as synchronous ones.

    Adapters solve the "last mile" problem of integration: they provide the link from the Web technology to a non-Web or "legacy" technology (such as COBOL/CICS). (Note: By using the term "legacy," I intend no insult: becoming part of the legacy is the highest goal that software can achieve [of course, many of them never make it], and in a very real sense, all production applications are legacy. ) Even with the emergence of XML and Web services, adapters remain essential because so little of today's legacy applications will be directly extended to support Web services. (Instead, legacy applications will be "wrapped" with Web services and new business logic deployed on containers like WebLogic, WebSphere, and .NET.)

    Without a standard model for adapters, it's nearly impossible for an integration platform to get to critical mass. Consider the impact that standardizing a common database adapter - Java Database Connection (JDBC) - had on Java's success. The J2EE Connector Architecture (CA) generalizes JDBC to define a universal model for Java adapters. J2EE CA (like the .NET alternative) eliminates the m x n cost of each integration vendor (m) having to "one off" their own proprietary adapter for each and every legacy system (n). Moreover, J2EE CA protects your programming investment in integration solutions just as JDBC protects investment in database applications.

    Transformation, Aggregation, and Mapping
    Inherent in our notion of Web 2.0 is the expectation that XML becomes the interapplication data representation. Despite the marketing hype to the contrary, XML does not itself resolve impedance mismatches between differing data representations, and we are witnessing the proliferation of XML Schemas across the enterprise. (Some large companies may already have more than a hundred schemas for "customer".) XML simply defines a common alphabet for constructing documents (think "structured ASCII"); it is still up to the respective companies and industries to define the vocabularies (the semantic mapping from XML to business objects) that enable conversations to take place. Some of these vocabularies will be defined "top down" by industry standards bodies and consortia. Other vocabularies will grow "bottom up" (much as natural languages have) as individual companies or small groups of companies specify the Web services necessary for conducting business with them. XML-based EAI faces the same challenges, albeit within a single company.

    Tools that map from one vocabulary to another dramatically ease this burden - XML Query in particular is becoming the "SQL" of XML processing. But while XML transformation is getting easier and faster, you should nevertheless seek to constrain the explosion of XML Schemas by introducing a review/approval process by your business application architects.

    The cost of integration solutions is still dominated by the cost of programming the glue code that ties the integration business process (workflows and Web flows) to the underlying business applications. Unfortunately, the state of the art still remains a long way from nirvana - when a business analyst will define only the high-level business process, and the infrastructure will "magically" generate the necessary glue code. Historically, one of the biggest risks to integration projects has been their dependence on proprietary application programming interfaces (APIs) for programming this glue. With no standard APIs, there is no investment protection in integration programs or programmers. Nor are there the richer tools that follow from API standardization (such as those created for SQL and J2EE). Independent software vendors (ISVs) in particular are desperate to build integration solutions that can be deployed across multiple containers (e.g., be portable to both WebLogic and WebSphere).

    Of course, the Java and XML communities have been hard at work extending the Web application platform standards to protect investment in integration tasks. Some highlights worth a closer look:

  • XML Query (W3C)
  • Java Web Services (JWS) (JSR-181)
  • Process Definition for Java (JSR-208)
  • BPEL4WS (published by BEA, IBM, and Microsoft)
  • Java Meta Data (JSR-175)
  • XML Beans (open source from BEA)
  • Portlets (JSR-168)
  • Content Management Interface (JSR-170)
  • Apache Struts and Java Server Faces (JSR-127)
  • Web Services for Remote Portlets (WSRP; OASIS)

    At the orchestration level, we include the declarative glue essential to integration: workflows, "Webflows," "work-lists" (collaborative document flow through an organization), and choreography - abstracted message sequences that define how workflows can be composed within and even between companies.

    The most well understood technology at the orchestration level is Business Process Management (BPM). BPM refers to the graphical languages and tools for composing workflows - computational sequences of tasks and exceptions. We are convinced that a variety of workflow representation languages will be required by the enterprise:

  • Those targeted at the business analyst (e.g., Aris)
  • Those that are seamlessly integrated with Java (Process Definition for Java/JPD)
  • Those that are programming language independent (BPEL4WS)

    For Java-based workflows, PDJ will remain the best fit. BPEL4WS, however, provides a level of independence between the Java and .NET worlds, at the cost of introducing a new XML programming language. You should expect PDJ and BPEL to converge going forward - PDJ will become the Java realization of a BPEL workflow

    Integration Brokering and Management
    While integration solutions still require coding, the goal remains to minimize that coding. Security is similar in this regard: historically, authorization was hand-coded into the application. Now the leading Web platforms define security policies administratively through business-oriented rules (that can be applied to a particular end-point or across an entire application).

    The same shift is already underway for command and control - the decision about how to route a particular request (say a trade) could depend upon the client (quality of service obligation), the content (dollar value), the receiver (which transform or adapter to apply), or the state of the infrastructure (availability, load). If such logic is programmed into the application, then it cannot be changed without modifying and redeploying the business logic. By capturing such metadata administratively, change can be accommodated far more easily and economically.

    The integration platform's management environment must provide a comprehensive operational view into the interworkings of the integration broker and its connections to various applications. Looking forward, integration environments will have to become more self-optimizing and self-healing - raising alerts to the human administrator only when the available resources are insufficient to meet the committed quality of service.

    Addressing the complexity and cost of integration may well be IT's single biggest need. Unfortunately, there are no panaceas: integration is and will remain an inherently hard problem. However, with Web 2.0, the industry can still do dramatically better - better by increasing investment protection and by cutting noninherent complexity. With a standard integration platform and the associated tools, the industry should be able to cut noninherent complexity by a factor of 10 - making integration projects more predicable, more successful, and maybe even fun.

    Of course, Web 2.0 is going to take time to mature. Web services standards, in particular, continue to evolve: interoperable end-to-end security and guaranteed delivery should appear later this year.

    So if the Web 2.0 standards are not all in place just yet, does that mean organizations should wait? Hardly. Products that represent the leading edge in Web- and Java-standard integration - like WebLogic Integration, Portal, Liquid Data, and their direct competitors - are feature/function competitive with the proprietary alternatives today, and in a dramatically better position to protect your long-term investment.

    How, then, should organizations best prepare themselves for Web 2.0-based integration? By treating integration challenges both tactically and strategically: tactically, by getting the job done with a mix of best-fit standard and proprietary technologies; and strategically, by betting on the emerging Web 2.0 integration platform.

    For those who still have doubts about integration converging around these standards, a little history: in 1997 we made a little-noticed prediction that an emerging mix of server-side Java standards (which later became J2EE) would have a profound impact on Web application development. At the time, there were some 30-odd Web application server vendors, each promoting their own proprietary programming models and tools. Today, there is a multi-billion dollar market for J2EE-standard Web application servers led by BEA WebLogic and IBM WebSphere, and Microsoft has launched the .NET Server family, at least partially in response to the popularity of J2EE.

    The smart money is on history repeating itself for Web-based integration. The compelling need for a more scalable approach to integration, for investment protection via standards, and for the ease-of-development tools that follow from standards will drive this convergence. As with all technology transformations, right now there are compelling opportunities to gain a competitive advantage, especially for independent software vendors and systems integrators focused on integration. Of course, there is also risk. Yes, risk in betting on technologies that are not fully baked, but also risk in throwing good money after bad by not recognizing an impending paradigm shift.

  • 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.

    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.

    IoT & Smart Cities Stories
    The Japan External Trade Organization (JETRO) is a non-profit organization that provides business support services to companies expanding to Japan. With the support of JETRO's dedicated staff, clients can incorporate their business; receive visa, immigration, and HR support; find dedicated office space; identify local government subsidies; get tailored market studies; and more.
    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...
    At CloudEXPO Silicon Valley, June 24-26, 2019, Digital Transformation (DX) is a major focus with expanded DevOpsSUMMIT and FinTechEXPO programs within the DXWorldEXPO agenda. 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. A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throug...
    At CloudEXPO Silicon Valley, June 24-26, 2019, Digital Transformation (DX) is a major focus with expanded DevOpsSUMMIT and FinTechEXPO programs within the DXWorldEXPO agenda. 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. A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throug...
    Atmosera delivers modern cloud services that maximize the advantages of cloud-based infrastructures. Offering private, hybrid, and public cloud solutions, Atmosera works closely with customers to engineer, deploy, and operate cloud architectures with advanced services that deliver strategic business outcomes. Atmosera's expertise simplifies the process of cloud transformation and our 20+ years of experience managing complex IT environments provides our customers with the confidence and trust tha...
    AI and machine learning disruption for Enterprises started happening in the areas such as IT operations management (ITOPs) and Cloud management and SaaS apps. In 2019 CIOs will see disruptive solutions for Cloud & Devops, AI/ML driven IT Ops and Cloud Ops. Customers want AI-driven multi-cloud operations for monitoring, detection, prevention of disruptions. Disruptions cause revenue loss, unhappy users, impacts brand reputation etc.
    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.
    Today's workforce is trading their cubicles and corporate desktops in favor of an any-location, any-device work style. And as digital natives make up more and more of the modern workforce, the appetite for user-friendly, cloud-based services grows. The center of work is shifting to the user and to the cloud. But managing a proliferation of SaaS, web, and mobile apps running on any number of clouds and devices is unwieldy and increases security risks. Steve Wilson, Citrix Vice President of Cloud,...
    When Enterprises started adopting Hadoop-based Big Data environments over the last ten years, they were mainly on-premise deployments. Organizations would spin up and manage large Hadoop clusters, where they would funnel exabytes or petabytes of unstructured data.However, over the last few years the economics of maintaining this enormous infrastructure compared with the elastic scalability of viable cloud options has changed this equation. The growth of cloud storage, cloud-managed big data e...
    Artificial intelligence, machine learning, neural networks. We're in the midst of a wave of excitement around AI such as hasn't been seen for a few decades. But those previous periods of inflated expectations led to troughs of disappointment. This time is (mostly) different. Applications of AI such as predictive analytics are already decreasing costs and improving reliability of industrial machinery. Pattern recognition can equal or exceed the ability of human experts in some domains. It's devel...