Posts Tagged ‘Flex’

Using JasperReports in your Flex Application

Sunday, February 15th, 2009

Last week, I came cross the Flash Viewer for JasperReports. JasperReports is an OpenSource Java Framework to build Reports based on different data sources. We’re using in our projects JasperReports to generate PDF reports, too.

The Flash Viewer Project is using the Flex SDK to render the JasperReports for the HTML or Web based application. All source files of the viewer are available, so that you can customize the viewer for your needs.

But you can’t replace a interactive Flex chart component with the report viewer, because the viewer only generates a static output of the report. You can also using the JFree Chart extensions of the JasperReports, but neither the Charts nor the Text Information are selectable. If you’re changing any data of the report, you have to fill the report again in your Java Backend and rerender the report with the viewer.

So, using the viewer make only sense if you using it as preview of the report or if your reports aren’t as complex and interactive. And the best thing about the viewer is that you can use the same source file for your web and print output.

Additional Infos:

To use the Flash Viewer, you have to setup a Java web server like (Tomcat…) and run the webapp of the Flash Viewer. You get the webapp, if you download the project zip of the Flash Viewer. To display a report, you have to compile the report definition (jrpxml file) and fill the the compiled report. After that, you can use the Flash Viewer to display the report. The project zip contains a sample report, which demostrates how to use the flash viewer.

Number in Flex3 and the decimal separator

Tuesday, February 3rd, 2009

Today, I decided to write my first blog post in English. The reason for this post is the implementation of Number in current Flex3 SDK. I haven’t used Number as input for a while, the last time about one or one and half years ago. What had changed during this time: You can’t directly parse a String into Number if you using a comma as decimal separator.I used the resource bundle properties to change the decimal and thousand separator.

SharedResources.properties:

# CurrencyFormatter, NumberFormatter, Slider
decimalSeparatorFrom=.
decimalSeparatorTo=,
thousandsSeparatorFrom=,
thousandsSeparatorTo=.

validators.properties:

# Currency/Number Validator
allowNegative=true
decimalSeparator=,
maxValue=NaN
minValue=NaN
thousandsSeparator=.

If you trying parse the String into Number using current 3.2.0 Flex SDK, the result is always NaN. In Flex 2 this transformation worked perfect.

var s:String = “0,5”

var n:Number = Number(s);

=> n = NaN

Also the parseFloat function can’t parse the String into Number. The function cuts off the decimal value of the Number if you using a comma. The only way to do this transformation is using a regular expression to replace the comma with a point and than transform the String into a Number. If you have multiple input fields with numbers, this is no satisfying solution.

When I read some JIRAs at the Adobe Bug and Issue Management System, I found a couple of bugs which are related to this problem. The NumberValidator and CurrencyValidator doesn’t work correct if you using a comma as decimal separator. They can’t validate if the number is in the range of min and max values of the validator. Before comparing the input against the min and max values they transform the String into Number by using following code.

var x:Number = Number(input);

The result of this transformation using a comma as decimal separator is always NaN.  Line 295 of the NumberValidator and line 343 of the CurrencyValidator Adobe uses this transformation. So, the validation of min and max couldn’t work using a comma.

Please, Adobe correct the implemtation of Number.

SpringSource veröffentlicht ersten Milestone der Spring BlazeDS Integration

Friday, December 19th, 2008

Heute hat SpringSource den ersten Milestone der Spring BlazeDS Integration veröffentlicht. Informationen zum Spring BlazeDS Integration finden sich jetzt auch auf der SpringSource Webseite, dort werden eine Referenz Dokumentation, eine JavaDoc und natürlich auch den Downloads zur Verfügung gestellt. Zusätzlich gibt weitere Informationen in einem Blog und einem Forum zur Spring BlazeDS Integration.

Sobald ich selber mal ein Auge auf die Integration geworfen habe, folgen weitere Informationen.

Prana Framework wird zum Spring Actionscript Framework

Thursday, December 18th, 2008

Das IoC Framework Prana von Christophe Herreman ist Spring Extension unter dem Projektnamen Spring Actionscript verfügbar. Bei der Entwicklung von Prana wurde Java Spring Framework als Vorlage genommen und dessen Funktionsweise nachimplementiert. Spring ActionScript basiert auf ActionScript 3 und bietet Integrationsmöglichkeiten für MVC Frameworks Cairngorm und PureMVC.

Spring ActionScript hat nichts mit Kooperation zwischen Adobe und SpringSource zur Integration von BlazeDS/LiveCycle DS und Spring zutun. Während Adobe und SpringSource an einer Backendseitigen Integration arbeiten, kann man mit dem Spring ActionScript Framework die gleichen Dependency Injection Mechnismen im Flex Frontend nutzen, welche durch Spring für das Java Backend zur Verfügung gestellt werden.

Link zur Bekanntmachung im Forum des Spring Frameworks.
Link
zum Subversion von Spring Actionscript

Text Layout Component für Flash und Flex

Tuesday, December 16th, 2008

Wer sich schon mal versucht hat einen Editor zuschreiben, der mehr als die Standardfunktionen des Flex TextEditor unterstützt wird feststellen, dass nicht ohne weiteres möglich. Insbesondere die Erstellung von Texteditoren, die mehr Formattierungen unterstützen als das was htmlText zulässt ist nicht wirklich schön.

Abhilfe leistet die Text Layout Component für Flex und Flash, welche Dank der neuen Text Features im Flash Player 10 neue Möglichkeiten bietet. Will man die Text Layout Compoment bereits jetzt nutzen, dann kann entweder ein Plugin für Flash CS4 installieren oder eine reine Actionscript basteln. In Flex 3.2 lässt sich nur ein Subset per Actionscript Programmierung nutzen. In der kommenden Version 4 von Flex (Codename: Gumbo) ist die Text Layout Component bereits integriert, so dass man alle Features nutzen kann.

