Enterprise Flex and Java RIA with Clear Toolkit Framework

Clear Toolkit Magazine

Subscribe to Clear Toolkit Magazine: eMailAlertsEmail Alerts newslettersWeekly Newsletters
Get Clear Toolkit Magazine: homepageHomepage mobileMobile rssRSS facebookFacebook twitterTwitter linkedinLinkedIn


Top Stories

A typical Java developer knows that when you need to develop a GUI for a Java application, Swing is the tool. Eclipse SWT also has a number of followers, but the majority of people use Java Swing. For the past 10 years, it was a given that Swing development wouldn't be easy; you have to master working with the event-dispatch thread, GridBaglayout, and the like. Recently, the NetBeans team created a nice GUI designer called Matisse, which was also ported to MyEclipse. Prior to Matisse, JBuilder had the best Swing designer, but it was too expensive. Now a good designer comes with NetBeans for free. Why even consider Flex for developing Rich Internet Applications (RIA)? First, we'll give the short answer. Just look at the code in Listing 1. This code compiles and runs in the Flash player and produces the output shown in Figure 1. Yes, it's a tree control with several no... (more)

Adobe Flex 2: Advanced DataGrid

In any GUI tool, one of the most popular components is the one that shows data in a table format like JTable in Java or Datawindow in PowerBuilder. The Adobe Flex 2 version of such a component is called DataGrid. In any UI framework, the robustness of such a component depends on formatting and validating utilities as well as a whole suite of data input controls: CheckBoxes, ComboBoxes, RadioButtons, all sorts of Inputs, Masks, and so on. Using theatrical terminology, the role of the king is played by his entourage. Practically speaking, touching up the DataGrid is touching up a large portion of the Flex framework. We'll start by upgrading the standard DataGrid to a "destination-aware" control capable of populating itself. Next, we'll look at the task of formatting DataGrid columns and that would naturally lead us to a hidden treasury of the Flex DataGrid - the Data... (more)

Rich Internet Applications - State of the Union

[This prescient article first appeared on SYS-CON.com nearly 12 months ago.] We are entering an era of Rich Internet Applications (RIA),  and many enterprise development managers are facing the dilemma - which way to go - remain with  tried and true Java or .Net technologies or less known yet AJAX, Flex, OpenLaszlo or a number of other vendors.  This article is an attempt to give a brief overview of what's out there on the RIA market. Historically there have been major shifts in the software industry. We moved from mainframes with dumb terminals to client/server. Users gained in convenience and productivity, and mainframe systems were patronizingly labeled as legacy. With the availability of the World Wide Web industry visionaries turned the tables: vendors and corporate IT had been eager to get rid of the complexity of client/server version management and technologist... (more)

A Complete Application with RPC Communications...

This is a book excerpt from the book RIch Internet applications with Adobe Flex and Java. Configuring the Server-Side Destination and Proxy For security reasons (similar to the Java sandbox concept), Flash clients can only access the domains they come from, unless other servers declare, explicitly or implicitly, trust to SWF files downloaded from our domain by a corresponding record in a crossdomain.xml file. But our portfolio SWF wasn't loaded from finance.yahoo.com, and we aren't allowed to install crossdomain.xml on the Yahoo! servers. We'll use another technique called Flex proxy. When the user clicks on the News link in the data grid, the portfolio client will connect to our FDS Web application deployed under Tomcat (JRun, WebLogic), which will proxy our communication with Yahoo!. To configure the Flex proxy service, use the following section of the proxy-confi... (more)

Comparing the syntax of Java 5 and ActionScript 3

From Farata Systems flexblog Below is a short comparison table of major elements/concepts of these two languages for a quick reference. You can read this table either left-to-right or right-to-left, depending on what’s your primary programming language is today. This list is not complete, and your input is appreciated. Concept/Language Construct Java 5.0 ActionScript 3.0 Class library packaging .jar .swc Inheritance class Employee extends Person{…} class Employee extends Person{…}   Variable declaration and initialization String firstName=”John”; Date shipDate=new Date(); int i; int a, b=10; double salary; var firstName:String=”John”; var shipDate:Date=new Date(); var i:int; var a:int, b:int=10; var salary:Number; Undeclared variables n/a It’s an equivalent to the wild card type notation *. If you declare a... (more)

