Intelligent Enterprise

Better Insight for Business Decisions

Intelligent Enterprise - Better Insight for Business Decisions
search Intelligent Enterprise
Advanced Search
RSS
Webcasts
Digital Library
Subscribe
Home


January 20, 2000 Volume 3 - Number 2

Democratized Dynamism

Rhythmyx unsurprisingly hogs the processor and surprisingly simplifies building data-driven, XML-enabled Web apps

By Peter Fischer

PRODUCT SPEC SHEET

Rhythmyx 1.0

Percussion Software Inc.
92 Montvale Ave.
Stoneham, MA 02180
800-283-0800
www.percussion.com

Pricing:Processor-based, starting at $5,000; Rhythmyx Workbench, $500; developer’s kit, $2,500.

Minimum Requirements:
(server): Windows NT 4.0, 128MB RAM (192MB recommended), Pentium II 200 MHz processor (350MHz recommended).

As Web sites evolve in features and functionality, emphasis is shifting away from how a page looks to the content on the page. E-Business demands that the user be able to interact with core processing systems and data through the browser. A key to building interactive Web sites is the ability to create data-aware HTML pages populated with data from live sources.

A variety of products and environments in the market let you create data-driven Web applications. However, for the most part, they are targeted at application developers and require a good deal of programming experience and knowledge. What we need is an environment that appeals to a broader audience, including Web designers and programmers. This audience is looking for a tool that makes the process of hooking data to Web pages easy and straightforward. Percussion Software’s Rhythmyx is such a tool. Rhythmyx truly “harmonizes” data with the Web, allowing mere mortals to create active, data-driven Web applications.

Rhythmyx Features

If you like to create applications by connecting elements using drag and drop, you’ll like Rhythmyx. Rhythmyx is targeted at Web designers and developers, not database application developers. You do not have to know SQL to use the environment, and it is not a replacement for environments such as Microsoft Visual InterDev.

Rhythmyx lets you connect static and dynamic pages together into an interactive application. In addition to text, Rhythmyx lets you store and retrieve richer data types such as images and multimedia dynamically. Because Rhythmyx uses standard HTML, you can use any HTML editor you want. I used both Microsoft’s FrontPage and Symantec’s Visual Page with no problems.

Although HTML has no built-in support for formatting dynamic content, Rhythmyx lets you define formatting for dynamic content using standard HTML tags and any HTML editor. Rhythmyx uses extensible markup language (XML) internally to manage content and format.

At design time, Rhythmyx uses XSpLit technology to generate an XSL style sheet automatically based on the formatting defined in the HTML page. When the server delivers the page at run time, Rhythmyx applies the style sheet to the dynamic XML pages the server generates in order to deliver fully formatted dynamic HTML pages to the browser. So as a Web developer, you need to know just a few simple operations to create applications that use all Rhythmyx’s features.

Component Description
Rhythmyx Server Its run-time service intercepts URL requests
Rhythmyx Server Administrator Java applet for full Rhythmyx server administration
Rhythmyx Workbench Development environment
XSpLit Utility HTML converter

The Rhythmyx product comprises four components: the Rhythmyx Server, the Rhythmyx Workbench, the Rhythmyx Administrator, and the Rhythmyx HTML Converter, which are summarized in Table 1. (See page 52.) These components provide the full functionality for the entire Rhythmyx suite.




FIGURE 1 Build all your apps in the Workbench integrated environment.

The Workbench is the integrated environment you use to build all your applications. It comprises three main panels: Explorer, Application Properties, and Application Editor, as illustrated in Figure 1 (page 53). The Explorer provides three panes — Applications, ODBC, and Files — that allow you to access integral elements of your application. The ODBC tab provides access to all registered data sources for your environment. The Files tab provides access to your environment’s files, which you can drag and drop into the Application Editor to add to your project.

The Application Window provides quick and easy access to your Workbench projects. The Application Editor window “collects” all the elements of your application project together in one place, logically grouping these elements from various physical locations. A Rhythmyx application is a collection of static and dynamic Web pages grouped together via the Workbench.

