Recibir parámetros de flex a java

Hola a todos espero que estén bien antes que nada.

Mi duda es como enviar parámetros de Flex a java por ejemplo:

<mx:FormItem label="Nombre" required="true">
      <mx:TextInput id="txtNombre" maxChars="25" restrict="a-zñ A-ZÑ." width="250"/>
</mx:FormItem>

y quiero recibirlo en un metodo java.

public void(//recibirlo aqui){
//lo que voy hacer
}

Si alguien me podria decir como o algun pequeño ejemplo se lo agradeceria.

Saludos.

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Shadonwk

Hola jaime todo depende de

Hola jaime todo depende de como lo uses:

por ejemplo con objetos remotos puedes hacerlo como si de java se tratara:

supongamos que tienes este metodo en java:

publc void setNombre(String nombre){
     this.nombre = nombre;
}

en flex tendrias que declarar un objeto remoto (suponiendo que utilizas BlazeDS) decalaras en el codigo mxml lo siguiente:

<mx:RemoteObject id="idDeEsteObjeto" destination="TuClaseJava">
                <mx:method name="setNombre" result="setNombreResult(event)"/>
</mx:RemoteObject>

y en AS tendrias que usar la llamada como si fuera java:

public function enviarNombre():void{
     idDeEsteObjeto.setNombre(tuCajaTexto.text);
}

con eso ya envias el parametro a java ahora tienes que crear un metodo que se ejecutara si el envio se realiza exitosamente y este es:

public function setNombreResult(event:ResultEvent):void{
    Alert.show("El nombre se ha pasado correctamente");
}

saludos :)

Imagen de JaimeItlzc

Haber si entendi bien

Haber si entendí bien:

        <mx:Form>
                        <mx:FormHeading label="Gestión de Datos"/>
                        <mx:FormItem label="Nombre" required="true">
                                <mx:TextInput id="txtNombre" maxChars="25" restrict="a-zñ A-ZÑ." width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Direccion" required="true">
                                <mx:TextInput id="txtDireccion" maxChars="25" restrict="a-zñ A-ZÑ." width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Telefono">
                                <mx:TextInput id="txtTelefono" maxChars="25"  width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Correo Electrónico" required="true">
                                <mx:TextInput id="txtEMail" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Habitaciones" required="false">
                                <mx:TextInput id="txtHabitaciones" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="50"/>
                        </mx:FormItem>
                        <mx:FormItem label="Alquiler $" required="false">
                                <mx:TextInput id="txtAlquiler" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="50"/>
                        </mx:FormItem>
                </mx:Form>

El Objeto remoto seria:

<mx:RemoteObject id="idDeEsteObjeto" destination="TuClaseJava">
                <mx:method name="setDatos" result="setDatosResult(event)"/>
</mx:RemoteObject>

en as:

public function enviarDatos():void{
     idDeEsteObjeto.setDatos(tuCajaTexto.text,Otracaja.text,otracaja.text);
}

en java:

publc void setDatos(String nombre, String direccion,String telefono){
     this.nombre = nombre;
     this.direccion= direccion;
     this.telefono = telefono;
}

Si tengo mal algo dime porfa
Gracias.

Imagen de JaimeItlzc

Corregido Pero como valido