Working with Large Applications

In this excerpt from our book, Rich Internet Applications, we'll cover how to set up large applications intended for Web or, more broadly speaking, distributed deployment. As an example let's consider an enterprise application that consists of hundreds of screens, reports, forms, and dashboards. Accordingly, about a dozen engineers specializing in GUIs, frameworks, data layers, and business domains are working on this application in parallel. Every application "run" in Flex Builder as well as the invocation of the application's MXML file processed by the Web-tier Flex compiler requires an application build. Needless to say, this takes time. The bigger the application, the more time it takes. Developers need a fast process of building and deploying their applications. The application also has to be partitioned for team development both vertically (application screen... (more)

Apple and Emotional Discussions Around Adobe Flash Player

The recent announcement of iPad has ignited yet another wave of emotional discussions around the role of Flash Player in the evolution of mankind.  People easily take sides and everyone seems to know what’s right and what’s wrong.  Actually the word ‘’people” is too vague in this context, because vast majority of the population has no idea what Flash Player is, and they don’t have to know!  As long as they go to youtube and it plays videos people are happy and casually say, “Youtube is a great site!”   On the same note, I have no idea how my car operates. Back in my school days, I’ve learned that some stuff burns inside the engine producing another powerful stuff that make the wheels spin.  Do I need to know more? Absolutely not. I lease cars and change them every three years.  Once a year I visit those 10-min oil change shops, and people open up the hood and do s... (more)

Turning Your Adobe Flex/Java Application Into a RAD Project

While using Adobe Flex for development of the front end portion of your J2EE applications slowly but surely become a reality, many enterprise managers are still waiting for development of  Flex ecosystem that would include a pool of professional developers as well as third-party components making Flex-related projects more productive. Short learning curve, variety of Flex technical conferences and training seminars quickly address shortage of professional Flex developers. Last year, Adobe evangelists have created online Flex component exchange  where individuals and teams from all around the world started to offer their free and commercial components. A new community site myflex.org is yet another step in further evolving Flex ecosystem. This is a place that has been created to allow third party vendors offer their plugins and components for sale, and the first four com... (more)

Creating PDF Documents from Flex Applications

There are three ways of creating PDF documents from Adobe Flex applications: (1) by using the forms/LiveCycle designer - this process is well documented and requires someone to create XDP form (an Acrobat XML Data Package file), the data model and establish a process of synchronizing Flex application with LiveCycle, (2) by treating PDF printing as one of the features of your Flex application, seamlessly providing printing functionality (with or without LiveCycle Designer), and (3) by using Snapshots available in LCDS, which uses bitmaps to represent Flash content While the first process provides guaranteed quality and predictable results, it also requires a double effort of developing XDP and Flex forms and introduces the model and communications that can be foreign to the application domain. The third type of printing is good for screen-only PDFs due to low DPI used ... (more)

Closures in ActionScript 3

From Farata Systems blog Closures play a cornerstone role for dynamic languages. They are essential for implementing features like OO or building frameworks. At the same time, a formal definition of closures does not really help to understand them. Let us go through few examples. First, we’ll show what closures look like, and then we’ll give you their use patterns. It all starts with the use of an anonymous function that has access to variables in the outer lexical scope: import mx.controls.Alert; private var greeting:String=”Hello”; private function doInit(evt:Event) : void {   btn.addEventListener(”click”, function(evt:Event):void {   Alert.show... (more)

Clear Toolkit 4: The Road Map

Here’s the roadmap for Clear Toolkit 4 for the year of 2009: Offer data synchronization solution for AIR/BlaseDS applications - March 2009 Enhance Flex UI component to support PDF generation on the client - April 2009 Release documentation on classes from Clear component library (clear.swc) - May 2009. Offer a solution for Flex-based portals - May 2009 Open source most of the components of Clear Toolkit - August 2009 All components of Clear Toolkit will remain free of charge under MIT license. For Clear Toolkit production support contact Farata Systems at http://www.faratasystems.com. ... (more)