The Server Administration application, shown in Figure 2 allows full control over the server environment. From here, you can start and stop applications, control what attributes are logged, control the back-end connections to data sources, and administer security among others.




FIGURE 2 The Server Administrator application gives you full control over the server environment.

The server is a real-time data-access service that enables the delivery of back-end data to HTML pages. It also provides security, connectivity, and session management. Under Windows NT, the server is configured as a service and runs in a console window when the server computer starts up. Therefore, if for some reason you need to shut down and restart the Rhythmyx server, you must close the console window and restart the server via the Services applet in Control Panel.

Unlike most data-to-Web products that require and interpret script embedded in Web pages at run time, Rhythmyx converts back-end data to Web pages by letting you visually define how back-end data converts to XML documents. You apply style sheets to format the output HTML page.

When a browser makes a request via a URL that you’ve defined with Rhythmyx, the Rhythmyx server intercepts the request and processes it in real time. Rhythmyx delivers Web pages as either HTML or XML documents by merging XML data with an XSL style sheet that Rhythmyx or the Web designer creates at design time. This style sheet holds all static formatting as well as static content.

The HTML Converter, XSpLit, utility is a tool Rhythmyx uses internally. Because its functions are integrated in the Workbench, you do not need the XSpLit GUI while you build applications. However, Rhythmyx provides the XSpLit interface for advanced users who want to view or modify the extensible stylesheet language (XSL) style sheets and the XML data-type definitions (DTDs) that Workbench generates. The XSpLit utility can be very useful for debugging applications or creating complex applications by customizing the generated XSL style sheets or XML DTDs and then building the application directly.

Interactive Apps

I found that the environment ran very slowly on my workstation environment, much quicker on my server environment. This differential results more from the Rhythmyx Workbench being written in Java. From my experience reviewing a plethora of Java-based products, this situation is normal. Workstations that use Java-based environments typically require significant horsepower to function like your typical development environments (such as Microsoft Visual Studio).

The installation creates a new program group that gives you access to all components of Rhythmyx, including the Workbench, Rhythmyx Server Administrator, and an HTML converter. For environments not collocated with the Rhythmyx Server, the Administration application provides remote administration facilities.

Percussion’s Web site provides a nice Rhythmyx demo, a PowerPoint presentation supplemented by a set of Microsoft Camcorder files. I would like to see this included as an integral part of the installation instead of an apparent add-in. For my review, I followed the tutorial and also created some applications from scratch using databases from applications on hand.

The process for developing Web applications with Rhythmyx is straightforward: Create HTML pages using a standard HTML editor, add markup to Web pages to indicate dynamic fields for Rhythmyx, create a project by adding HTML pages, map resources to database tables using Resource View, use the Selector to create appropriate queries, and use the Mapper to connect database fields to HTML fields.

After you create your HTML page using an HTML editor you just use Rhythmyx’s special markup tags, called span tags, to indicate the dynamic fields, which link to your back-end data. You can add the span tag, field name, and sample data to a static value, or replace the static value with the Rhythmyx field name.

The Workbench is where you create an application by dragging and dropping marked-up HTML pages and back-end tables in the workspace and then mapping them to each other. When you drag and drop an HTML page into the application editor, Rhythmyx “splits” the file into two components — the page’s dynamic content (as a DTD, represented by a “resource” icon) and its static format (as a style sheet, represented as a “page” icon). (See Figure 1.) The field names you indicated previously in your HTML will drive the resource’s contents.

Through the resource, you independently map, select, and transform back-end data to the fields in the dynamic page. A resource is the raw data that makes up a dynamic page. A DTD defines this raw data at design time so it’s available at run time as an XML file. You define resources for both query and update interactions between browser pages and back-end data sources.

You can apply the style sheet to any dynamic content that the resource generates at run time so that all dynamic Web pages look the same, regardless of what specific dynamic content is returned. To format the same dynamic content in different ways, you can associate multiple Web pages with the same resource.

After mapping resources and defining how to request them, you set properties for security, error handling, and performance tuning.

