Nov 29 2006

Guia de cambios Flex 2.0.1

Interesante enlace con un pdf que nos cuenta los cambios que nos traerá la inminente actualización de flex.
A resaltar el soporte para aplicaciones modulares... adios a esos swf iniciales tan pesados ;)

Guia de cambios


Nov 5 2006

SWFAddress. Deep linking para flash

Hoy me he encontrado con este fantástico Script para que podamos implementar deep linking en flash, o dicho de otro modo, hacer que nuestras pelis en flash funcionen con el atrás-siguiente del navegador. Lo que puede ser más importante es que podemos acceder a una sección especifica de nuestra web en flash pasando una URL normal y corriente.
SWFAddress usa ExternalInterface para llamar al javascript que se encarga de hacer todo el trabajo. El script ha sido testado en los siguientes navegadores:

  • Internet Explorer 6.0 y 7.0
  • Mozilla Firefox 1.5
  • Safari 2.04
  • Opera 9.02

En la página web de su autor podemos ver algunos ejemplos para Flash / Flex / MTASC

SWFAddress


Nov 3 2006

Crear un webservice con nuSoap y consumirlo con Flex

Leyendo un post en MIF sobre Webservices y .net me entro la curiosidad y me puse a experimentar con servicios web basados en PHP y nuSoap. La experiencia fue muy grata ya que en unos minutos tenía creado un servicio.

Lo primero que debemos hacer es bajarnos la última versión de nuSoap y copiarla en nuestro servidor. En mi caso cree una carpeta llamada webservices para alojar los servicios y dentro de esta otra llamada nuSoap donde incluí todas las clases que previamente había descargado.

Una vez que tenemos las clases en nuestro servidor es hora de crear el servicio web. Para ello creamos un fichero llamado HolaMundo.php e incluimos el siguiente código:

< ?php
require_once('nusoap/nusoap.php');
$server = new soap_server;
 
function HolaMundo ($nombre) {
return "Hola ".$nombre;
}
$server = new soap_server;
$ns="http://localhost:9999/ws/HolaMundo";
$server->configurewsdl('ApplicationServices',$ns);
$server->wsdl->schematargetnamespace=$ns;
 
$server->register('HolaMundo',
array('nombre' => 'xsd:string'),
array('return' => 'xsd:string'),
$ns);
 
if (isset($HTTP_RAW_POST_DATA)) {
$input = $HTTP_RAW_POST_DATA;
}
else {
$input = implode("\r\n", file('php://input'));
}
$server->service($input);
exit;
?>

Como vemos lo que hacemos es crear una instancia de la clase soap_server , asignamos el namespace del webservice, configuramos el WSDL y registramos el método HolaMundo indicando los parámetros de entrada y salida así como el tipo de cada uno de estos.

Una vez hecho esto ejecutamos el servicio web desde nuestro navegador y si todo ha ido bien nos aparecerá una pantalla como esta:
webservices.gif

Por el lado de Flex el ejemplosería algo así (bastante similar al excelente articulo de MIF ;) )

< ?xml version="1.0" encoding="utf-8"?>
<mx :Application xmlns:mx="http://www.adobe.com/2006/mxml"
layout="vertical" width="400" height="150"
backgroundGradientColors="[#ffffff, #ffffff]" >
</mx><mx :Script>
< ![CDATA[
import mx.controls.Alert;
private function ok():void {
Alert.show(ws.HolaMundo.lastResult);
}
]]>
</mx>
<mx :WebService id="ws" result="ok()" showBusyCursor="true"
wsdl="http://www.alexdw.com/webservices/HolaMundo.php?wsdl" />
<mx :HBox width="100%">
<mx :Label text="Tu nombre: "/>
<mx :TextInput id="src" enter="ws.HolaMundo(src.text)" toolTip="Escribe aquí tu nombre"/>
<mx :Button label="Salúdame!!"
click="ws.HolaMundo(src.text)" />
</mx>
 

