YOUR FEEDBACK
Jeremy Geelan wrote: In response to inquiries and suggestions from readers this lexicon has recently...


2008 East
DIAMOND SPONSOR:
Data Direct
Frontiers in Data Access: The Coming Wave in Data Services
PLATINUM SPONSORS:
Red Hat
The Opening of Virtualization
Intel
Virtualization – Path to Predictive Enterprise
Green Hills
IT Security in a Hostile World
JBoss / freedom oss
Practical SOA Approach
GOLD SPONSORS:
Software AG
The Art & Science of SOA: How Governance Enables Adoption
PlateSpin
Effective Planning for Virtual Infrastructure Growth
Fujitsu
Automated Business Process Discovery & Virtualization Service
Ceedo
Workspace Virtualization
Click For 2007 West
Event Webcasts

2008 East
PLATINUM SPONSORS:
Appcelerator
Think Fast: Accelerate AJAX Development with Appcelerator
GOLD SPONSORS:
DreamFace Interactive
The Ultimate Framework for Creating Personalized Web 2.0 Mashups
ICEsoft
AJAX and Social Computing for the Enterprise
Kaazing
Enterprise Comet: Real–Time, Real–Time, or Real–Time Web 2.0?
Nexaweb
Now Playing: Desktop Apps in the Browser!
Sun
jMaki as an AJAX Mashup Framework
POWER PANELS:
The Business Value
of RIAs
What Lies Beyond AJAX?
KEYNOTES:
Douglas Crockford
Can We Fix the Web?
Anthony Franco
2008: The Year of the RIA
Click For 2007 Event Webcasts
SYS-CON.TV
TOP THREE LINKS YOU MUST CLICK ON


How To Give Your Web Applications A Facelift With WebCharts3D To Make It A Blockbuster
Give your Web app a facelift with WebCharts3D to make it a blockbuster

You can create a sophisticated application that implements complex algorithms, but in many cases you sell its GUI part to your users. The presentation layer of plain vanilla HTML/JSP-based Web applications is usually pretty basic unless you use specialized software. Today we are testing the charting engine WebCharts3D 5.0 from GreenPoint.

Let me introduce myself: I am a Java developer with basic JSP skills and a stopwatch on my desk. My task is to show you how you can create a Web page in less than 20 minutes that retrieves the sales data from an external data source and displays them as a chart using WebCharts3D.

To set the scene, I downloaded and installed the beta version of the Tomcat 5.5 servlet container from Apache (http://jakarta.apache.org/tomcat/). Actually, WebCharts3D comes with an embedded Web server that can be used for test purposes, but I decided to use a commercial-grade server. I've also created a plain comma-delimited sales_data file with the annual sales data in a cross-tab form:

John		2002	7171.30
Alex 2002 5921.00
Mary 2002 6273.00
Sam 2002 5092.00
John 2003 2980.30
Alex 2003 3928.00
Mary 2003 8905.00
Sam 2003 3093.90
John 2004 5095.30
Alex 2004 2000.00
Mary 2004 2870.00
Sam 2004 4900.90
I spent the next five minutes downloading and installing WebCharts3D 5.0 from www.gpoint.com.

Start WebCharts3D, and you'll see its Designer screen with a large variety of charts to choose from (some of them are shown in Figure 1). You can select one of the following: bar, pie, radar, dial, statistical, and Gantt charts.

Designing a Chart
Every chart consists of two parts: a style and a model (remember the MVC paradigm?). Internally, both style and model are generated in XML format.

For this demo I've selected one of the flavors of a 3D bar chart (it's the third icon in the first row in Figure 1). This opened the screen shown in Figure 2. On the right side you can modify multiple properties of the chart starting with colors to event processing.

To populate the chart with the data from our sales file just go to the XML Model tab, check the Crosstab box, press the button "Import From File" and select our sales_data file. You'll see the table with our data and XML with hard-code sales values. Switch to the tab Design again to make sure that the chart is populated with our data.

Since we don't want to create charts with hard-coded data, go to the tab CodeView, press the Options button, and select the model "Imported File" (for databases you'd select the model "Database Query"). The Designer immediately generates the JSP code as shown in Listing 1.

Please note that the line myChart.linkTo() points at my sales_data file as the data source.

You can immediately see how the chart will look in your Web browser. Let's launch the embedded server: select the Console tab at the bottom of the Designer's screen and press the Start button and wait a second for the message "Server Started on port 8802." To see your Sales chart just open your Web browser and enter the following URL: http://localhost:8802 as in Figure 3.

The next code snippet shows how you can get the data from a database using the JDBC-ODBC bridge:

Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
Connection dbConn = DriverManager.getConnection("jdbc:odbc:...",
"admin" , "User Password");
myChart.linkTo(dbConn,"select ProductName, Sales from Sales",false, false);

Note the links at the bottom of the screen in Figure 3. You've guessed it right! For example, press the PDF link, and see your chart in Adobe Acrobat Reader if you have it installed.

Flash and SVG-Animated Charts Some of the chart formats can be animated. To animate our sales chart using the Flash file format just select the SWF or SVG link while watching the chart in the embedded HTTP server (or set the chart type to SWF or SVG). You'll see how the bars start growing one after another. You can change their order of appearance by setting the Morphing attributes of your chart elements in the Designer. The charts can grow vertically or horizontally, you can add a blurring effect, and set the length and quality of your movie by playing with the framesCount and framesPerSecond properties. You can animate the entire chart or by row or by column. You can control the time of the animation, pauses between fazes, etc. If you want to get a "wow" from your users, add the animation to your charts.

