Development Trends

Archive for the ‘Adobe’ tag

FITC Amsterdam 2010

without comments

Time to register for FITC Amsterdam 2010

Some headlines from the FITC Website:

  • Two full days and nights of events, plus one day of optional pre-festival workshops
  • Over 50 presentations and panels covering the Creative, Technical, and Business aspects of Flash and digital media
  • Over 500 attendees from around the globe
  • Over 50 internationally renowned design and technology presenters
  • Includes three FITC evening events

Written by MKE

January 2nd, 2010 at 10:05 pm

Posted in Events

Tagged with ,

Four ways to integrate Adobe Flex with SAP Netweaver

without comments

For quite some time now SAP and Adobe has presented different methods and initiatives you could use if you would like to integrate Adobe Flex and SAP Netweaver.  I will try to summarize four different scenarios you could consider.

Using SAP Flash Island scenario

If you are using Netweaver 7.0 EhP1 or 7.1 then you can use the SAP Flash Island framework to integrate Adobe Flex with SAP (read more about SAP Flash Island here). The framework will create a ‘bridge’ between a SAP WebDynpro application and Flex. In order to ‘connect to this bridge/framework’ – you need to use a library from SAP in your Flex project – I have created a template project you can use for this purpose click here. Flash Islands are best suited for smaller applications/components – especially for areas where you are missing UI functionality in the WebDynpro, e.g. could be advanced graphics, interactive maps, graphs and statistics. Authentication, User and session management will be handled by the WebDynpro application.

Using SAP BSP and an embedded Adobe Flex component

So what do you do if your application is SAP is not based on WebDynpro – then you will be missing the framework and bridge which will make it easy to communicate with an Adobe Flex application – or ? Well in SAP BSP you can use <object><embed> … </embed><object> to include an SWF application in the application – read more here.  But the data binding and event handling you will have to handle yourself in the BSP and in the Flex application. This kind of integration is also meant for smaller applications/components – especially for areas where you are missing UI functionality in SAP BSP, e.g. again could be advanced graphics, interactive maps, graphs and statistics. Authentication, User and session management will be handled by the SAP BSP application.

Using an HTTP REST backend application in SAP BSP – and an Adobe Flex RIA as Frontend

So… what do we do if we want to build a larger application in Adobe Flex (RIA) which should be integrated with SAP Netweaver? Well.. One possibility would be to build a set of backend services in SAP BSP using the HTTP REST approach/architecture (read more here). In SAP you will then be building normal BSP’s which will receive the input parameters in a HTTP request – and send the reply to the calling application as XML. These services can be called from Adobe Flex using the HTTP-request object. The work could be divided in two parts: the work regarding the design and implementation in SAP and the work with the design and implementation of the RIA using Adobe Flex. In between you need to describe and design the implementation of the interface. User and session management could be handled by the SAP BSP application if it’s running as a state full application. Regarding Authentication you need to consider how you would implement this in the application.

Using WebService enabled SAP BAPI’s as backend application – and an Adobe RIA as Frontend

In the last method you could consider using Webservice enabled BAPI’s instead of having to write BSP’s to communicate with the frontend. From Netweaver 6.40 and onwards all BAPI’s in SAP could be webservice enabled – and from 7.0 the functionality has been improved. And it’s possible to call these webservice enabled BAPI’s directly from Adobe Flex. You can use standard BAPI’s and/or make custom development for your own specific BAPI requests. User and session management should be handled by the Adobe Flex application. Regarding Authentication you need to consider how you would implement this in the application.

Written by MKE

September 2nd, 2009 at 8:02 pm

RIA Hacker Night 2009 – SAP TechEd

without comments

The RIA Hacker Night 2009 will be held in connection with SAP TechED 2009 in Phoenix, Vienna or Bangalore. The sponsors this year will be: Adobe, RedMonk and SAPPress

Read more here and/or join here :-)

Written by MKE

August 19th, 2009 at 3:29 pm

Posted in Events

Tagged with , ,

How to use authorization headers in an Adobe AIR Application

with 7 comments

If you want to use some of the Google API’s in an Adobe AIR application you might run into some tricky issues regarding authorization headers. In this example, I will try to show you how to receive this Auth header token and then use it for subsequent calls to methods in the Google API later in the process.

In the following example – I will show you how to connect to Google Spreadsheet