Aquí lo que hemos hecho es crear un campo de entrada, un botón y hemos instanciado nuestro webservice de modo que al pulsar sobre el botón (o al hacer enter en el campo de texto) invocamos el método HolaMundo de nuestro webService pasando como parámetro el texto del campo de introducción.

Como veis la creación y uso de los webservices en flex se hace de lo más sencillo ;)


Oct 25 2006

Componente RemoteObject para AMF0 en Flex 2

Navegando por el site de Renaun Erickson me he topado con un mágnifico componente que hace muy sencillo el uso de AMFPHP sobre flex 2.

El componente emula la forma nativa integrada en flex 2 para llamar a los objetos remotos pero mediante el protocolo AMF0.

Utilizando los servicios que utilizamos en nuestro antiguo Hola mundo, nuestro mxml quedaría así:

< ?xml version="1.0" encoding="utf-8"?>
<mx :Application�  width="400" height="150" xmlns:mx="http://www.adobe.com/2006/mxml"
xmlns:remoting="remoting.*"
layout="vertical" backgroundGradientColors="[#ffffff, #ffffff]" borderStyle="none" borderColor="#ffffff">
 
<remoting :RemoteObjectAMF0
endpoint="http://www.alexdw.com/flashservices/gateway.php"
id="HM"
source="HolaMundo"
showBusyCursor="true"
makeObjectsBindable="false"
result="ok( event )"
fault="ko( event )">
</remoting>
 
</mx><mx :Script>
< ![CDATA[
import mx.rpc.events.*;
import mx.controls.Alert;
 
private function llamada(s:String):void {
HM.saludar(s);
}
private function ok( event:ResultEvent ):void {
Alert.show(event.result.toString());
}
public function ko( event:FaultEvent ):void�  {
Alert.show("No se pudo acceder al servicio");
}
 
]]>
</mx>
<mx :HBox width="100%" height="100%" horizontalAlign="center" verticalAlign="middle">
<mx :Label text="Escribe tu nombre"/>
<mx :TextInput id="entrada" width="90"/>
<mx :Button label="Saludar" height="20" click="llamada(entrada.text)"/>
</mx>
 

Descárgate los archivos de este ejemplo


Oct 24 2006

Conferencias de MIF sobre flex 2

Hoy leo en MIF que ya tienen previstas las primeras conferencias sobre flex 2 a través de Adobe Connect.
Las conferencias se realizarán el 18 de Noviembre pero será a partir del día 17 cuando hagan publica la dirección para asistir.

El programa no tiene desperdicio:

  • 10:00-10:50. Joan Garnet. Item Renderers e Item Editors: Componentes dentro de celdas
  • 11:00-11:50. Alberto Albericio. Efectos en Adobe Flex 2.0
  • 12:00-12:50. Edgar Parada. Estilos en Flex a través de CSS
  • 13:00-13:50. Carlos Rovira. Flex Data Services 2 en ejemplos

Nos vemos (virtualmente claro) allí!!!


Oct 19 2006

RIAForge. Sitio de proyectos open source

Ha nacido un interesante portal donde podremos conocer desarrollos opensource creados con tecnología de Adobe.
Interesante no perderlo de vista ;)

RIAForge


Oct 9 2006

Madeinflex.com

Ya hace un mes que debería haber publicado este post pero para el que no este al tanto...

MIF

El primer portal dedicado a los desarrolladores flex de habla hispana (de hecho, mucho mejor que muchos otros portales de habla no hispana ;) ).

Enhorabuena chicos.


Oct 9 2006

Flash Tracer para Firefox

Cada vez me sorprendo más con la cantidad de extensiones Firefox que existen para los desarrolladores web. Esta vez se trata de un "panel de salida" para mostrar las trazas que hacemos desde nuestro script en una ventana de firefox.

FlashTracer

Hay que tener en cuenta tener instalada la versión debug del player para que funcione.