Link zur Text Layout Component auf Adobe Labs

Adobe und SpringSource kooperieren bei der Integration von Flash und Spring Plattformen

Saturday, December 13th, 2008

Adobe und SpringSource haben bekanntgegeben, dass beide der Integration von der Adobe Flash Plattform und Spring Plattform kooperieren. Ziel der Kooperation ist es, die Entwicklung von RIA mittels BlazeDS oder LiveCycle DS und Spring zuvereinfachen. Eine erste Beta-Version der BlazeDS Spring Integration soll Mitte Dezember verfübar sein.

Desweiteren soll ein SpringSource Adapter for Adobe LiveCycle Data Services ES entwicklet werden, welche wohl in einer der kommenden Versionen von den LiveCycle DS verfügbar sein wird. Der Adapter soll den Data Push aus Spring direkt zu Flex ermöglichen.

Link zur gemeinsamen Pressemitteilung von Adobe und SpringSource.

Tripreport zur Adobe MAX 2008 Europe

Friday, December 12th, 2008

Adobe MAX 2008 Europe

Die diesjährige Adobe MAX in Europa stand ganz im Fokus von Flex 4 und Flash Catalyst (Codename: Thermo). Insbesondere das Zusammenspiel zwischen Flex und den Creative Suite Produkten durch die Nutzung von Flash Catalyst soll den Workflow zwischen Designer und Entwicklern verbessern, bzw. vereinfachen.

Eine richtig coole Session war “Flash Player Internals” mit Jim Corbett. Da ich mich noch nie mit der Arbeitsweise des Flash Players auseinandergesetzt habe, war es wirklich spannend zu erfahren, was in dem Player intern passiert.

Auch die Session von Christophe Coenrats zu “Liberate Your Data with Adobe AIR, BlazeDS and LiveCycle Data Services” war spannend. Er stellte seinen Ansatz zur Implementierung einer ORM-Frameworks für Sqlite in Adobe AIR vor.

Ganz unterhaltsam war auch die Session von Duane Nickull über “Adobe Adoption of Web Services, SOA, and REST”. Es war zwar nicht ganz neues dabei, aber Duane hat das Thema ganz gut auf den Punkt gebracht.

Die General Sessions und Sneak Peak genial moderiert, insbesondere Ben Forta als Superagent. Auf jeden Fall war der Unterhaltsfaktor hoch.

Von den Labs auf der Adobe MAX war ich enttäuscht. Die beiden Labs, welche ich besuchte habe, ich vorzeitig verlassen. Inhaltlichen waren diese eher für Anfänger oder weniger Erfahrung konzipiert. So bin stattdessen wieder in Session rein.

Im ganzen war der Trip ne super Sache, viele spannende Sessions und Präsentationen. Auch war es wiedermal schön einige alte Adobe Kollegen wiederzutreffen.

Flash und Flex wird zur Flash Plattform gebündelt

Friday, November 21st, 2008

Adobe bündelt alle Flash und Flex Produkte unter Flash Plattform. Anscheinend sollen alle Produkte weiter zusammenwachsen. Zur gehören Plattform gehören die IDEs Flash CS4, Flex Builder 3, Flash Catalyst. Als Server werden der Flash Media Server und BlazeDS aufgeführt, was Nahe legt das Flash Remoting wohl zukünfigt durch BlazeDS ersetzt wird. Als Runtime werden der Flash Player und AIR aufgelistet. Die LiveCycle ES Data Service tauchen nicht explizt auf, sondern es wird nur das gesamte LiveCycle ES Paket neben Coldfusion als Adobe Server aufgelistet.

Die Übersicht über die neuformierte Flash Plattform findet ihr hier: Link

Fall in Love with Fireworks

Sunday, October 26th, 2008

Momentan arbeite ich am UI Redesign und Migration zweier bestehender Softwarelösungen. Hierfür soll die eingesetzte Frontend Technologie durch Adobe Flex ersetzt werden und das gesamte User Interface neugestaltet werden.

Auf der Suche nach dem passenden Tool für Wireframing habe ich mich nochmal mit Fireworks auseinander gesetzt und feststellen müssen, dass dies genau meine Anforderungen erfüllt. Eigentlich war ich kein Fan von Fireworks, weil ich mit Photoshop tausend mal besser zu Recht kam und dies auch ausschliesslich für meine grafischen Arbeiten einsetze.

Das Killer Feature warum ich mich jetzt doch Adobe Fireworks nutze, sind die Möglichkeit um komplexere Interaction und Information Design in Form von Wireframes zu erstellen. Das Konzept der Seiten (Pages) und Frames (CS4: States) in Fireworks ist perfekt um Wireframes zu erstellen. In Photosshop gibt es zwar auch ein ähnliches Konzepte (Komposition oder Ebenenset), aber in Fireworks kann durch die Frames die Interaction direkt über Anschauen.

En weiteres Feature welches mir gefällt, ist die Exportmöglichkeit der Fireworks Seiten als MXML Code und den dazugehöhrigen Grafiken. Leider werden die in Fireworks genutzten Ebenen nicht für den Export genutzt, wodurch man diese händisch in MXML entsprechend ändern.

Fireworks erleichtert mir gerade die Arbeit enorm, jedoch werde wohl nicht Photoshop als mein Hauptprogramm als grafische Dinge ablösen sondern vielmehr Fireworks zusätzlich zu Photoshop nutzen. Ausserdem bin gespannt was Photoshop CS4 an Mehrwert in diesem Bereich zu bieten hat.