Composer User's Guide

CHAPTER 1

Welcome to exteNd Composer

Web Services are fundamentally changing the way enterprises exchange information and perform business transactions. But to succeed in web services development, business analysts and developers must be able to work together on sophisticated, large, distributed applications that meet strict requirements for performance, security, scalability, and reliability, in the face of increasingly stringent time-to-market demands.

The most important factor in making a successful transition to a services-based architecture that leverages modern web technologies is the availability of powerful, easy-to-use development tools. Such tools should be:

Novell's exteNd product line meets all of these criteria.

 
Top of page

The Novell exteNd Family

Novell exteNd is a family of Web Service development products for rapid development of Web Service objects on J2EE (Java) application server platforms The major pieces are available independently or as an integrated suite. The suite, in turn, comes in two flavors: Professional Edition, and Enterprise Edition.

 
Top of section

Novell exteNd 5 Professional Edition

The Novell exteNd 5 Professional Edition Suite is the base configuration of tools that enable the application developer to develop and deploy enterprise-level Web applications. The Professional Suite contains the following tightly integrated components:

 
Top of section

Novell exteNd 5 Enterprise Edition

The Novell exteNd 5 Enterprise Edition Suite contains all of the same pieces as the Professional Suite, with a few additions:

 
Top of page

The Novell exteNd Composer Product Line

Novell exteNd Composer is a development (and runtime) environment designed for rapid design and deployment of Web Services and XML integration applications—applications that can connect to diverse back-end systems and data sources.

The Composer product consists of the following pieces:

All exteNd Composer products are certified to run under the Novell exteNd Application Server, Apache Tomcat, IBM's WebSphere, and BEA WebLogic, with support for operating systems ranging from Windows NT and Windows 2000 to Linux, Solaris, AIX, and HP-UX.

NOTE:   Novell exteNd Composer Enterprise Server and exteNd Composer Enterprise Connect products each have their own documentation. This Guide covers only the core development environment (which we refer to herein as Composer). See the separate JDBC Connect and LDAP Connect guides for information on those component editors.

 
Top of page

What Is Composer?

Composer offers a powerful, intuitive, point-and-click GUI (graphical user interface) for rapid application development, giving the business analyst or application developer a powerful tool for creating robust XML integration applications in minimum time.

Composer offers, among other features:

Composer also has XForm and JSP code generation features, and many other capabilities that aren't listed here for space reasons. This is just a partial list of major features.

 
Top of page

Who Can Use Composer?

Composer is targeted at business analysts, IT managers, Java developers, and other stakeholders in the Web Services development process.

Composer is designed to be accessible to users of various skill levels. (It is not a Java-programming IDE.) Business analysts with little or no programming background can quickly master complex data transformations using Composer's drag-and-drop XML mapping features. Webmasters can use Composer's JSP, XForms, and UDDI browse/publish capabilities to assemble sophisticated web apps with no need for additional tools. Java developers can use Composer to develop sophisticated, reusable XML components that might rely heavily on ECMAScript, SQL, LDAP, custom Java classes, and/or specialized packagings (WAR/EAR/JAR files).

Because Composer's GUI is rich with wizards, picklists, and drag-and-drop-enabled features, users of all skill levels (regardless of domain expertise) can become productive quickly. Sophisticated web applications that might take months to develop using a "grabbag of tools" approach often can be rolled out in weeks or days using Composer.

 
Top of page

Components and Services

Composer application design is based on an Action Model architecture that includes two main processing constructs: components and services.

Components are executable units of work that encapsulate business logic, usually in the context of connectivity requirements.

For example, a typical JDBC component validates an incoming XML request document, maps the document's key pieces of data to an SQL inquiry, and maps the SQL result set to an XML response document. All of the business logic and data retrieval functionality of this type of operation can (and should) be encapsulated at the component level.

Services, on the other hand, typically oversee the execution of components and coordinate the flow of data between them. A typical service might wrapper a series of components that receive an input XML document, perform sophisticated document mappings/transformations, collect information from back-end data sources, execute transactions on mainframes and AS/400s, process error conditions, send context-sensitive e-mail or JMS notifications, and/or return one or more XML response documents to the original requestor(s). By breaking up a service's tasks into discrete components, important benefits—in terms of testing, debugging, code maintenance, encapsulation, and code reuse—can be realized.

1ComponentsandServices

You will typically use Composer to create components and services that perform B2B integration tasks involving data retrieval and transformation through XML technologies, including (optionally) SOAP and Web Services technologies. You'll deploy these components and services into a J2EE application server environment, where their execution is mediated by exteNd Composer Enterprise Server (the runtime half of Composer).

 
Top of page

What Kinds of Applications Can You Build with Composer?

You can build many types of applications with Composer, but typically you will create XML integration applications triggered by servlets, EJBs, custom Java objects, or incoming messages on a JMS message queue. Your applications might, in some cases, simply be used locally on the app server to provide services across local processes, with no exposure to the outside world. In other cases, your applications will be fully web-enabled. The interface(s) to your web-facing applications might or might not involve SOAP or WSDL.

In general, with Composer, you can implement any kind of application where data inputs and outputs involve XML.

If you are using the Enterprise Edition of Composer (which comes with the JMS Connect), you can also build services that use messages for inputs and outputs.

