RIA Technologies in ASAM-ODS Solutions
Transcription
RIA Technologies in ASAM-ODS Solutions
Deepak Patil (Technical Director) pdeepak@iasys.co.in iASYS Technologies Pvt. Ltd. The term rich Internet application (RIA) combines the flexibility, responsiveness, and ease of use of desktop applications with the broad reach of the web. Using the broad reach of the Internet, RIAs can be deployed across browsers and desktops. Examples of RIA technologies includes Curl, GWT , Adobe Flash/Adobe Flex/AIR, Java/JavaFX, uniPaaS, Mozilla's XUL Microsoft Silverlight. Among the RIA technologies Adobe® Flash® Platform is the leading solution for building rich Internet applications, offering a complete set of integrated technologies supported by an established ecosystem. The Adobe® Flash® Platform offers businesses and developers a set of proven, flexible technologies for rapidly building effective enterprise applications that run across operating systems and browsers and integrate easily with existing infrastructure. Comparison Ajax Flex Cross Browser and Cross Platform dependency Cross Browser and Cross Platform independency No Default Validation Supports Default Validation Support No Drag Drop Facility Available Drag Drop Facility Available Does not supports animations, transparency, layering, audio and video streaming Supports animations, transparency, layering, audio and video streaming Has to provide code security by code Provided code security internally Session has to managed by code Session are managed internally Most of the Ajax frameworks depends on an IDE Flex application can build and compile without Flex Builder using the SDK. Less efficient at passing large amounts of data More efficient at passing large amounts of data Compiled css file does not support. Compiled css file support. These additional technologies can be used in combination with the Adobe Flash Platform to build RIAs. Adobe Flash Player Adobe Flex® Builder™ The open source Adobe Flex framework Adobe Flash Player software is installed on over 98% of clients in enterprises (according to analyst reports), making the Flash Platform the most consistent platform for deploying enterprise applications. Macromedia’s Flash 6+ is a multi-platform plug-in installed in most Web browsers as well as an application for developing content, interfaces, and applications. Flash 6+ supports rich vector-graphics, animation, and the ability to build advanced web applications using scripting, forms, XML, and server socket connections. Flash 5 has limited support for some of these feature Sets. 2 languages MXML (actually a library of ActionScript) ActionScript 3 Compilers Debuggers Rich Component Library Flex Builder IDE Eclipse Plug-in or turn-key install Accelerates Design Design view and code view Flex Builder IDE Flex SDK MXML ActionScript Flex Class Library Debugger Flex Builder IDE Browser Flex SDK MXML Flash Player ActionScript Flex Class Library SOAP HTTP/S AMF/S RTMP/S Web Server Compile XML/HTTP Remote Object Web Services LC Data Services J2EE Application Server Existing Applications & Infrastructure Flex SDK provides features for accessing server-side data. We can use Flex data access components to work with three types of services: HTTP (REST-style) Services Web Services Remote Object Services Flex data access components are created in MXML or ActionScript. These components are based on service oriented architecture (SOA). These components use remote procedure calls to interact with server environments, such as PHP, Adobe ColdFusion, Java, and Microsoft ASP.NET, to provide data to Flex applications and send data to back-end data sources. Platform Browser Microsoft Windows 98 Microsoft Internet Explorer 5.5, Firefox 1.x, Mozilla 1.x, Netscape 7.x or later, AOL 9, Opera 7.11 or later Windows Me Microsoft Internet Explorer 5.5, Firefox 1.x, Mozilla 1.x, Netscape 7.x or later, AOL 9, Opera 7.11 or later Windows 2000 Windows XP Windows Server 2003 Mac OS X v.10.1.x, 10.2.x, 10.3.x, or 10.4.x Microsoft Internet Explorer 5.x, Firefox 1.x, Mozilla 1.x, Netscape 7.x or later, CompuServe 7, AOL 9, Opera 7.11 or later Microsoft Internet Explorer 6.0, Firefox 1.x, Mozilla 1.x, Netscape 7.x or later, CompuServe 7, AOL 9, Opera 7.11 or later Microsoft Internet Explorer 6.0, Firefox 1.x, Mozilla 1.x, Netscape 7.x or later, CompuServe 7, AOL 9, Opera 7.11or later Internet Explorer 5.2, Firefox 1.x, Mozilla 1.x, Netscape 7.x or later, AOL for Mac OS X, Opera 6, Safari 1.x or later Platform Browser Microsoft® Windows Vista® Microsoft Internet Explorer 7, Firefox 2.0, AOL 9, Safari 3.x or later Microsoft Windows XP Microsoft Internet Explorer 6.0 or later, Firefox 1.x, Firefox 2.x, Mozilla 1.x or later, Netscape 7.x or later, AOL 9, Opera 7.11 or later, Safari 3.x or later Microsoft Internet Explorer 6.0 or later, Firefox 1.x, Firefox 2.x Microsoft Windows Server® 2003 Microsoft Windows 2000 Microsoft Internet Explorer 5.x, Firefox 1.x, Firefox 2.x, Mozilla 1.x, Netscape 7.x or later, AOL 9, Opera 7.11 or later Microsoft Windows Millennium Edition Microsoft Internet Explorer 5.5, Firefox 1.x, Mozilla 1.x, Netscape 7.x or later, AOL 9, Opera 7.11 or later Red Hat® Enterprise Linux (RHEL) 3 update 8, RHEL 4 update 4 (AS/ES/WS) Firefox 1.5.0.7 or later, Mozilla 1.7.x or later, SeaMonkey 1.0.5 or later Novell SUSE™ 9.x or 10.1 Firefox 1.5.0.7 or later, Mozilla 1.7.x or later, SeaMonkey 1.0.5 or later Platform Microsoft® Windows Vista® Microsoft Windows XP Microsoft Windows Server® 2003 Browser Microsoft Internet Explorer 7.0 or later, Firefox 2.x, Firefox 3.x, AOL 9, Opera 9.5 or later, Safari 3.x, Chrome 2.0 or higher Microsoft Internet Explorer 6.0 or later, Firefox 2.x, Firefox 3.x, AOL 9, Opera 9.5 or later, Safari 3.x, Chrome 2.0 or higher Microsoft Internet Explorer 6.0 or later, Firefox 2.x, Firefox 3.x Microsoft Windows 2000 Microsoft Internet Explorer 6.0, Firefox 2.x, Firefox 3.x, AOL 9, Opera 9.5 Microsoft Windows Server 2008 Microsoft Internet Explorer 7.0 or later, Firefox 3.x Red Hat® Enterprise Linux (RHEL) 5 Firefox 2.x, Firefox 3.x, SeaMonkey 1.11 Novell SUSE™ 9.x or 10.1 Firefox 2.x, Firefox 3.x, SeaMonkey 1.11 Ubuntu 7.10 or later or 8.04 or later Firefox 2.x, Firefox 3.x, SeaMonkey 1.11 Flex Builder IDE Files SQLite Flex SDK MXML Desktop Notifications Clipboard AIR Client Runtime ActionScript Flex Class Library SOAP HTTP/S AMF/S RTMP/S Web Server Compile & Package XML/HTTP REST SOAP Web Services LC Data Services J2EE Application Server Existing Applications & Infrastructure There are various Flex development frameworks Cairngorm PureMVC Mate Flight Cairngorm (pronounced \kern-gorm\) is a lightweight micro-architecture for Rich Internet Applications for Flex or AIR applications. It is not only a framework, but also an approach to organizing and packaging code, components, and a method to achieve separation of concerns (i.e. Model-view-controller). Compared to other frameworks, Cairngorm requires the most components, but it is the most straightforward. Controller View/Gesture Event Model Command Delegate Service Server Side Java Classes There are two ways to integrate flex in AJAX application 1. AJAX Bridge The Flex Ajax Bridge (FABridge) is a small code library that you can insert into an Flex application, a Flex component, or an empty SWF file to expose it to scripting in the browser. Rather than having to define new, simplified APIs to expose a graph of ActionScript objects to JavaScript, with FABridge you can make your ActionScript classes available to JavaScript without any additional coding. After you insert the library, essentially anything you can do with ActionScript, you can do with JavaScript. 2. External Interface The ExternalInterface class enables communication between ActionScript and Flash Player containers such as an HTML page containing JavaScript and an embedded SWF file, or an application that has the Flash Player embedded in it. The communication is available in both directions. An HTTP/JavaScript page can call an ActionScript function which can return data that the JavaScript can use or ActionScript can call JavaScript. ActionScript can call any JavaScript function passing arguments and receiving a return value from the JavaScript function. JavaScript on the HTML page can easily call an ActionScript function complete with arguments and return values. Flex Builder IDE Browser Flex SDK MXML Flash Player ActionScript Flex Class Library HTTP/S Web Server Compile XML/HTTP J2EE Application Server Browser Flash Player ASAM ODS - API DEMOS ODS BROWSER Automotive Certification Testing Workflow Flex Integration into existing AJAX website