Ahora lo que pretendo es validar los datos y si algun textInput no esta llenado me un error, tengo Validators pero aunque sea me guarda los datos.

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="library://ns.adobe.com/flex/mx"
                                xmlns:fx="http://ns.adobe.com/mxml/2009" layout="absolute"
                                backgroundColor="#FFFFFF" backgroundGradientColors="[#FB0101, #020317]"
                                backgroundGradientAlphas="[0.5, 0.5]" themeColor="#F6A89D"
                                creationComplete="init();" borderColor="#E27272">
        <fx:Declarations>
        <mx:RemoteObject id="java" destination="metodos">
             <mx:method name="setDatos" result="setDatosResult(event)"/>
        </mx:RemoteObject>
        </fx:Declarations>
       
        <fx:Script source="DatosLoader.as"/>
       
        <fx:Declarations>
        <mx:StringValidator id="nombreValidator" required="true"
                                                source="{txtNombre}" property="text" minLength="2"
                                                trigger="{btnCapturar}" triggerEvent="click"
                                                requiredFieldError="Ingrese un nombre"
                                                tooShortError="Ingrese un nombre mayor a 2 letras"/>
                <mx:StringValidator id="direccionValidator" required="true"
                                                        source="{txtDireccion}" property="text" minLength="2"
                                                        trigger="{btnCapturar}" triggerEvent="click"
                                                        requiredFieldError="Ingrese una direccion Valida"
                                                        tooShortError="Ingrese una direccion"/>
               
                <mx:EmailValidator id="eMailValidator" required="true"
                                                   source="{txtEMail}" property="text"
                                                   trigger="{btnCapturar}" triggerEvent="click"
                                                   requiredFieldError="Ingrese un correo electrónico"
                                                   missingAtSignError="Falta el signo de arroba"
                                                   missingPeriodInDomainError="Falta el un punto en el dominio"
                                                   missingUsernameError="Falta el nombre de usuario"
                                                   tooManyAtSignsError="El E-Mail contiene más de una arroba"/>
        </fx:Declarations>
       
        <mx:VBox x="400" y="30" horizontalAlign="center">
               
                <mx:Form>
                        <mx:FormItem label="Numero Cliente" direction="horizontal">
                                <mx:TextInput id="txtBuscar" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="200"/>
                                <mx:Button id="btnBuscar" label="Buscar" width="100"/>
                        </mx:FormItem>
                </mx:Form>
               
                <mx:HRule width="100%"/>
               
                <mx:Form>
                        <mx:FormHeading label="Gestión de Datos"/>
                        <mx:FormItem label="Nombre" required="true">
                                <mx:TextInput id="txtNombre" maxChars="25" restrict="a-zñ A-ZÑ." width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Direccion" required="true">
                                <mx:TextInput id="txtDireccion" maxChars="25" restrict="a-zñ A-ZÑ." width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Telefono" required="false">
                                <mx:TextInput id="txtTelefono" maxChars="25"  width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Correo Electrónico" required="true">
                                <mx:TextInput id="txtEMail" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Habitaciones" required="false">
                                <mx:TextInput id="txtHabitaciones" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="50"/>
                        </mx:FormItem>
                        <mx:FormItem label="Alquiler $" required="false">
                                <mx:TextInput id="txtAlquiler" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="50"/>
                        </mx:FormItem>
                </mx:Form>
               
                <mx:Text id="txtMensaje" fontSize="13" fontWeight="bold"/>
               
                <mx:ControlBar>
                        <mx:Button id="btnCapturar" label="Capturar" click="enviarDatos(event);"/>
                       
                        <mx:Button id="btnLimpiar" label="Limpiar" click="limpiaForm(event);"/>
                </mx:ControlBar>
               
        </mx:VBox>
       
</mx:Application>
Imagen de JaimeItlzc

Solucionado

<?xml version="1.0" encoding="utf-8"?>

