December 4, 2010

Spark vs. MX – size of Flex application

I’m building several applications based on newer Flex/Spark architecture. It is good practice to keep application at minimal size. With Spark architecture I hit several problems.

One critical problem is that application with Spark is quite big. I decided to enable support for RSL…

There is problem that RSL is available only for official releases of Flex SDK. You can run aplication on developer’s machine, but user will see some fancy errors.

There is another problem with Adobe’s RSL. Browser will contact Adobe server before application start. You could see 3-5 connections. Flash Player is checking version of RSL. This will slow down start of application. It could take 10 seconds in network with higher latency. That is very bad.

Therefore only viable solution is to turn off RSL and use “Merge into code”.

Folks who advocate for Spark says that it is much more efficient and it has better structure. Sure, it’s true. You can do many things with Spark much easier than with MX.

I was wondering why were my applications with Spark that big. I made small reasearch. You can see comparison between MX, Spark and MX+Spark projects on followich chart. In the first step I was testing only size of application with just one Button in Release mode. Then I’ve added some other components and application starts growing.

[kml_flashembed movie=”/wp-content/flex/flex-size/FlexSize.swf” height=”500″ width=”500″ fversion=”10.1″]

Measured against Flex SDK 4.5.0.17689.

The last result with Spark is very sad, because Spark application with Button, DataGrid, FormItem and TextInput is two times bigger than application using MX.

Do you know about any way how to shrink Spark applications?

November 24, 2010

Plne interaktívne PDF – vložená Flex aplikácia

Ako dostať interaktivitu do PDF? Jednoducho stačí vytvoriť Flex aplikáciu a pomocou Acrobat X vložiť swf s assetmi do PDF.

Výsledok môže vyzerať aj takto: Ermanno Balzi – Standard Slide v PDF (na prezretie je potrebné použiť Adobe Reader 9). Web verziu si môžete pozrieť na www.jansvoboda.cz.

Skvelá práca Adobe!

Poznánka: Bohužiaľ pod Linuxom vložená aplikácia nefunguje.

November 3, 2010

Dreamweaver – WordPress – Dynamically related files could not be resolved

Do Dreamweaveru pribudlo za poslednú dobu niekoľko užitočných vylepšení. Jedným z nich je aj možnosť napojenia na WordPress a ďalšie CMS (Joomla, Drupal).

Čo je však nepríjemné, tak po nastavení WordPressu a naimportovaním do Dreamweaveru, môžete naraziť toto hlásenie: “Dynamically related files could not be resolved“. Nezáleží na tom, ako aktívne stláčate Retry, chybové hlásenie zostáva. 😉

V prípade WordPressu tento problém nastane, ak sú nastavené Trvalé odkazy na inú hodnotu, než Základný. Prepnite túto hodnotu, odstráňte .htaccess a reštartujte Dreamweaver. Pozor, zmena sa bez reštartu neprejaví.

Po ťuknutí na Discover sa automaticky načítajú všetky súbory.

Ďalšie informácie o Dreamweaveri nájdete v článku od Petra Pecháčka.

Október 21, 2010

FlexMojos – off-line build

FlexMojos: How to build Flex application when you’re off-line? It’s quite easy, just add -o

mvn -o install

What to do when Maven is complaining about some plugin?

Go to your home directory. Enter .m2/repository, locate broken plugin and delete it. Maven will download those files again.

Previous part of screencast: How to build Flex app from command line.

Október 17, 2010

Flex 4.5 error #2032 – pozor na RSL

Keďže Flex 4.5 “nie je oficiálne vonku”, tak proste občas niečo nefunguje.

Napríklad nefungujú projekty s RSL. Pozor! Na vývojárskej stanici vám môžu bežať.

Pre čitateľov, čo netušia o čom píšem, tak je to asi taká drobnosť, ako keď vám dodajú auto bez motora.

Výsledkom je Error #2032 a nefungujúca aplikácia.

Dôvod je jednoduchý. RSL od Adobe proste ešte nie sú vypublikované:  http://fpdownload.adobe.com/pub/swz/flex/

