A Good Idea With Some Loose Ends - InformationWeek

InformationWeek is part of the Informa Tech Division of Informa PLC

This site is operated by a business or businesses owned by Informa PLC and all copyright resides with them.Informa PLC's registered office is 5 Howick Place, London SW1P 1WG. Registered in England and Wales. Number 8860726.

IoT
IoT
Software // Information Management

A Good Idea With Some Loose Ends

Nexaweb attacks Web app performance, but neglects data management.

All Together in the IDE

Because of the transformation of UI elements into XUL and other message-oriented optimization, elements of a Nexaweb application destined for the client side are different. For that reason, Nexaweb created Nexaweb Studio as the IDE to develop most of the client UI, to develop the business logic (MCOs), and to integrate other programming elements. Nexaweb Studio is built on the Eclipse IDE, wedding that environment to the requirements of Nexaweb's runtime scheme.

In most respects the development surfaces, available widgets, and plenitude of wizards (Component Wizard, Event Wizard, Application Wizard, Data Service Wizard, Layout Wizard, Data Connection Wizard) should be familiar to any developer that has used a major Java IDE. In fact, Nexaweb Studio expects that developers will be using other tools to provide application components that aren't created using Nexaweb Studio, especially Web services, EJBs, and some kinds of servlets. It provides explicit instructions for integrating with IBM WebSphere Studio Application Developer.

The following may be a key point for a lot of shops: Nexaweb uses the existing Java infrastructure — application server, security systems, database connectivity, JSP engine, EJB containers, and Java Servlet Engine. What needs to be changed (and Nexaweb can import Java code from other applications) are the UI, business logic, and perhaps some servlet action.

Pros

  • Makes possible responsive and sophisticated user interfaces (as opposed to HTML).
  • Leverages developer knowledge of Java (especially Eclipse) and Java server technology.
  • Centralized management for wide deployment of Web apps.

Cons

  • The "big picture" of how to create a Nexaweb-enabled app is difficult to acquire.
  • Data management is almost an afterthought.
  • XUL, crucial to Nexaweb's approach, is neither fully developed nor a "standard."

Dangling Data Management

While most developers will have little problem adapting to Nexaweb for the UI or business logic, data management may be problematic. The current version of Nexaweb data service provides data to the Nexaweb client by transforming XML data with an XSL stylesheet into XUL. XML, Stream, and JDBC data providers are supported. The most common business end of this will be JDBC (and the JDBC/ODBC-bridge), which requires many steps to name and qualify the driver, qualify the data source, and finally to use a crude query builder for the SQL statement. What Nexaweb recommends is that JDBC/ODBC, EJB/Entity Beans, or JDO/JCache approaches be used, which means creating them in another development system.

This works, to a point, but it doesn't provide the kind of control over data typical in other IDEs where making data available to applications is emphasized. Data can be managed within Nexaweb Studio, but the relationship to data is murky and not optimized. (Anything that travels over the JDBC/ODBC bridge is suspect.) Nexaweb should be carefully tested before using it with applications such as analytics or reporting where large amounts of data need to be sent to the client either for processing or user interaction.

Figure 2
Figure 2: Nexaweb Studio uses numerous wizards to help the developer create an application for the Nexaweb method of deployment.

Not Quite the Sum of the Parts

The clever use of XML (XUL/SVG) and incremental updating of the UI to create an ultra-thin messaging system makes it possible to have a rich — but thin — client. This is no mean achievement, but it's not necessarily easy for the average developer to understand. There are loose ends, in the documentation, in database management, and component integration. As a general impression, Nexaweb, more than many IDEs, is a work in progress. At this stage, it may be difficult to figure out the "road map" to using existing Java components and adapting applications for Nexaweb deployment.

The question is, then, is it worth the extra, or at least different, effort? Is this approach actually faster than HTML? Can users get a better application experience? Yes, they can. Timings with a couple of applications convinced me that the Nexaweb applications respond more quickly. Unfortunately, that was only two applications with a user base of one. The limit to scalability of a Nexaweb application is still an open question in my mind. I will say it's great to be rid of the screen blipping that's the curse of so many HTML applications.

Will It Fit in Your Shop?

Nexaweb doesn't compete with or replace the big, general-purpose IDEs from the likes of IBM, Microsoft, Borland, or Oracle; in fact, to succeed it should work with them so easily that creating Nexaweb-enabled applications is almost automatic. At the moment, Nexaweb needs to make clearer the how, where, and why of its process. It's competing as an alternative Web application delivery method with Macromedia MX, DHTML/JavaScript, Java Swing, Java WebStart, and Java Applet/ActiveX. In this arena, Nexaweb has much to offer in its deployment and runtime architecture (especially with small format, mobile applications); it deserves a first look and careful evaluation.

Nelson King is a 25-year veteran of the coding wars. He has written nine books on application development, and his tool evaluations are widely published.

We welcome your comments on this topic on our social media channels, or [contact us directly] with questions about the site.
Previous
2 of 2
Next
Comment  | 
Print  | 
More Insights
Slideshows
IT Careers: Top 10 US Cities for Tech Jobs
Cynthia Harvey, Freelance Journalist, InformationWeek,  1/14/2020
Commentary
Predictions for Cloud Computing in 2020
James Kobielus, Research Director, Futurum,  1/9/2020
News
What's Next: AI and Data Trends for 2020 and Beyond
Jessica Davis, Senior Editor, Enterprise Apps,  12/30/2019
White Papers
Register for InformationWeek Newsletters
Video
Current Issue
The Cloud Gets Ready for the 20's
This IT Trend Report explores how cloud computing is being shaped for the next phase in its maturation. It will help enterprise IT decision makers and business leaders understand some of the key trends reflected emerging cloud concepts and technologies, and in enterprise cloud usage patterns. Get it today!
Slideshows
Flash Poll