Codigo .mxml;

       
        <fx:Declarations>
                <mx:StringValidator id="nombreValidator" required="true"
                                                        source="{txtNombre}" property="text" minLength="2"
                                                        trigger="{btnCapturar}" triggerEvent="click"
                                                        requiredFieldError="Ingrese un nombre"
                                                        tooShortError="Ingrese un nombre mayor a 2 letras"/>
                <mx:StringValidator id="direccionValidator" required="true"
                                                        source="{txtDireccion}" property="text" minLength="2"
                                                        trigger="{btnCapturar}" triggerEvent="click"
                                                        requiredFieldError="Ingrese una direccion Valida"
                                                        tooShortError="Ingrese una direccion"/>
                <mx:StringValidator id="telefonoValidator" required="true"
                                                        source="{txtTelefono}" property="text" minLength="10"
                                                        trigger="{btnCapturar}" triggerEvent="click"
                                                        requiredFieldError="Ingrese (Clave lada)+numero=10 digitos"
                                                        tooShortError="Ingrese numero telefonico de 10 digitos"/>
               
                <mx:EmailValidator id="eMailValidator" required="true"
                                                   source="{txtEMail}" property="text"
                                                   trigger="{btnCapturar}" triggerEvent="click"
                                                   requiredFieldError="Ingrese un correo electrónico"
                                                   missingAtSignError="Falta el signo de arroba"
                                                   missingPeriodInDomainError="Falta el un punto en el dominio"
                                                   missingUsernameError="Falta el nombre de usuario"
                                                   tooManyAtSignsError="El E-Mail contiene más de una arroba"/>
        </fx:Declarations>
       
        <mx:VBox x="400" y="30" horizontalAlign="center">
               
                <mx:Form>
                        <mx:FormItem label="Numero Cliente" direction="horizontal">
                                <mx:TextInput id="txtBuscar" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="200"/>
                                <mx:Button id="btnBuscar" label="Buscar" width="100"/>
                        </mx:FormItem>
                </mx:Form>
               
                <mx:HRule width="100%"/>
               
                <mx:Form>
                        <mx:FormHeading label="Gestión de Datos"/>
                       
                        <mx:FormItem label="Numero Cliente" direction="horizontal" required="true">
                                <mx:TextInput id="txtCliente" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="50"/>
                        </mx:FormItem>
                        <mx:FormItem label="Nombre" required="true">
                                <mx:TextInput id="txtNombre" maxChars="25" restrict="a-zñ A-ZÑ." width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Direccion" required="true">
                                <mx:TextInput id="txtDireccion" maxChars="25" restrict="a-zñ A-ZÑ0-9." width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Telefono" required="true">
                                <mx:TextInput id="txtTelefono" maxChars="25" restrict="0-9" width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Correo Electrónico" required="true">
                                <mx:TextInput id="txtEMail" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Habitaciones" required="false">
                                <mx:TextInput id="txtHabitaciones" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="50"/>
                        </mx:FormItem>
                        <mx:FormItem label="Alquiler $" required="false">
                                <mx:TextInput id="txtAlquiler" maxChars="35" restrict="0-9" width="50"/>
                        </mx:FormItem>
                </mx:Form>
               
                <mx:Text id="txtMensaje" fontSize="13" fontWeight="bold"/>
               
                <mx:ControlBar>
                        <mx:Button id="btnCapturar" label="Capturar" click="enviarDatos(event);"/>
                        <mx:Button id="btnLimpiar" label="Limpiar" click="limpiaForm(event);"/>
                </mx:ControlBar>
               
        </mx:VBox>
       
</mx:Application>

Mi ActionScript file:

import flash.events.MouseEvent;
import mx.controls.TextInput;
import mx.controls.Alert;
import mx.rpc.events.ResultEvent;
import mx.events.ValidationResultEvent;
               
private function init():void{
                        java.addEventListener(ResultEvent.RESULT, setDatosResult);     
                }
public function enviarDatos(e:MouseEvent):void{
        var validarNombre:ValidationResultEvent =nombreValidator.validate();   
        var validarDireccion:ValidationResultEvent =direccionValidator.validate();     
        var validarEmail:ValidationResultEvent =eMailValidator.validate();
        var validarTelefono:ValidationResultEvent =telefonoValidator.validate();
       
        if (validarNombre.type == ValidationResultEvent.VALID
                && validarDireccion.type == ValidationResultEvent.VALID
                && validarEmail.type == ValidationResultEvent.VALID
            && validarTelefono.type == ValidationResultEvent.VALID) {
   java.setDatos(txtCliente.text,txtNombre.text,txtEMail.text,txtDireccion.text,txtTelefono.text,txtAlquiler.text);
        }
        else{
                Alert.show("No se puede procesar su información");
        }      
}
public function setDatosResult(event:ResultEvent):void{
                        Alert.show("Datos Guardados");
                }
public function limpiaForm(e:MouseEvent):void {
                        txtNombre.text = "";
                        txtDireccion.text = "";
                        txtEMail.text = "";
                        txtTelefono.text= "";
                        txtHabitaciones.text= "";
                        txtAlquiler.text= "";  
                }

Mi clase Java:

package hotel.info;