Oficiálna verzia sa objaví asi až s Flash Builderom Burrito.

Nezostáva nič iné, než zostať pri verzii Flex 4.1 alebo nechať aktivované mergovanie kódu do výsledného swf.

Október 15, 2010

Šikovný nástroj pre JavaScript/HTML vývojárov – Adobe Widget Browser

Občas je potrebné do webu pridať nejaké funkcie podporené JavaScriptom. Otázkou je, kde hľadať knižnice?

Jedným z nástrojov, ktorý zjednodušuje hľadanie je Adobe Widget Browser.

Malá aplikácia, ktorá sa napojí na Adobe Exchange a získa odtiaľ prehľad dostupných widgetov.

Widget a jeho kód je možné priamo v aplikácii rýchlo otestovať.

Ak máte vlastný widget, môžete ho zverejniť na Adobe Exchange, stačí dodržať pár pravidiel.

August 10, 2010

Automating Flex and AIR builds with Maven and Flexmojos

Update: fixed point of this article. 😉

It is daunting task to build project in Flash Builder over and over again, fix bugs, create build and produce release build. You change libs in your system and it screws up whole project and you have to start from the scratch 🙁 . It takes at least whole day to reestablish proper build environment.

Nightmare for developers,  lost budget and time for managers.

Adobe folks know this and they use Ant to build projects. Yea, it’s good, but little bit crude. It’s like moving from stone age to bronze age. It is BIG improvement once build.xml is in place and it saves a lot of time. But you have to find right Flex SDK, libraries, this swc, that swc, this certificate. Yay. Much better, just half a day is lost.

Java civilization already moved away from distant bronze-age and for several years they’ve been evolving Maven project. Ok, so how fast is Maven in establishing complete build environment? Very fast.

Download: Maven3, extract it, go to your project (with pom.xml), type e.g.: mvn install.

Bang! And you’ve got AIR package.

No manual downloads, no extraction of SDK, no manual copy of files back and forward.

Where is the hidden magic? It’s in Flexmojos project from Sonatype.

The only problem is to create good pom.xml. Stay tuned, there will be more articles about this topic. 🙂

Jún 26, 2010

Materiály zo zváračského kurzu z BarCampu

K dispozícii sú materiály z prednášky Zváračský kurz pre web – BlazeDS a Google App Engine vo formáte PDF.

V prednáške je spomínaných niekoľko zaujímavých odkazov:

Jún 11, 2010

OCR priamo z web kamery

Paráda. Pôsobivé.

Postavené na AIR 2. Ďalšie informácie na blogu Michaël Chaize.

Jún 10, 2010

BlazeDS Introspection Error

BlazeDS je šikovný kus technológie. Ako to s IT technológiami chodí, tak obsahujú skryté chytáky. Tento stál za všetky drobné.

Nakonfigurujem BlazeDS (prípadne EngineDS, čo je upravená verzia pre Google App Engine), zvolím Connect to Data/Service. Flash Builder zobrazí dostupné služby.

Zaškrtnem vybrané služby a zvolím Finish.

Namiesto očakávaného prehľadu importovaných funkcií dostanem veľmi poučnú a usmerňujúcu chybovú hlášku:

Cannot refresh service. Destination ID and some other properties are missing for the service. Please delete this service, deploy the model (.fml file) in the server, and re-import it via Connect to Data/Service. Try importing by unselecting destination ProductService.

Há a čo teraz?

Prešiel som všetky konfiguračné súbory. Niekoľko krát som preveril messaging-config.xml, remoting.xml a stále nič. Po niekoľkých hodinách som úspešne našiel príčinu problému.

V nastaveniach projektu pod položkou Flex Server bol Context Root nastavený prázdny reťazec. Stačilo predefinovať Context Root a introspection zbehla bez najmenších problémov.

Jeden obyčajný znak ‘/’ a človek nad tým strávi niekoľko hodín. Typická softvérová enterprise chyba.

Chyba je nareportovaná na bugs.adobe.com. Som zvedavý, či na ňu zareagujú. 🙂