Beans (Básico)

En �sta p�gina aprenderemos algo m�s sobre los Beans y BeanBox.

  • Creando un Bean sencillo.
  • Compilando y guardando el Bean en un archivo JAR.
  • Cargaando el Bean en el ToolBox
  • Arrastrando un ejemplar del Bean dentro del BeanBox.
  • Inspeccionando las propiedades del Beans, los m�todos y los eventos.
  • Generando un informe de introspecci�n.

Nuestro Bean se llamar� SimpleBean. Aqu� tienes los pasos para crearlo y verlo en el BeanBox.

  1. Escribir el c�digo de SimpleBean. Ponerlo en un fichero llamado SimpleBean.java, en cualquier directorio. Aqu� tienes el c�digo.
       
    import java.awt.*;
    import java.io.Serializable;
             
    public class SimpleBean extends Canvas
                         implements Serializable{
     
      //Constructor sets inherited properties
      public SimpleBean(){
       setSize(60,40);
       setBackground(Color.red);
      }
    }
    

    SimpleBean desciende del componente java.awt.Canvas. Tambi�n implementa el interface java.io.Serializable, que es requerido por todos los beans. Seleccionar el color del fondo y el tama�o del componente es todo lo que hace SimpleBean.

  2. Asegurate de que la variable de entorno CLASSPATH apunta a todos ficheros .class (o .jar) necesarios.
  3. Compila el Bean:
          javac SimpleBean.java
    

    Esto produce el fichero de clase SimpleBean.class

  4. Crea un fichero de manifiesto. Utiliza tu editor de texto favorito para crear un fichero, que llamaremos manifest.tmp, que contenga el siguiente texto.
         Name: SimpleBean.class
         Java-Bean: True
    
  5. Crea el fichero JAR. Este fichero contendr� el manifiesto y el fichero de clase SimpleBean.
         jar cfm SimpleBean.jar manifest.tmp SimpleBean.class
    
  6. Carga el fichero JAR en el ToolBox. Despliega el men� File|LoadJar... Esto traer� un navegador de ficheros. Busca la posici�n del fichero SimpleBean.jar y seleccionalo. SimpleBean aparecer� en la parte inferior del ToolBox. (Observa que cuando arranca el BeanBox, todos los beans que haya en el directorio beans/jars se cargan autom�ticamente en el ToolBox).
  7. Arrastra un ejemplar de SimpleBean dentro del BeanBox. Pulsa sobre la palabra SimpleBean en el ToolBox. El cursor cambia a un punto de mira. Mueve el cursor al punto del BeanBox donde quieres situar el Bean y pulsa de nuevo el rat�n. SimpleBean aparecer� como un rect�ngulo pintado con un borde marcado. Esto borde significa que est� seleccionado. Las propiedades de SimpleBean aparecer�n en la hoja de propiedades.

Se puede redimensionar el SimpleBean, ya que desciende de Canvas, arrastrando una esquina de la ventana. Veras como el cursor cambia a un �ngulo recto cuando pasa sobre una esquina. Tambi�n se puede reposicionar dentro del BeanBox, arrastando desde cualquier parte del borde que no sea una esquina. Ver�s que el cursor cambia a una flechas cruzadas cuando pasa por estas posiciones.

.�Makefiles de SimpleBean

Abajo tienes dos MakeFiles (Unix y Windows) configurados para crear SimpleBean.

# gnumake file

CLASSFILES= SimpleBean.class

JARFILE= SimpleBean.jar

all: $(JARFILE)

# Create a JAR file with a suitable manifest.
$(JARFILE): $(CLASSFILES) $(DATAFILES)
        echo "Name: SimpleBean.class" >> manifest.tmp
        echo "Java-Bean: True" >> manifest.tmp
        jar cfm $(JARFILE) manifest.tmp *.class
        @/bin/rm manifest.tmp

# Compile the sources
%.class: %.java
        export CLASSPATH; CLASSPATH=. ; \
        javac $<

# make clean
clean.
        /bin/rm -f *.class
        /bin/rm -f $(JARFILE)

Aqu� tienes la versi�n Windows de nmake.

# nmake file
CLASSFILES= simplebean.class

JARFILE= simplebean.jar

all: $(JARFILE)

# Create a JAR file with a suitable manifest.
$(JARFILE): $(CLASSFILES) $(DATAFILES)
        jar cfm $(JARFILE) << manifest.tmp *.class
Name: SimpleBean.class
Java-Bean: True
<<

.SUFFIXES: .java .class

{sunw\demo\simple}.java{sunw\demo\simple}.class .
        set CLASSPATH=.
        javac $<

clean.
        -del sunw\demo\simple\*.class
        -del $(JARFILE)

Se pueden utilizar estos makefiles como plantillas para crear los tuyos propios. Los makefiles de ejemplo, situados en el directorio beans/demo tambi�n te ense�an como utilizar los makefiles para construir y mantener tus Beans.

.�Inspeccionar las Propiedades y Eventos de SimpleBean

La hoja de propiedades muestra las propiedades del Bean seleccionado. Si seleccionamos SimpleBean, la hoja de propiedades mostrar� cuatro propiedades: foreground, background, font, y name. Nosotros no declaramos propiedades en SimpleBean (lo ver�s m�s adelante), por eso estas propiedades son heredadas de Canvas. Pulsando sobre cada propiedad se lanza un editor de propiedad. El BeanBox proporcionar editores por defecto para los tipos primitivos, adem�s de los tipos Font y Color. Puedes encontrar los fuentes para estos editores de propiedades en beans/apis/sun/beans/editors.

Los Beans se comunican unos con otros enviando y recibiendo notificaciones de eventos. Para ver los eventos que SimpleBean puede enviar, elige el men� Edit|Events. Se mostrar� una lista de eventos agrupados por interfaces. Bajo cada grupo de interface hay una lista de m�todos de evento. Todos estos son heredados de Canvas.

Podr�s aprender m�s sobre propiedades y eventos en pr�ximas secciones.

.�Generar un Informe de Introspecci�n del Bean

La introspecci�n es el proceso de descubrir las caracter�sticas de un Bean en tiempo de dise�o por uno de estos dos m�todos.

  • Reflexi�n de bajo nivel, que utiliza patrones de dise�o para descubrir las caracter�sticas del Bean.
  • Examinando una clase asociadd de informaci�n del Bean que describe expl�citamente las caracter�sticas del Bean.

Se puede generar un informe de introspecci�n elegiendo el men� Edit|Report. El informe lista los eventos, las propiedades y los m�todos del Bean adem�s de sus caracter�sticas.

Por defecto los informes son enviados a la salida est�ndard del int�rprete Java, que es la ventana donde has arrancado BeanBox. Se puede redireccionar el informe a un fichero cambiando el comando del int�rprete Java en beanbox/run.sh o run.bat.

java sun.beanbox.BeanBoxFrame > beanreport.txt

COMPARTE ESTE ARTÍCULO

COMPARTIR EN FACEBOOK
COMPARTIR EN TWITTER
COMPARTIR EN LINKEDIN
COMPARTIR EN WHATSAPP
SIGUIENTE ARTÍCULO