import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class Hotel {
    private String numCliente;
    private String Cliente;
    private String dirCliente;
    private String numHabit;
    private String precioAlquiler;
    private String Email;
    static final String ln = System.getProperty("line.separator");

public void setDatos(String numCliente,String Cliente,String dirCliente,String Email,String numHabit,String precioAlquiler){
         this.numCliente = numCliente;
         this.Cliente=Cliente;
         this.dirCliente=dirCliente;
         this.Email=Email;
         this.numHabit=numHabit;
         this.precioAlquiler=precioAlquiler;

        guardarInfo("!","Registros");
        guardarInfo("[","Registros");
        guardarInfo(numCliente,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("@","Registros");
        guardarInfo("NOMBRE: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(Cliente,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("DIRECCION: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(dirCliente,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("Email: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(Email,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("HABITACIONES: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(numHabit,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("ALQUILER: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(precioAlquiler,"Registros");
        guardarInfo("]","Registros");
        guardarInfo(ln,"Registros");
 }
public void guardarInfo(String info, String file) {
        try {
          FileWriter write = new FileWriter(file+".txt",true);
          PrintWriter text = new PrintWriter(write);
          text.print(info);
          text.flush();
          write.close();
          } catch (IOException ie) {
          System.out.println("Error en la capturación");
      }
   }
}

Si puedo mejorar algo hacermelo saber
Gracias.

Saludos

Imagen de JaimeItlzc

Consulta

Ahora es hacer una consulta a un archivo desde flex a java:

// ActionScript file
import flash.events.MouseEvent;

import mx.controls.Alert;
import mx.controls.TextInput;
import mx.events.ValidationResultEvent;
import mx.rpc.events.ResultEvent;
               
private function init():void{
                        java.addEventListener(ResultEvent.RESULT, setDatosResult);
                }
public function enviarDatos(e:MouseEvent):void{
        var validarNombre:ValidationResultEvent =nombreValidator.validate();   
        var validarDireccion:ValidationResultEvent =direccionValidator.validate();     
        var validarEmail:ValidationResultEvent =eMailValidator.validate();
        var validarTelefono:ValidationResultEvent =telefonoValidator.validate();
       
        if (validarNombre.type == ValidationResultEvent.VALID
                && validarDireccion.type == ValidationResultEvent.VALID
                && validarEmail.type == ValidationResultEvent.VALID
            && validarTelefono.type == ValidationResultEvent.VALID) {
   java.setDatos(txtCliente.text,txtNombre.text,txtDireccion.text,txtTelefono.text,txtEMail.text,txtHabitaciones.text,txtAlquiler.text);
        }
        else{
                Alert.show("No se puede procesar su información");
        }      
}
public function setDatosResult(event:ResultEvent):void{
                        Alert.show("Datos Guardados");
                }
private function Consultar(e:MouseEvent):void{
        java.getconsultaFactura(txtBuscar.text,"Registros");
}
private function show(e:ResultEvent):void{
        txtSalida.text=e.result.toString();
}
public function limpiaForm(e:MouseEvent):void {
                txtCliente.text = "";
                txtNombre.text = "";
                        txtDireccion.text = "";
                        txtEMail.text = "";
                        txtTelefono.text= "";
                        txtHabitaciones.text= "";
                        txtAlquiler.text= "";  
                }

y mi clase java:

package hotel.info;

import java.io.BufferedReader;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;

public class Hotel {
    private String numCliente;
    private String Cliente;
    private String dirCliente;
    private String Telefono;
    private String Email;
    private String numHabit;
    private String precioAlquiler;

    private String numCLiente;
    private String nomCliente;
    private String nomDireccion;
    private String nomTelefono;
    private String nomCorreo;
    private String nomHabitacion;
    private String nomAlquiler;
   
    static final String ln = System.getProperty("line.separator");

public void setDatos(String numCliente,String Cliente,String dirCliente,String Telefono,String Email,String numHabit,String precioAlquiler){
         this.numCliente = numCliente;
         this.Cliente=Cliente;
         this.dirCliente=dirCliente;
         this.Telefono=Telefono;
         this.Email=Email;
         this.numHabit=numHabit;
         this.precioAlquiler=precioAlquiler;

        guardarInfo("!","Registros");
        guardarInfo("[","Registros");
        guardarInfo(numCliente,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("@","Registros");
        guardarInfo("NOMBRE: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(Cliente,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("DIRECCION: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(dirCliente,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("TELEFONO: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(Telefono,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("EMAIL: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(Email,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("HABITACIONES: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(numHabit,"Registros");
        guardarInfo("]","Registros");
        guardarInfo("ALQUILER: ","Registros");
        guardarInfo("[","Registros");
        guardarInfo(precioAlquiler,"Registros");
        guardarInfo("]","Registros");
        guardarInfo(ln,"Registros");
 }
public void guardarInfo(String info, String file) {
        try {
          FileWriter write = new FileWriter(file+".txt",true);
          PrintWriter text = new PrintWriter(write);
          text.print(info);
          text.flush();
          write.close();
          } catch (IOException ie) {
          System.out.println("Error en la capturación");
      }
   }

  public String getconsultaFactura(String f, String ff){
        try { BufferedReader in = new BufferedReader(new FileReader(ff+".txt"));
        String str;
        String campo = "!["+f+"]@";

        while ((str = in.readLine()) != null) {
                        int posX = str.indexOf("![");
                        int posXX =str.indexOf("]@");
                        int posXXX =str.indexOf("NOMBRE: ");
                        int pos1 = str.indexOf("DIRECCION: ");
                        int pos2 = str.indexOf("TELEFONO: ");
                        int pos3 = str.indexOf("EMAIL: ");
                        int pos4 = str.indexOf("HABITACIONES: ");
                        int pos5 = str.indexOf("ALQUILER: ");

          if(str.startsWith(campo)){
                                 numCLiente = str.substring(posX+2,posXX);
                                 nomCliente = str.substring(posXXX+8,pos1-1);
                                 nomDireccion= str.substring(pos1+12,pos2-1);
                                 nomTelefono= str.substring(pos2+11,pos3-1);
                                 nomCorreo= str.substring(pos3+8,pos4-1);
                                 nomHabitacion= str.substring(pos4+15,pos5-1);
                                 nomAlquiler= str.substring(pos5+11,str.length()-1);
                }
             }in.close();
        } catch (IOException e) { }
        return "Numero Cliente: "+numCLiente+"\nNombreCliente: "+nomDireccion+"\nTelefono: "+nomTelefono+"\nCorreo: "+nomCorreo+"\nHabitacion: "+nomHabitacion+"\nAlquiler $:"+nomAlquiler+"\n\n";
  }
}

Imagen de JaimeItlzc

Terminado

.mxml

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="library://ns.adobe.com/flex/mx"
                                xmlns:fx="http://ns.adobe.com/mxml/2009" layout="absolute"
                                backgroundColor="#FFFFFF" backgroundGradientColors="[#FB0101, #020317]"
                                backgroundGradientAlphas="[0.5, 0.5]" themeColor="#F6A89D"
                                creationComplete="init();" borderColor="#E27272">
        <fx:Declarations>
                <mx:RemoteObject id="java" destination="metodos">
                        <mx:method name="setDatos" result="setDatosResult(event)"/>
                        <mx:method name="getconsultaFactura" result="showResult(event)"/>
                </mx:RemoteObject>
        </fx:Declarations>

        <fx:Script source="DatosLoader.as"/>
       
        <fx:Declarations>
                <mx:StringValidator id="nombreValidator" required="true"
                                                        source="{txtNombre}" property="text" minLength="2"
                                                        trigger="{btnCapturar}" triggerEvent="click"
                                                        requiredFieldError="Ingrese un nombre"
                                                        tooShortError="Ingrese un nombre mayor a 2 letras"/>
                <mx:StringValidator id="direccionValidator" required="true"
                                                        source="{txtDireccion}" property="text" minLength="2"
                                                        trigger="{btnCapturar}" triggerEvent="click"
                                                        requiredFieldError="Ingrese una direccion Valida"
                                                        tooShortError="Ingrese una direccion"/>
                <mx:StringValidator id="telefonoValidator" required="true"
                                                        source="{txtTelefono}" property="text" minLength="10"
                                                        trigger="{btnCapturar}" triggerEvent="click"
                                                        requiredFieldError="Ingrese (Clave lada)+numero=10 digitos"
                                                        tooShortError="Ingrese numero telefonico de 10 digitos"/>
               
                <mx:EmailValidator id="eMailValidator" required="true"
                                                   source="{txtEMail}" property="text"
                                                   trigger="{btnCapturar}" triggerEvent="click"
                                                   requiredFieldError="Ingrese un correo electrónico"
                                                   missingAtSignError="Falta el signo de arroba"
                                                   missingPeriodInDomainError="Falta el un punto en el dominio"
                                                   missingUsernameError="Falta el nombre de usuario"
                                                   tooManyAtSignsError="El E-Mail contiene más de una arroba"/>
        </fx:Declarations>
       
        <mx:VBox x="400" y="30" horizontalAlign="center">
               
                <mx:Form>
                        <mx:FormItem label="Numero Cliente" direction="horizontal">
                                <mx:TextInput id="txtBuscar" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="200"/>
                                <mx:Button id="btnBuscar" label="Buscar" width="100" click="Consultar(event);"/>
                        </mx:FormItem>
                </mx:Form>
               
                <mx:HRule width="100%"/>
               
                <mx:Form>
                        <mx:FormHeading label="Gestión de Datos"/>
                       
                        <mx:FormItem label="Numero Cliente" direction="horizontal" required="true">
                                <mx:TextInput id="txtCliente" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="50"/>
                        </mx:FormItem>
                        <mx:FormItem label="Nombre" required="true">
                                <mx:TextInput id="txtNombre" maxChars="25" restrict="a-zñ A-ZÑ." width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Direccion" required="true">
                                <mx:TextInput id="txtDireccion" maxChars="50" restrict="a-zñ A-ZÑ0-9." width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Telefono" required="true">
                                <mx:TextInput id="txtTelefono" maxChars="12" restrict="0-9" width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Correo Electrónico" required="true">
                                <mx:TextInput id="txtEMail" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="250"/>
                        </mx:FormItem>
                        <mx:FormItem label="Habitaciones" required="false">
                                <mx:TextInput id="txtHabitaciones" maxChars="35" restrict="a-zñA-ZÑ0-9 @,._-" width="50"/>
                        </mx:FormItem>
                        <mx:FormItem label="Alquiler $" required="false">
                                <mx:TextInput id="txtAlquiler" maxChars="35" restrict="0-9" width="50"/>
                        </mx:FormItem>
                </mx:Form>
               
                <mx:Text id="txtMensaje" fontSize="13" fontWeight="bold"/>
               
                <mx:ControlBar>
                        <mx:Button id="btnCapturar" label="Capturar" click="enviarDatos(event);"/>
                        <mx:Button id="btnLimpiar" label="Limpiar" click="limpiaForm(event);"/>
                </mx:ControlBar>
               
        </mx:VBox>
        <mx:TextArea x="94" y="109" width="287" height="210" id="txtSalida"/>
        <mx:Label x="102" y="81" text="Consulta:" width="94" height="23" fontSize="16" fontFamily="Times New Roman" fontWeight="bold"/>
       
</mx:Application>

Mi ActionScript .as :

// ActionScript file
import flash.events.MouseEvent;

import mx.controls.Alert;
import mx.controls.TextInput;
import mx.events.ValidationResultEvent;
import mx.rpc.events.ResultEvent;
               
private function init():void{
                        java.addEventListener(ResultEvent.RESULT, setDatosResult);
                        java.addEventListener(ResultEvent.RESULT,showResult);
                }
public function enviarDatos(e:MouseEvent):void{
        var validarNombre:ValidationResultEvent =nombreValidator.validate();   
        var validarDireccion:ValidationResultEvent =direccionValidator.validate();     
        var validarEmail:ValidationResultEvent =eMailValidator.validate();
        var validarTelefono:ValidationResultEvent =telefonoValidator.validate();
       
        if (validarNombre.type == ValidationResultEvent.VALID
                && validarDireccion.type == ValidationResultEvent.VALID
                && validarEmail.type == ValidationResultEvent.VALID
            && validarTelefono.type == ValidationResultEvent.VALID) {
   java.setDatos(txtCliente.text,txtNombre.text,txtDireccion.text,txtTelefono.text,txtEMail.text,txtHabitaciones.text,txtAlquiler.text);
        }
        else{
                Alert.show("No se puede procesar su información");
        }      
}
public function setDatosResult(event:ResultEvent):void{
                        Alert.show("Datos Guardados");
                }
private function Consultar(e:MouseEvent):void{
        java.getconsultaFactura(txtBuscar.text,"Registros");
}
private function showResult(e:ResultEvent):void{
        txtSalida.text=e.result.toString();
}
public function limpiaForm(e:MouseEvent):void {
                txtCliente.text = "";
                txtNombre.text = "";
                        txtDireccion.text = "";
                        txtEMail.text = "";
                        txtTelefono.text= "";
                        txtHabitaciones.text= "";
                        txtAlquiler.text= "";  
                }

Saludos.
Gracias Shadonwk me ayudaron tus tutoriales.