NOTE:   Messaging (involving Message Oriented Middleware, such as IBM's MQSeries) is a powerful data-sharing metaphor in its own right, allowing the use of payloads other than XML. With Composer and JMS Connect, you can build applications that use messages for input and XML for output; XML on the input side and messages for output; or messaging within an XML-in/XML-out application; plus other variations.

In the simple example depicted below, a buyer and a supplier connect their respective business systems across the Internet using XML and Composer.

1WhatAppsCanyouBuild

Your organization might want to build one or more of the following types of applications using Composer:

 
Top of page

Automated Business Process Management (Workflow)

Packaging business applications as Web Services opens up new opportunities for automating workflows. The Web Services Flow Language (one of several emerging standards for workflow automation) provides a standard to which next-generation BPM software will build. The basis for this next-generation technology is workflow built on Web Services. SOAP and XML will be key technological underpinnings of future workflow systems.

Composer plays directly to emerging standards and technologies involving automated workflow. Next-generation workflow engines will "hook up" Web Services (external or internal) to allow sophisticated long-running applications to be built, relying on BPM concepts such as timeouts/retries, conditional links between services, control flow between individual services involving parallel execution, etc. Complex choreographies involving Web Services will be attainable. (Some of the possible choreographies are described in RosettaNet Partner Interface Processes.) Composer will be a valuable tool in creating WSFL-ready applications.

 
Top of page

About the Composer Enterprise Connect Product Line

Composer is built upon a simple hub and spoke architecture. The hub is a robust XML transformation engine that accepts XML documents, processes the documents, and returns an XML document. The spokes, or Connect products, are plug-in modules that "XML enable" sources of data that are not natively XML-aware, bringing their data into the hub for processing as XML. These data sources can be anything from legacy COBOL / VSAM managed information to Message Queues to HTML pages.

The various Connect products can be categorized by the integration strategy each one employs to XML enable an information source. The integration strategies are a reflection of the major divisions used in modern systems designs for Internet-based computing architectures. Depending on your B2Bi needs, exteNd can integrate your business systems at the User Interface, Program Logic, or Data levels.

1AboutXCommerceEnablers

In addition to JDBC and LDAP (which are core Connects, included with all versions of Composer), there are additional Connect products:

NOTE:   This guide describes the basic functionality of exteNd Composer. The addition of each Connect increases the features available to you in Composer. These additional features are described in separate user guides that accompany each Connect.

Once you install a Connect product, the Composer GUI will become updated with:

These customizations and additions are automatic with the installation of the Connect and integrate seamlessly into the existing Composer design-time environment.

 
Top of page

Updating Your License(s)

Should the need arise to update the license string(s) associated with Composer or a Connect product, you can do so at any time, using an intuitive point-and-click UI.

IMPORTANT:   When changing a license string, remember that it is necessary to change the string for the design-time environment as well as the server environment. Both procedures are shown below.

 
Top of section

Updating Design-Time License String(s)

Procedure To update a Composer product license string on the design-time machine:

  1. Launch Composer.

  2. Under the Help menu, select About Composer. A dialog appears.

  3. At the bottom of the "About" dialog, click the System button. A new dialog appears:

    1LicenseDT

  4. At the top of this dialog, click the Licenses tab.

  5. The columns of the table shown on this tab give useful information about the name and status of each Composer product, including those that for some reason didn't load properly. To edit a license string, click the Edit... button next to the appropriate string under the License column. A new dialog will appear.

    1LicenseDTEdit

  6. Enter a new string in the New License text field.

  7. Click OK to dismiss the dialog.

    NOTE:   If the string you enter is not correct, you will get an alert dialog at this point. Doublecheck the string and reenter it. If problems persist, Cancel out of all dialogs to return to Composer, then contact Customer Support.

  8. In the System Information dialog, check the Enabled checkbox next to the field you edited, if it is not already checked.

  9. Click OK (or use the Enter key on your keyboard) twice to return to Composer.

  10. Restart Composer to make your changes take effect.

  11. If you have not already updated the same license string on the app server, continue now to the following procedure.

 
Top of section

Updating Runtime License String(s)

When changing license strings in the design-time environment, it is critical that you make corresponding changes in the app-server environment so that Composer Enterprise Server will treat the corresponding product(s) as enabled at runtime.

Procedure To update a Composer product license string on the app server:

  1. Launch the app server, if it is not already running. This should also launch Composer Enterprise Server, if it was previously installed.

  2. Go to Composer's default Administrative Console page, which is typically at http://localhost/exteNdComposer/Console.

  3. In the upper left corner of the main console page, hover the mouse over the words "exteNd Composer." (See illustration below.)

    1LicenseButton

    When you hover the mouse over the words "exteNd Composer," the words change color (to red) and new text, "Version/License Manager," appears off to the side.

  4. Click once on "exteNd Composer." A new page appears:

    1LicenseMain

  5. This is the main License Manager screen. In the center of the screen, you will see version and license information for Composer Enterprise Server. To see additional information (and edit license strings), click the Licenses button. A new window appears:

    1LicenseProducts

  6. This page shows name and status information for all installed components. Each text field in the License column is editable. Enter a new string as appropriate, then ensure that the correct Enabled/Disabled radio button is active next to the text field in question.

  7. Click the Update button next to the field in question.

  8. Restart the server.

 
Top of page

Where To Go for More Help

Perhaps the best way to understand Composer is to see it in action. The Composer installation includes a fully functional project, in the Tutorial Solution, that you can step through to see how the application handles a practical business operation. See the \tutorial folder, under the main exteNd Composer installation folder.

For the most up-to-date documentation and tutorials (plus other resources), be sure to consult http://developer.novell.com/extend/composer/.



Copyright © 2004 Novell, Inc. All rights reserved. Copyright © 1997, 1998, 1999, 2000, 2001, 2002, 2003 SilverStream Software, LLC. All rights reserved.  more ...