Review: UltraDev 4

Kevin Yank
Kevin Yank

UltraDev 4 Fireworks 4 StudioHTML editors aren’t what they used to be. With the recent surge of growth in the area of server-side scripting and database-driven site design, the tools of the trade are evolving along with the needs of Web developers. Including support for WYSIWYG development of sites driven by ASP, JSP, and CFML, Macromedia’s Dreamweaver UltraDev 4 brings a host of powerful new features to the table, along with everything that Dreamweaver 4 has to offer (see the Review: Dreamweaver 4).

For readers unfamiliar with UltraDev, it is essentially Macromedia’s exceptional Web editor Dreamweaver 4 “beefed up” with features aimed at developers of dynamic and/or database-driven Web sites. The main advantage that UltraDev has over its competitors in this arena, which include Allaire Cold Fusion Studio, Microsoft Visual Interdev, and Adobe GoLive, is a degree of language and server independence. While these other programs are limited to working with a single scripting technology (ASP, or CFML in the case of Allaire’s product), UltraDev gives the developer the freedom to work with ASP, JSP, or CFML, and to interact with any database server these languages can connect to.

While freedom to work in any of the three supported languages is nice, UltraDev’s trademark since the release of the original version in June 2000 has been the Live Data preview. At the click of a button, fields defined to contain dynamic information culled from the database will be displayed as live data fetched from the database. This is, to put it mildly, an impressive feat to behold. While competing editors automate the process of uploading a preview page to your server and opening it in a Web browser, UltraDev brings the data to you, letting you work in real time with a WYSIWYG view of what your page will actually look like, dynamic data and all. UltraDev can also cache the results of queries used in your pages so that you can still work with the Live Data preview when your development computer is not connected to the network, and thus cannot access the database server.

New in UltraDev 4, you can now configure the Live Data preview to connect to the database using the same connection mechanism that your finished site will use. This is handy in situations where you database server is not directly accessible from your development machine for security reasons. To accomplish this, UltraDev uploads a set of scripts into a special directory on your server. It then uses those scripts to communicate with the database server using standard HTTP requests. When you’ve finished your development work, you can then instruct UltraDev to remove these scripts from the server, thereby closing the potential security hole that they represent (note that to exploit that hole a hacker would still need to obtain your username and password to log into the database – the scripts only provide a bridge for the connection).

Reference PanelAs of version 4, Dreamweaver has become a fusion between a WYSIWYG editor and a code-based editor, allowing the designer to flip between the two views, or work in a split-screen view to see both at once. UltraDev 4 inherits these new features as well, providing full syntax highlighting for ASP, JSP, and CFML in addition to the JavaScript and HTML highlighting present in Dreamweaver. The handy Reference panel, which in Dreamweaver 4 provides a complete reference for HTML, JavaScript, and CSS courtesy of O’Reilly, may be expanded in UltraDev 4 to provide references for ASP and JSP from WROX Press by downloading two free plugins from the Macromedia Exchange. Although no CFML reference is available as of this writing, I wouldn’t be surprised to see Macromedia produce one at some point in the near future.

To users of the previous version of UltraDev, the concept of a Server Behavior should be quite familiar. For the uninitiated, Server Behaviors are what Macromedia calls the pieces of server-side functionality available in UltraDev. These include things like repeating a section of HTML for each row in a database result set (to display a table of results, for instance), displaying a form to add records to a database, providing next/previous links to navigate through a result set displaying a limited number of results per page, and other common design elements for database-driven sites. In UltraDev 4, the library of Server Behaviors has been expanded by providing more flexibility for existing Behaviors and adding Behaviors for user authentication. These new Behaviors allow you to secure pages by requiring that users provide a username and password that are checked against entries in a database table of your own choosing. The results produced by these new Behaviors look very professional; you’ll never have to code a site signup form by hand again!

While the existing library of Server Behaviors is extensive, UltraDev was designed as an expandable product, so that new Behaviors could be added by programming them with the Dreamweaver JavaScript API. While this was a powerful option, it was not especially convenient. UltraDev 4 features a new Server Behavior Builder that lets you design new Behaviors without coding. In the screenshot below, I’ve put together a very simple example that will prompt the designer to choose a database record set and a column name and will display the selected text in red if the value from the database happens to be negative.

Server Behavior Builder

Get Your Copy of Kevin Yanks Book NOW!One of the biggest gripes that JSP developers had with the previous version of UltraDev was its weak support for JavaBeans. In UltraDev 4, JavaBeans can now be added as data sources just like database queries; their properties become available for use in creating dynamic text fields and such. Flexibility in this area could still be better (for example, the you must place copies of the Java class files for JavaBeans you wish to use into the UltraDev directory), but the fact that UltraDev now allows you to hand-code these sorts of things makes using JavaBeans components a lot more convenient than it was in the previous version.

If you’re used to hand coding your database-driven Web sites, UltraDev’s drag-and-drop WYSIWYG paradigm certainly takes some getting used to. With UltraDev 4’s support for direct code editing, however, you can get right to work with your existing skills and then gradually migrate to UltraDev’s helpful, time saving features. The only real disappointment in UltraDev 4 is the lack of support for PHP. If you’re committed to developing your sites in PHP, you had best look elsewhere; otherwise, download the 30-day trial version and find out for yourself how UltraDev can simplify your dynamic Web development tasks, letting you get more done in less time!

Pricing and Availability:

Dreamweaver UltraDev 4 for Windows and Macintosh – US$599
UltraDev 4 Fireworks 4 Studio – US$699
Dreamweaver UltraDev 4 Upgrade from Dreamweaver UltraDev – US$129
Dreamweaver UltraDev 4 Promotion for Dreamweaver Users – US$299

30-day free trial and full version available now at