Deploying the Sales Chart Under Tomcat
Just follow the simple steps below to deploy our chart under Tomcat (the process is literally the same in any J2EE-compliant servlet container):

  1. Copy ws50.jar into the WEB-INF\lib directory to make WebCharts3D-supporting classes available to Tomcat.
  2. Create the file getImage.jsp in the root directory of the Web server. This file is used internally to retrieve the generated image temporarily stored on the server. Go to Designer's File | Setup menu, select the Server tab and enter the application home directory, which in the case of a default Tomcat installation is C:\Program Files\Apache Software Foundation\Tomcat 5.5\webapps\ROOT
  3. Restart Tomcat.
  4. In the Designer's CodeView tab press the Save button and save the generated code shown in Listing 1 in Tomcat's root directory as sales.jsp. In the real world you'd copy and paste this code into one of your existing JSPs.
  5. Point your browser at http://localhost:8080/sales.jsp and you'll see a screen as in Figure 4.
The yellow box is a cool feature called annotation - not to be confused with Java 5.0 annotations - that shows the underlying data as you move a mouse pointer over the chart. If you know Swing, it's similar to tooltips. Figure 4 shows the default annotation, but you can change the text the same way you'd change any other chart property.

The Web page is ready and my stopwatch shows that the entire process including the WebCharts installation took about 20 minutes. Of course, I've only demonstrated a small part of the WebCharts3D functionality, but the result is pretty impressive.

About Yakov Fain
Yakov Fain is a managing principal of Farata Systems, consulting, training and product company. He has authored several Java books, dozens of technical articles. SYS-CON Books released his latest co-authored book , "Rich Internet Applications with Adobe Flex and Java: Secrets of the Masters" in Spring 2007. Sun Microsystems has nominated and awarded Yakov with the title Java Champion. He leads the Princeton Java Users Group. Yakov teaches Java and Flex 2 part time at New York University. He is an Adobe Certified Flex Instructor and an Editor-in-Chief of Flex Developers Journal.

YOUR FEEDBACK
Java Web Development Company wrote: Hi, Great Post... Thanks..
Linux News Desk wrote: The original creator of the Struts and Shale web application frameworks, Sun's Craig McClanahan, is to give a session on 'Encapsulating AJAX Functionality in JavaServer Faces Components' at AJAXWorld Conference & Expo 2007 East, being held 19-21 March at The Roosevelt Hotel in New York City.
LATEST JAVA STORIES & POSTS
What's the key to team and individual developer productivity in maintaining and extending a large application? Let’s start by making the following assertions: A developer's knowledge of an application code base is likely the single biggest factor of individual productivity. Cor...
An applet, a Java program that runs in a browser, often has to access the client resources. However, the security manager prevents an applet from accessing client resources. To access client resources, the applet has to have the proper permission. With this permission the applet ...
Three-letter acronyms (TLAs) are hardly new in Information Technology: EAI, ESB, SOA, BPM, BAM, ETL, MDM; the list goes on and on. This article is about yet another three-letter acronym, EDA, which stands for Event-Driven Architecture. EDA is not a brand new technology, but rathe...
Furthering its dedication to providing Java developers productivity with choice, Oracle announced the Oracle Enterprise Pack for Eclipse, a new component of Oracle Fusion Middleware. This release marks the first free Eclipse 3.4 environment to support Oracle WebLogic Server 10g R...
Two of the biggest launches in Rich Internet Application history took place in 2007/2008 when Adobe launched AIR 1.0 in February '08 and Microsoft launched Silverlight (September '07). At the 6th International AJAXWorld RIA Conference & Expo in October SYS-CON Events is delighted...
Red Hat CTO Brian Stevens, Citrix CTO Simon Crosby, Egenera CTO Pete Manca, Allen Stewart, Group Manager, Windows Virtualization at Microsoft, and Brian Duckering, Sr. Director of Products and Alliances at Symantec were the top industry executives who joined Jeremy Geelan in the ...
SUBSCRIBE TO THE WORLD'S MOST POWERFUL NEWSLETTERS
SUBSCRIBE TO OUR RSS FEEDS & GET YOUR SYS-CON NEWS LIVE!
Click to Add our RSS Feeds to the Service of Your Choice:
Google Reader or Homepage Add to My Yahoo! Subscribe with Bloglines Subscribe in NewsGator Online
myFeedster Add to My AOL Subscribe in Rojo Add 'Hugg' to Newsburst from CNET News.com Kinja Digest View Additional SYS-CON Feeds
Publish Your Article! Please send it to editorial(at)sys-con.com!

Advertise on this site! Contact advertising(at)sys-con.com! 201 802-3021


SYS-CON FEATURED WHITEPAPERS

SPONSORED BY INFRAGISTICS
There are many forces that influence technological evolution. After a decade of building enterprise ...
2008 is going to be an important year for Rich Internet Applications. Most organizations are deliver...
The OpenAjax Alliance is developing an Ajax industry wishlist for future browsers, using a dedicated...
In every field of design one of the first things students do is learn from the work of others. They ...
Infragistics announced the availability of two Community Technology Preview (CTP) User Interface (UI...
The YUI development team has released version 2.5.2; you can download the new release from SourceFor...
ADS BY GOOGLE
BREAKING JAVA NEWS

SpringSource, a leading provider of infrastructure software and the company behind ...