The Google login (named ClientLogin) and methodcall is done in two steps. First step is to call the ClientLogin url (https://www.google.com/accounts/ClientLogin) in order to tell Google what service you would like to access and also pass your username/password for this account. If the uservalidation is succesfull then Google will send an Auth token in the response. You need to use this token in any other subsequent calls to methods in the Google API.

Next step is to call a method in Google spreadsheet – and in this example we will retrieve a list of spreadsheet objects. And here it’s important to pass the authorization header:

<?xml version="1.0" encoding="utf-8"?>
<mx:WindowedApplication
    xmlns:mx="http://www.adobe.com/2006/mxml"
    layout="absolute">

    <mx:Script>
        <![CDATA[

            import mx.rpc.events.FaultEvent;
            import mx.rpc.events.ResultEvent;
            import mx.controls.Alert;    
            import mx.utils.Base64Encoder;    

            [Bindable]
            private var AuthString:String;

            private function CallHTTP():void
            {
                google.send();                
            }            

            public function handleLoginPlain(event:ResultEvent):void
            {  

               var textindex:int;

               textout.text = event.result.toString();
               AuthString = event.result.toString();
               textindex = AuthString.search("Auth");
               AuthString = AuthString.substring(textindex);
               AuthString = AuthString.replace("Auth=","");
               textindex = AuthString.length;
               textindex = textindex - 1;
               AuthString = AuthString.substring(0,textindex);

               key.text = AuthString;

               googleaccount.headers =
               {Authorization:"GoogleLogin auth="+AuthString.toString()};
               googleaccount.send();
            }    
            public function handleLoginFault(event:FaultEvent):void
            {
              Alert.show(event.fault.faultString, "Error");
            }    

            public function handlePlaindata(event:ResultEvent):void
            {  
              Alert.show('You are connected to Google Spreadsheet',
                         'Login', mx.controls.Alert.OK);
            }    
            public function handleFaultdata(event:FaultEvent):void
            {
              Alert.show(event.fault.faultString, "Error");
            }            
        ]]>
    </mx:Script>            

    <mx:HTTPService id="google"
        url="https://www.google.com/accounts/ClientLogin"
        method="POST"
        contentType="application/x-www-form-urlencoded"              
        result="handleLoginPlain(event);"
        fault="handleLoginFault(event);" >
      <mx:request xmlns="">
        <accountType>GOOGLE</accountType>
        <Email>enter your e-mail address here</Email>
        <Passwd>enter your password here</Passwd>
        <source>enter your application name here</source>
        <service>wise</service>
      </mx:request>
    </mx:HTTPService>    

    <mx:HTTPService id="googleaccount"
        url="http://spreadsheets.google.com/feeds/spreadsheets/private/full"         
        result="handlePlaindata(event);"
        fault="handleFaultdata(event);" />

    <mx:Button id="login" x="40" y="30" label="Login" click="CallHTTP()"/>
    <mx:TextArea id="textout" x="40" y="60" width="400" height="260"/>
    <mx:TextInput id="key" x="104" y="30" width="336"/>

</mx:WindowedApplication>

Written by MKE

July 9th, 2009 at 11:11 pm

Posted in AIR, API, Adobe, Google

Tagged with , ,

Developing rich Internet applications for SAP with Adobe Flex

without comments

Do you want to know/learn more about RIA for SAP? – then read this whitepaper from Adobe.

Written by MKE

July 3rd, 2009 at 10:43 am

Find Flash security vulnerabilities with SWFScan

without comments

HP has released a free tool to help developers find and fix security vulnerabilities in applicationes developed with Adobe Flash.

From the HP Blog:

“The tool is the first of its kind to decompile applications developed with the Flash platform and perform static analysis to understand their behaviors. This helps developers without security backgrounds identify vulnerabilities hidden within the application which cannot be detected with dynamic analysis methods.”

Read the full article here

Written by MKE

June 22nd, 2009 at 10:32 pm

Posted in Adobe, FLEX 3.0

Tagged with ,

Social network – with Adobe Cocomo?

with one comment

Are you thinking about building a realtime Social Network Application with Adobe Flex…? Then you might want to visit the Cocomo project at Adobe Labs. In here you will find a set of hosted services which will make it easy to add social capabilities to your Adobe Flex application. You will need to register in the developer portal – and after this you will be able to download the Cocomo SDK, after this you are ready to add the SWC components to your RIA application. Currently the following features are available in Cocomo:

  1. VoIP Audio
  2. Webcam Video
  3. Chat
  4. Multi-User Whiteboards
  5. Real-Time File Sharing
  6. User Management
  7. Roles and Permissions
  8. Robust Data Messaging

If you know Adobe Connect – you will realize that some of the features in Cocomo are the same (I miss the desktop sharing possibility – but maybe it will turn up in Cocomo later).

Cocomo is currently in a testing phase – and the limitations are currently set to:

  1. 25 concurrent users
  2. 15,000 cumulative user minutes per month
  3. 250,000 messages published per month
  4. 3 GB bandwidth (in + out) per month

Go to the Adobe Labs Cocomo website

Written by MKE

January 12th, 2009 at 11:03 pm

Posted in Adobe, Cocomo

Tagged with , ,

FITC Amsterdam 2009

without comments

Time to register for FITC Amsterdam 2009

A few lines from the FITC website:
“FITC has held 17 events over 7 years, through 9 cities and 4 countries, with over 700 presentations and over 10,000 attendees. From Flash to motion design, to design and creative inspiration, to other technologies like Flex, Air and processing, FITC events stand as unique and exciting events that educate, challenge, and inspire. We began as a Flash festival, and we’ve kept Flash at the core but have also continued to add more and more diverse presentations over the years, ever expanding the programming of our events.”

Written by MKE

January 2nd, 2009 at 7:00 pm

Posted in Events

Tagged with , , ,

Adobe Flash Player 10 – read about all the new features

with one comment

Click here to read more..

Written by MKE

November 3rd, 2008 at 10:17 pm

Posted in AIR, Adobe, FLEX 3.0

Tagged with , ,

Welcome to Development Trends.

without comments

Welcome to Development Trends.

Written by MKE

August 8th, 2008 at 1:14 am

Posted in Adobe, FLEX 3.0

Tagged with ,