To perform the mapping, double-click on the Person resource to bring up the Resource View Window. This window captures the process and the entities that comprise the entire database connectivity process. You drag and drop resources from the Workbench Explorer onto the various elements in the Resource Window to create the mapping — Rhythmyx handles the rest. In order to connect to the database, you drag the target from the Explorer to the pipe in Resource View.

As soon as you establish the correct connectivity, you need to create the selection criteria for your query. A Selector Properties window lets you create the relationship by specifying the selection fields (by using the WHERE table) or typing in SQL. Using the WHERE table function is a snap. For those of you who know your way around database programming and would rather type in SQL instead of graphically establishing the relationships, you select the Manually Enter SQL radio button and type in your SQL.

Rhythmyx will automatically prepend PSXParam to what you entered. It is this value that Rhythmyx’s markup extensions will use in the HTML file. When the application runs, the user enters an employee ID, for example, in the EmployeeID field on the HTML page. The browser will then pass this entry as an HTML parameter along with the person.htm page to the Rhythmyx server.

The next step is to map the database fields into the appropriate resource fields, by bringing up the Mapper from the Resource View. Simply dragging the database fields and dropping them on the corresponding resource fields creates the map between the fields in your database table and the attributes of your resource.

Most if not all of the time, you will require at least one static HTML page in your application. Rhythmyx lets you connect static pages to your dynamic pages by simply selecting the page in Explorer, dragging and dropping it into the Workbench, and connecting the resource to the page by dragging the connection point from the resource to the HTML page.

What’s an HTML application without graphics? Adding an image to your application is as simple as finding the file using Explorer and dragging and dropping it into the Workbench. This physically adds the file to your application by copying the image file to your project directory. The last step is to verify that the application starts up on command.

This is just the tip of the iceberg with Rhythmyx. You can create applications that provide both query and update capabilities as well as multi-table queries, transaction support, and applications that retrieve and update data from heterogeneous sources. Your application, for example, can use data from two completely different database systems such as Oracle and Microsoft SQL Server.

An essential feature in Web applications is the ability to do interactive searches by specifying search criteria and presenting the results as a summary list or table allowing for drill-down into detail. Rhythmyx supports this function through the generation of dynamic hyperlinks. You do not have to do anything; Rhythmyx automatically generates the detail pages and places the dynamically generated hyperlinks onto the summary page. In addition, you can link non text resources to any page.

Rhythmyx provides an intuitive and easy-to-use environment to build interactive, data-driven Web applications. What I found so attractive about it is that you can be productive “right out of the box,” and you can quickly get up to speed. If you are looking for a tool to enable your Web site with data-aware HTML pages, Rhythmyx is a great place to start.



Peter Fischer (pfischer@qtrg.com) is director of technical services for Quantum Technology, which specializes in EAI using Java enterprise technology, application servers, and middleware.





IE Weekly Newsletter
Subscribe to the newsletter
    Email Address







Techweb
Informationweek Business Technology Network
InformationweekInformationweek 500Informationweek 500 ConferenceInformationweek AnalyticsInformationweek Events
Informationweek MagazineGlobal CIOIWK Government ITbMightyByte and SwitchDark Reading
Digital LibraryIntelligent EnterpriseInternet EvolutionNetwork ComputingPlug Into The CloudDr. DobbsContentinople
space
TechWeb Events Network
InteropVoiceConWeb 2.0 ExpoWeb 2.0 SummitEnterprise 2.0Mobile Business ExpoNoJitter
Black HatGTECEnergy CampCloud ConnectGov 2.0 ExpoGov 2.0 Summit
space
Light Reading Communications Network
Light ReadingLight Reading AsiaUnstrungCable Digital NewsInternet EvolutionPyramid Research
Heavy ReadingLight Reading LiveLight Reading InsiderEthrnet ExpoTelco TVTower Technology Summit
space
Financial Technology Network
Advanced TradingBank Systems and TechnologyInsurance and TechnologyWall Street and TechnologyAccelerating WallstreetBST SummitBuyside Trading SummitIT Summit
space
Microsoft Technology Network
MSDNTechNetTotal IT ProTotal Dev ProNET Total Dev Pro CommunitySQL Total Dev Pro Community
space